Situs dimuat dari laptop di jaringan yang sama dan kehabisan waktu dari mana pun selain itu, dan host juga menjalankan klien VPN untuk lalu lintas keluarnya sendiri. Kombinasi itu menghasilkan kegagalan tertentu: koneksi masuk tiba, balasan keluar melalui jalur yang salah, dan klien di luar tidak pernah melihat balasan. Kedua bagian muncul dalam tangkapan paket yang sama, jadi urutan peristiwa adalah bagian yang layak dibaca.

Aturan rute berbasis sumber sering memperbaiki gejalanya. Aturan itu juga biasanya mengecualikan lebih banyak lalu lintas daripada situs yang memicunya, dan itulah bagian yang perlu dipahami sebelum menyimpan aturan.

Gejalanya: menjawab secara lokal dan bukan dari luar

Di dalam jaringan, balasan tidak harus melintasi terowongan, jadi halaman dimuat dan layanan tampak sehat. Dari luar, permintaan mencapai host dan balasan dirutekan ke dalam VPN, tempat ujung jauh tidak punya alasan untuk menerimanya. Peramban melihat batas waktu alih-alih penolakan, yang merupakan tanda jalur satu arah dan bukan port tertutup.

Konfirmasikan bentuknya sebelum mengubah perutean: pendengar aktif, permintaan lokal berhasil, dan permintaan eksternal tidak menghasilkan balasan sama sekali. Ketiga pengamatan itu bersama-sama menunjuk ke jalur kembali, bukan ke konfigurasi server web. Asimetri yang begitu bersih lebih berguna daripada baris log mana pun, karena ia menyingkirkan pendengar sebelum Anda membaca satu pesan kesalahan pun.

Biarkan jalur administrasi independen tetap terbuka saat Anda bekerja. Aturan yang merusak sesi SSH Anda sendiri mengubah perbaikan sepuluh menit menjadi kunjungan fisik.

Apa yang sebenarnya dicocokkan oleh pemilih sumber

Dalam perutean kebijakan Linux, aturan seperti from 192.168.50.2 mencocokkan paket yang sumbernya adalah alamat itu. Aturan itu tidak mengodekan fakta bahwa paket melanjutkan percakapan yang masuk melalui router rumah, dan tidak tahu proses mana yang membuatnya. Alamat dalam contoh itu bersifat ilustratif; gantilah dengan alamat yang benar-benar digunakan host Anda. Perlakukan baris itu sebagai pernyataan tentang alamat dan tidak lebih.

Jika tabel yang dipilih menyediakan rute default biasa, setiap paket yang membawa sumber itu dapat mengambil pengecualian yang sama. Layanan lain yang terikat ke alamat yang sama mewarisinya, dan aplikasi yang sengaja mengikat ke alamat itu juga mewarisinya. Referensi aturan kebijakan mencantumkan sumber, tujuan, protokol, port, tanda, dan prioritas sebagai pemilih terpisah, yang mengingatkan bahwa sumber saja adalah yang paling kasar yang tersedia.

Prioritas menentukan hasilnya. Pencarian berjalan berurutan dan tabel pertama yang menghasilkan hasil dapat mengakhiri pencarian, jadi aturan yang ditempatkan terlalu awal dapat menyembunyikan rute yang lebih spesifik yang akan disediakan tabel berikutnya. Bacalah seluruh daftar berurutan, bukan hanya baris yang Anda tambahkan. Aturan yang tidak pernah cocok tidak memakan biaya, sedangkan aturan yang cocok terlalu awal diam-diam mengubah semua yang ada di belakangnya.

Periksa jalur kembali dan lalu lintas yang tidak Anda maksudkan

Bacalah aturan dan tabelnya, lalu tanyakan kepada kernel rute mana yang akan diambil pasangan sumber dan tujuan tertentu. Menguji dari host itu sendiri tidak sama dengan menguji dari luar, jadi lakukan keduanya.

ip rule show
ip route show table 100
ip route get 203.0.113.44 from 192.168.50.2
ss -ltnp '( sport = :443 )'

Lalu terima koneksi eksternal baru dan, secara terpisah, permintaan yang masih harus keluar melalui VPN. Jika yang kedua sekarang keluar langsung, pengecualiannya lebih luas daripada masalah yang Anda selesaikan, dan uji yang penting adalah uji yang tidak Anda maksudkan untuk diubah.

Pemeriksaan alamat publik di peramban hanya melaporkan permintaan yang dibuat peramban itu. Ia tidak mengatakan apa pun tentang balasan server web, tentang pemilihan sumber oleh aplikasi lokal lain, atau tentang apa yang terjadi pada lalu lintas manajemen setelah penyambungan ulang VPN berikutnya.

Putuskan seberapa sempit pengecualian itu bisa

Dua rancangan dapat dipertahankan dan keduanya harus dipilih dengan sengaja. Jika host ada untuk memublikasikan layanan ini dan lalu lintas keluarnya tidak penting, alamat lokal khusus dengan kebijakan hanya WAN adalah pengaturan yang wajar asalkan Anda menerima seluruh cakupannya. Jika hanya koneksi masuk tertentu yang boleh memenuhi syarat, pemilihan alamat terlalu kasar dan rancangan yang sadar koneksi harus berada di depannya.

Catat kontrak yang Anda andalkan: pemetaan publik, alamat host tempat permintaan dikirimkan, dan jalur yang diharapkan diambil balasan. Layanan masuk yang dipublikasikan melalui penyedia VPN adalah kontrak yang berbeda dari yang dipublikasikan melalui router rumah, dan pengecualian yang disalin dari satu contoh sering keliru untuk yang lain.

Simpan kebijakan di komponen yang memiliki perutean alih-alih menempelkan perintah ke berkas startup. Urutan aturan, pembersihan setelah perubahan jaringan, dan pengulangan setelah reboot semuanya harus bertahan, dan berkas startup yang tidak diuji biasanya gagal pada saat Anda tidak sedang melihat. Akhiri dengan hasil penerimaan yang dapat Anda pertahankan: satu situs yang dipublikasikan dipulihkan dan satu aliran yang tidak terkait tetap tidak berubah.

Artikel terkait