Прошу приложить нижеприведённый патч (ниже дана ссылка) для пожжержки подстановки IPV4GATE при разборе файлов статической маршрутизации. Поддержка этой подстановки позволяет задавать статические маршруты для интерфейсов не являющихся интерфейсами по умолчанию, но имеющих свои шлюзы по умолчанию. Особенно полезна эта подстановка при одновременном подключении нескольких ppp-соединений, шлюзы для которых выдаются динамически. Ссылка на патч. http://git.altlinux.org/people/sin/packages/?p=etcnet.git;a=commitdiff;h=f1961b0fd3656fc438e97d19271989d19d37cf1a
/sbin/ip -4 route show dev eth0 2>/dev/null|grep -ose "[0-9.]\+[[:space:]]\+proto[[:space:]]\+kernel[[:space:]]\+scope[[:space:]]\+link"|cut -f1 -d" " 24 24 --- длина маски сети на eth0.
(In reply to comment #1) > /sbin/ip -4 route show dev eth0 2>/dev/null|grep -ose > "[0-9.]\+[[:space:]]\+proto[[:space:]]\+kernel[[:space:]]\+scope[[:space:]]\+link"|cut > -f1 -d" " > 24 > > 24 --- длина маски сети на eth0. Да, пожалуй оно не во всех случаях корректно отрабатывает. У меня было так: $ /sbin/ip -4 route show dev ppp0 88.147.128.68 proto kernel scope link src 88.147.180.254 88.147.128.0/17 via 88.147.128.68 $ /sbin/ip -4 route show dev ppp0 2>/dev/null|grep -ose "[0-9.]\+[[:space:]]\+proto[[:space:]]\+kernel[[:space:]]\+scope[[:space:]]\+link"|cut -f1 -d" " 88.147.128.68 $ $ /sbin/ip -4 route show dev net0 192.168.2.0/24 via 192.168.2.1 $ /sbin/ip -4 route show dev net0 2>/dev/null|grep -ose "[0-9.]\+[[:space:]]\+proto[[:space:]]\+kernel[[:space:]]\+scope[[:space:]]\+link"|cut -f1 -d" " $ Но вот эта ситуация правильно не работает: $ /sbin/ip -4 route show dev eth0 192.168.3.0/24 proto kernel scope link src 192.168.3.200 192.168.33.0/24 proto kernel scope link src 192.168.33.1 default via 192.168.3.1 $ /sbin/ip -4 route show dev eth0 2>/dev/null|grep -ose "[0-9.]\+[[:space:]]\+proto[[:space:]]\+kernel[[:space:]]\+scope[[:space:]]\+link"|cut -f1 -d" " 24 24 $ В этом случае нужно выводить 192.168.3.1. А это совсем другой запрос... Мне надо подумать... Может быть предложите более качественное решение?
Я предложил. Устраивает?
Да, я решил потестировать - забыл, что работает... Если задать подсеть в ipv4route без указания куда её маршрутизировать, то она маршрутизируется верно... только теперь всё выглядит так, что оно уходит в интерфейс, а не в конкретный ip, например так: 80.92.208.0/20 dev ppp4 scope link В целом такое поведение вполне устраивает для задач, которые предполагалось решать с помощью IPV4GATE. В текущем положении, если знать как настраивать, необходимость в нём отпадает.
Point-to-point интерфейсы можно использовать для установки маршрутов, даже если у них нет ни одного IP-адреса.