[Sysadmins] Роутинг через два хоста в одной сети
Vladimir Lettiev
thecrux на gmail.com
Ср Янв 14 09:11:18 MSK 2015
On Wed, Jan 14, 2015 at 04:14:57AM +0200, Maksym Tiurin wrote:
> Приветствую!
>
> Есть локальная сеть со своим DG (172.24.0.1).
> В этой сети находится девайс (172.24.0.140) через который надо пустить
> трафик с одного из хостов.
>
> Но хосте указываю девайс как DG
>
> root на argon:~# ip route show
> default via 172.24.0.140 dev eth0
> 172.24.0.0/23 dev eth0 proto kernel scope link src 172.24.1.129
>
> Проверяю:
> root на argon:~# tracepath yahoo.com
> 1?: [LOCALHOST] pmtu 1500
> 1: 172.24.0.140 0.412ms
> 1: 172.24.0.140 0.331ms
> 2: 172.24.0.1 0.749ms
...
> Проверяю еще раз:
> root на argon:~# tracepath yahoo.com
> 1?: [LOCALHOST] pmtu 1500
> 1: 172.24.0.1 0.800ms asymm
> 2
> 1: 172.24.0.1 0.722ms asymm
...
> Через 172.24.0.140 уже ничего не идет. Как оторвать этот интеллект
> который выбрасывает "лишний" хоп?
172.24.0.140 отправляет ICMP redirect вашему хосту о том, что есть более
оптимальный шлюз в этой подсети. Ваш хост его принимает и начинает его
использовать.
Нужно либо отключить отправку этих редиректов на 172.24.0.140
net.ipv4.conf.all.send_redirects = 0
либо отключить приём ICMP redirects на argon
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.all.secure_redirects = 0
--
Vladimir Lettiev aka crux ✉ theCrux на gmail.com
Подробная информация о списке рассылки Sysadmins