tcpdump showed me there are some ICMP-redirect in my network (KVM virtual-machines, bridged network). I decided to take a closer look on them and how my system behaves and how it looks. I found it doesn't work as it should:
Let say I'm on 126.96.36.199 and I
# ping 188.8.131.52 PING 184.108.40.206 (220.127.116.11) 56(84) bytes of data. 64 bytes from 18.104.22.168: icmp_seq=1 ttl=63 time=0.569 ms From 22.214.171.124: icmp_seq=2 Redirect Host(New nexthop: 126.96.36.199) 64 bytes from 188.8.131.52: icmp_seq=2 ttl=63 time=0.690 ms From 184.108.40.206: icmp_seq=3 Redirect Host(New nexthop: 220.127.116.11)
as you can see I get multiple redirects to 18.104.22.168 which looks fine but for some reason my host (22.214.171.124) ignores it.
# sysctl -a|grep accept_redirects net.ipv4.conf.all.accept_redirects = 1 net.ipv4.conf.default.accept_redirects = 1 net.ipv4.conf.eth0.accept_redirects = 1 net.ipv4.conf.lo.accept_redirects = 1
and there is no entry for that new route in
ip route list and
ip route list cache is empty.
Kernel version is:
# uname -a Linux foo.bar 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt20-1+deb8u3 (2016-01-17) x86_64 GNU/Linux
networking restart or even
reboot didn't worked.
I wish to accept ICMP redirects - any ideas ?
# ip -d route unicast default via 126.96.36.199 dev eth0 proto boot scope global unicast 188.8.131.52/24 dev eth0 proto kernel scope link src 184.108.40.206 unicast 220.127.116.11 dev eth0 proto boot scope link