Схема сети:
|LAN|---{10.10.150.1/24}|GW1|{10.10.160.2/24}---{10.10.160.1/24}|GW2|{10.10.19.125/25}---{10.10.19.1/25}|GW3|
Если я вначале пингую с GW3 GW1 ip 10.10.150.1, то пинг не проходит, tcpdump на интерфейсе GW1 с ip 10.10.160.2 видит icmp request (10.10.19.1 > 10.10.150.1: ICMP echo request), видит ARP request (Request who-has 10.10.160.1 tell 10.10.150.1), но никаких ответов не отправляет. (соединения нет)
Если я вначале пингую c GW1 командой ping -I 10.10.150.1 10.10.19.1, то пинг получает ответы (соединение есть). И после этого пинг с GW3 GW1 ip 10.10.150.1 тоже получает ответы.
Через небольшое время (если не пинговать) чистится какой-то кэш и пинг с GW3 GW1 ip 10.10.150.1 опять не работает.
В sysctl прописано net.ipv4.conf.all.arp_filter = 0, net.ipv4.conf.default.arp_filter = 0, а также для каждого интерфеса.
В документации написано про arp_filter: 0 - (default) The kernel can respond to ARP requests with addresses from other interfaces.
Что мне надо поправить, для корректной работы?