Я настраиваю сервер Red Hat Linux, который будет отправлять UDP-пакеты, но никогда не будет получать ответы ARP. Поэтому требуется статическая запись ARP.
Очевидный способ сделать это.
arp -s 10.0.0.1 distant_server
Однако это не выдержит перезапуска сети или перезагрузки. Я мог бы поместить его в rc.local, но он не выдерживает ifdown && ifup.
Я нашел способ, который, кажется, работает:
Добавьте запись в / etc / ethers по строкам:
10.0.0.1 distant_server
И создайте / sbin / ifup-local:
#!/bin/sh
arp -f
Это кажется действительно хакерским, есть ли способ лучше?
Это правильный способ сохранить постоянный arp
запись и запускать команду при запуске интерфейса.
Менее хакерский способ - правильно настроить ARP в сети ...
Вы можете сделать это с помощью nethook, демон, запускающий сценарии при изменении состояния сетевых интерфейсов.