Sesuatu perkhidmatan mendengar pada 127.0.0.1:1080. Peraturan DNAT mengarahkan trafik masuk ke alamat itu, namun sambungan tetap gagal. Perkhidmatan boleh sihat dan peraturan NAT boleh sepadan: alamat loopback IPv4 menerima layanan penghalaan khas.

route_localnet dalam Linux menentukan sama ada alamat 127/8 dianggap alamat Marikh semasa penghalaan. Nilai lalainya mengekalkan sempadan loopback biasa. Pengecualian khusus antara muka boleh relevan untuk reka bentuk pengalihan tempatan yang disengajakan.

Itu menjelaskan mengapa peraturan yang berfungsi pada mesin lain mungkin bergantung pada sysctl yang tidak anda salin. Namun ia tidak mewajarkan pengaktifan pilihan itu di merata tempat.

Andaian keselamatan berubah bersama laluan

Ikatan loopback sering digunakan kerana pembantu tidak mempunyai pengesahan klien yang bebas. Jika trafik daripada antara muka lain boleh dihalakan ke situ, alamat ikatan sahaja tidak lagi menggambarkan audiens yang boleh dicapai. Hadkan sumber masuk, destinasi dan port dalam set peraturan sebenar, termasuk trafik yang mendakwa alamat sumber atau destinasi loopback apabila berkaitan.

Semak ruang nama rangkaian yang mengandungi perkhidmatan. Loopback kontena bukan loopback hos, dan menukar tetapan antara muka hos tidak mencipta pendengar dalam kontena secara automatik.

rp_filter menjawab soalan berbeza tentang pengesahan laluan sumber. Mematikannya secara global bukan pengganti umum untuk memahami penghalaan loopback. Begitu juga, ip_nonlocal_bind berkaitan ikatan soket ke alamat bukan setempat, bukan menjadikan laluan DNAT ini betul.

Akhir sekali, protokol yang dialihkan mesti sepadan dengan pendengar. Menghantar trafik HTTP atau TLS mentah ke port SOCKS masih memerlukan penterjemah; pengecualian penghalaan tidak dapat menyediakan rundingan yang hilang.

Artikel berkaitan