Klien anda boleh ping alamat gerbang sementara setiap sumber di belakangnya kekal tidak dapat dicapai. Pasangan pemerhatian itu menggambarkan hos yang bercakap dengan anda dan penghala yang tidak menghala, iaitu peranan berbeza pada mesin yang sama. Penghantaran ialah suis di antara keduanya.

Kedua-dua peranan itu bebas, begitu juga kedua-dua keluarga alamat.

Menjawab alamat sendiri tidak membuktikan apa-apa

Apabila paket dialamatkan kepada gerbang itu sendiri, tindanan setempat menggunakan paket itu dan tiada keputusan penghantaran berlaku. Itulah sebabnya ping yang berjaya ke alamat terowong atau antara muka pengurusan memberitahu anda daemon masih hidup dan terowong aktif, tetapi tidak berkata apa-apa tentang trafik yang ditujukan kepada rangkaian di belakang kotak. Kernel hanya merujuk laluan penghantarannya untuk paket yang tidak dialamatkan kepadanya.

Baca keperluan itu sebagai peranan, bukan tetapan: hos ini mesti memindahkan paket antara dua antara muka. Komputer riba yang hanya perlu mencapai rangkaian jauh tidak pernah mengambil peranan itu, dan titik akhir tapak-ke-tapak sentiasa mengambilnya. Membaca keperluan begitu menjelaskan mengapa konfigurasi klien yang berfungsi gagal apabila dipindahkan ke gerbang.

Ayat yang sama terpakai kepada tembok api di hadapan keputusan penghantaran, yang mempunyai dasarnya sendiri tentang apa yang boleh dihantar.

Periksa setiap keluarga alamat secara berasingan

Penghantaran IPv4 ialah satu suis, dan penghantaran IPv6 ialah suis lain dengan tingkah lakunya sendiri bagi setiap antara muka. Mengaktifkan yang pertama tidak berkata apa-apa tentang yang kedua, dan klien dua tindanan boleh mencapai separuh rangkaian sementara selebihnya kekal gelap. Dua klien daripada keluarga berbeza oleh itu boleh berselisih tentang gerbang yang sama. Tanyakan keluarga mana yang digunakan oleh klien yang gagal sebelum mengedit mana-mana tetapan. Sahkan kedua-duanya sebelum membuat kesimpulan bahawa reka bentuk penghalaan itu salah.

sysctl net.ipv4.ip_forward
sysctl -a --pattern 'net.ipv6.conf.(all|default).forwarding'
nft list ruleset | head -n 40

Pada banyak edaran, nilai yang anda baca semasa runtime diletakkan di sana oleh perkhidmatan atau fail konfigurasi, jadi perubahan yang dibuat dengan arahan sekali sahaja boleh hilang semasa but semula. Cari fail yang memiliki tetapan itu sebelum mengedit nilai runtime.

Penghantaran ialah satu daripada empat keperluan

Aliran dihantar yang berfungsi memerlukan empat perkara serentak: klien mesti tahu destinasi berada di belakang terowong, gerbang mesti mempunyai laluan ke hadapan, balasan mesti mempunyai laluan balik, dan tembok api mesti membenarkan trafik itu. Terjemahan sumber tergolong dalam reka bentuk itu sebagai pilihan dan bukan peraturan, kerana rangkaian berpenghala peribadi dengan laluan simetri tidak memerlukannya dan yang tak simetri biasanya memerlukannya. Setiap satu daripada empat itu gagal secara bebas, itulah sebabnya membaiki satu jarang menggerakkan simptom. Tuliskan keempat-empatnya sebelum anda mengubah mana-mana daripadanya.

Platform awan menambah pertimbangan kelima. Sesetengahnya menguatkuasakan pemeriksaan sumber dan destinasi pada instans, yang menjatuhkan paket dihantar tanpa mengira cara kernel tetamu dikonfigurasikan. Dokumentasi rangkaian platform itu sendiri ialah kuasa di sana, bukan output sysctl dalam VM.

Uji dari klien, bukan dari gerbang

Ujian yang dijalankan dalam shell gerbang itu sendiri tidak melalui mana-mana bahagian laluan penghantaran yang baru anda aktifkan. Hasilkan trafik dari klien yang bermasalah, dan sahkan ia mencapai sesuatu di belakang gerbang dan bukan gerbang itu sendiri. Itulah satu-satunya ujian yang melatih peranan yang anda ubah.

Kekalkan peraturan pendengar dan peraturan penghantaran berasingan dalam fikiran anda dan dalam rekod perubahan. Membuka port VPN menerima klien ke perkhidmatan; ia tidak memberikan apa-apa kepada mereka pada rangkaian di belakangnya, dan kedua-duanya kelihatan serupa dalam senarai tembok api yang telah bertambah selama bertahun-tahun.

Jika paket tiba dan perkhidmatan kemudian menolak pengguna, anda sudah melepasi rangkaian. Teruskan dengan kebenaran aplikasi dan bukan meluaskan dasar penghantaran sekali lagi.

Artikel berkaitan