Pengenalan #
Artikel ini menerangkan cara mengenal pasti dan menyelesaikan isu penghalaan asimetri dalam RELIANOID penggunaan apabila pengimbang beban mempunyai berbilang antara muka rangkaian yang disambungkan ke subnet yang berbeza.
Situasi ini boleh berlaku apabila klien frontend perlu mengakses perkhidmatan backend yang terletak di subnet lain manakala pengimbang beban mempunyai antara muka dalam kedua-dua rangkaian.
Tingkah laku penghalaan yang tidak betul boleh menyebabkan trafik respons keluar melalui antara muka yang berbeza daripada yang digunakan untuk permintaan masuk, mengakibatkan penghalaan asimetri.
masalah Penerangan #
Dalam beberapa pelaksanaan, RELIANOID Pengimbang beban dikonfigurasikan dengan berbilang antara muka yang disambungkan ke rangkaian yang berbeza.
Konfigurasi berikut ialah persekitaran contoh yang digunakan untuk tujuan demonstrasi.
| Antara muka | rangkaian | Tujuan |
| eth0 | 192.168.1.0/24 | Pengurusan |
| eth1 | 192.168.110.0/24 | Frontend |
| eth2 | 192.168.100.0/24 | Aplikasi / Bahagian Belakang |
Pelayan bahagian belakang terletak di 192.168.100.0/24 subnet dan diakses melalui ladang yang dikonfigurasikan pada pengimbang beban.
Walau bagaimanapun, sesetengah pelanggan yang terletak di 192.168.110.0/24 rangkaian juga perlu mengakses perkhidmatan yang dihoskan dalam 192.168.100.0/24 rangkaian.
Oleh kerana pengimbang beban mempunyai antara muka dalam kedua-dua rangkaian dan Penerusan IP aktif secara lalai, sistem mungkin menghalakan trafik respons secara langsung melalui antara muka hadapan (eth1) dan bukannya menghalakannya melalui gerbang yang dijangkakan.
Ini menyebabkan penghalaan asimetri, yang boleh menyebabkan kegagalan sambungan atau paket yang tercicir.
Konfigurasi Antara Muka Contoh #

Apakah Penghalaan Asimetri #
Penghalaan asimetri berlaku apabila trafik masuk dan keluar bagi sambungan yang sama mengikuti laluan rangkaian yang berbeza.
Contoh Aliran #
Laluan Destinasi: 192.168.110.11 melalui eth2 (Klien) > 192.168.100.100 (Pengimbang Beban) > 192.168.100.42 (Backend)
Laluan Pulang (Salah): 192.168.100.42 (Backend) > 192.168.100.100 (Pengimbang Beban) > 192.168.110.11 melalui eth1 (Klien)
Oleh kerana trafik balik keluar melalui antara muka yang berbeza, peranti perantaraan seperti tembok api atau penghala mungkin menjatuhkan paket.
Bagaimana Jadual Penghalaan Berfungsi #
RELIANOID menggunakan jadual penghalaan setiap antara muka untuk mengawal bagaimana trafik dihantar antara rangkaian.
Setiap antara muka secara automatik menjana jadual penghalaannya sendiri.
Contoh jadual penghalaan: table_eth1, table_eth2
Jadual penghalaan ini mentakrifkan:
- Laluan yang berkaitan dengan antara muka
- Gerbang yang digunakan untuk penghantaran trafik
- Antara muka yang dibenarkan untuk menghalakan trafik
Dalam setiap jadual penghalaan, antara muka boleh dikonfigurasikan sebagai:
Antara Muka Terurus #
Antara muka yang dibenarkan untuk menghalakan trafik dalam jadual penghalaan menggunakan ciri Pemajuan IP.
Antara Muka Tidak Terurus #
Antara muka yang dikecualikan daripada keputusan penghalaan untuk jadual tersebut dan Pemajuan IP tidak akan terpakai untuk antara muka tersebut.
Dengan mengawal antara muka yang diurus atau tidak diurus, pentadbir boleh mempengaruhi aliran trafik melalui pengimbang beban dan mencegah konflik penghalaan.
Jadual Penghalaan Contoh #

Penyelesaian #
Untuk menyelesaikan isu penghalaan asimetri, antara muka yang bercanggah mesti dikecualikan daripada jadual penghalaan yang berkaitan dengan rangkaian bahagian belakang.
Dalam senario ini, eth1 harus dialih keluar dari jadual penghalaan table_eth2, memastikan trafik dihalakan melalui gerbang yang betul.
Penyelesaian Menggunakan UI Web #
- Navigasi ke: Rangkaian > Penghalaan
- Pilih jadual penghalaan yang berkaitan dengan antara muka bahagian belakang:
table_eth2 - Tatal ke bahagian bawah halaman.
- Cari Antara Muka Terurus bawah seksyen ini.
- Alihkan antara muka eth1 yang diadakan pada Antara Muka Terurus kepada Antara Muka Tidak Terurus.
Ini menghalang trafik daripada dihalakan terus melalui antara muka frontend apabila jadual penghalaan backend digunakan.

Penyelesaian Menggunakan CLI #
Konfigurasi yang sama juga boleh digunakan menggunakan RELIANOID CLI.
Langkah 1: Dayakan Akses API #
Navigasi ke: Sistem > Tetapan Pengguna
Dayakan Akses API dan konfigurasikan kunci API. Anda boleh mentakrifkan kunci anda sendiri atau menjana kunci rawak.
Selepas mencipta kunci, salin dan simpannya, kerana ia akan diperlukan pada kali pertama anda mengakses CLI menggunakan noid-cli
Langkah 2: Akses RELIANOID CLI #
Dari konsol sistem, jalankan:
noid-cli
Masukkan kunci API apabila digesa.
Langkah 3: Buang Antara Muka Daripada Jadual Penghalaan #
Jalankan arahan berikut:
jadual-penghalaan-rangkaian-tidak-diurus tambah table_eth2 -interface eth1
Arahan ini menghalang trafik daripada dihalakan melalui eth1 apabila menggunakan jadual penghalaan table_eth2.
Langkah 4: Kembalikan Konfigurasi (Pilihan) #
Jika perlu, konfigurasi boleh dipulihkan dengan arahan berikut:
jadual-penghalaan-rangkaian-tidak-diurus alih keluar table_eth2 eth1
Amalan Terbaik #
- Lakukan perubahan penghalaan semasa waktu trafik rendah atau tempoh penyelenggaraan.
- Sahkan kesambungan selepas menggunakan konfigurasi.
- Pastikan perkhidmatan lain tidak terjejas oleh perubahan penghalaan.
Kesimpulan #
Isu penghalaan asimetri mungkin berlaku apabila pengimbang beban disambungkan ke berbilang rangkaian dan trafik kembali melalui antara muka yang berbeza daripada yang digunakan untuk sambungan masuk.
In RELIANOID, isu ini boleh diselesaikan dengan melaraskan konfigurasi jadual penghalaan dan mengecualikan antara muka yang bercanggah daripada jadual penghalaan tertentu.
Ini memastikan trafik mengikuti laluan rangkaian yang betul dan mencegah masalah sambungan.