У меня есть DHCP-клиент, работающий на eth0 и eth1. маршруты zebra появляются автоматически, когда эти интерфейсы сдаются в аренду. Это результат ip route:
root@localhost:~# ip route
default proto zebra
nexthop via 192.168.53.254 dev eth1 weight 1
nexthop via 192.168.1.1 dev eth0 weight 1
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.133
192.168.53.0/24 dev eth1 proto kernel scope link src 192.168.53.42
(TL; DR: как мне удалить, скажем, маршрут по умолчанию, идущий через 192.168.53.254 с IP-маршрутом?)
Теперь я занимаюсь собственной балансировкой нагрузки PBR, и мне нужно отключить маршрут, когда пинг через него не работает в течение некоторого времени. я делаю
vtysh -c "configure terminal" -c "no ip route 0.0.0.0/0 $ROUTER"
который удаляет маршрут, но, похоже, сбивает с толку зебру, потому что, когда я отсоединяю кабель и снова подключаю, он больше не добавляет маршрут автоматически. Я полагаю, что удаление маршрута с помощью ip route не так сильно запутает зебру, но, хоть убей, я не могу понять правильный синтаксис.
Я попытался
ip route del default via 192.168.1.1 dev eth0 proto zebra
что не дает никаких ошибок, но ничего не делает. Я могу увидеть, что маршрут все еще существует, если я потом сделаю "ip route".
Кто-нибудь может помочь?
Заранее спасибо.
Если вы подключитесь к quagga через telnet,
первый:
настроить терминал
затем:
нет IP-маршрута <...>
и заменить <...>
в вашу предыдущую команду
Это отключит вашу предыдущую команду.
После того, как процесс зебры убит, вы можете очистить маршрут зебры с помощью следующей команды:
sudo ip route flush table main proto zebra