linux - Why ARP requests a non-local address? -
i have linux virtual server 2 nics.
eth0 <ip1> eth1 <ip2> arp_filter turned on , rp_filter set 2(loose mode).
policy-routing configured following:
table t1 default via <gw> dev eth0 src <ip1> 127.0.0.0/8 dev lo <lan> dev eth0 src <ip1> table t2 default via <gw> dev eth1 src <ip2> 127.0.0.0/8 dev lo <lan> dev eth1 src <ip2> ip rule add <ip1> table t1 ip rule add <ip2> table t2 after that, can ping both binding floatingips of <ip1> , <ip2> outside. ping -i eth1 <some_domain> dosen't work. tcpdump shows when ping eth1 outside, linux directly asks mac of outside address, incorrect because not in same lan.
here tcpdump data:
root@rm-2:~# tcpdump -i eth1 arp tcpdump: verbose output suppressed, use -v or -vv full protocol decode listening on eth1, link-type en10mb (ethernet), capture size 65535 bytes 17:53:08.696191 arp, request who-has 172.30.250.119 tell 172.30.248.2, length 46 17:53:08.728482 arp, request who-has 172.30.251.144 tell 172.30.251.138, length 46 17:53:09.447252 arp, request who-has 61.135.169.125 tell 172.30.251.43, length 28 17:53:09.551514 arp, request who-has 172.30.250.127 tell 172.30.248.2, length 46 17:53:09.698076 arp, request who-has 172.30.250.119 tell 172.30.248.2, length 46 17:53:09.859046 arp, request who-has 172.30.248.246 tell 172.30.248.245, length 46 17:53:10.446009 arp, request who-has 61.135.169.125 tell 172.30.251.43, length 28 17:53:10.477104 arp, request who-has 172.30.250.128 tell 172.30.248.2, length 46 as can see, 61.135.169.125 foreign address, bug or something?
edit
output of route: // 172.30.248.1 gw
destination gateway genmask flags metric ref use iface default 172.30.248.1 0.0.0.0 ug 0 0 0 eth0
Comments
Post a Comment