Di Linux jika Anda mengirim paket ke alamat salah satu antarmuka jaringannya , paket ini dirutekan secara internal, tidak pernah dikirim melalui jaringan. Itu adalah hal yang benar dalam 99,99% kasus.
Kadang-kadang, ketika menguji konfigurasi jaringan, ada baiknya mengirim paket melalui tautan lokal dari mesin itu sendiri, dengan mesin itu sendiri sebagai target. Bagaimana saya bisa melakukan ini? Setidaknya untuk tautan tipe bus seperti Ethernet, jika bukan untuk tautan titik-ke-titik. Saya hanya tertarik pada paket IP (baik IPv4 dan IPv6).
linux
networking
ip
ethernet
Gilles 'SANGAT berhenti menjadi jahat'
sumber
sumber
Jawaban:
Setiap adapter jaringan di linux memiliki parameter boolean sysctl
accept_local
(/proc/sys/net/ipv4/conf/eth0/accept_local
). Coba atur ke 0 untuk semua adaptor yang terlibat (tambahan, Anda mungkin perlu memodifikasi tabel perutean Anda agar sesuai dengan pengaturan pengujian Anda).Juga, pastikan bahwa
rp_filter
(/proc/sys/net/ipv4/conf/eth0/rp_filter
) diaktifkan (bukan 0).Referensi: http://code.metager.de/source/xref/linux/stable/Documentation/networking/ip-sysctl.txt
sumber