Привет.
Есть вот такая схема:
сеть 192.168.0.0/24 ->шлюз eth1 192.168.0.1 eth0 10.10.0.2 -> gateway 10.10.0.1
всё работает прекрасно.появилась необходимость, чтобы сеть 192.168.1.0/24 работала через второй канал и второй 2-й gateway 10.10.10.1
то есть по схеме:
сеть 192.168.1.0/24 ->шлюз eth2 192.168.1.1 eth0:1 10.10.10.2 -> gateway 10.10.10.1
делаю следующие правила (создав интерфейсы):ip route add 10.10.10.0/30 dev eth0:1 src 10.10.10.2 table T2
ip route add default via 10.10.10.1 table T2ip route add 10.10.10.0/30 dev eth0:1 table T2
ip rule add from 10.10.10.0/30 table T2
ip route add 192.168.1.0/24 dev eth2 table T2
ip rule add from 192.168.1.0/24 table T2ip route add 127.0.0.0/8 dev lo table T2
в результате имею:
ip rule list
0: from all lookup 255
32763: from 10.10.10.0/30 lookup T2
32764: from 192.168.14.0/24 lookup T2
32766: from all lookup main
32767: from all lookup defaultip route list table T2
10.10.10.0/30 dev eth0 scope link src 10.10.10.2
192.168.14.0/24 dev vlan16 scope link
127.0.0.0/8 dev lo scope link
default via 10.10.10.1 dev eth0однако,
traceroute -n ya.ru -s 10.10.10.2
traceroute to ya.ru (213.180.204.8) from 10.10.10.2, 30 hops max, 40 byte packets
1 10.10.0.1 0.708 ms 1.587 ms 0.449 ms
уходит всё равно по дефолтному и пока проверять в сети нет смысла.Вопрос, при использовании iproute необходимо ли в rule и route описывать всё маршруты?
тоесть для существующего соединения нужно ли делать таблицу T1 с rule-самиМожет быть я сделал не так правила?
>ip route list table T2
>10.10.10.0/30 dev eth0 scope link src 10.10.10.2
>192.168.14.0/24 dev vlan16 scope linkтут конечно же 192.168.1.0/24 dev eth2 scope link
(вставил реальные значения, тут вопрос упростил)>127.0.0.0/8 dev lo scope link
я не совсем понимаю, зачем здесь вообще policy routing, и по написанному вообще трудно понять (может только мне), но раз уж взялся -- то стоит попробывать в прероутинг для новой сети поставить правило на MARK -- и роутить уже по этому полю. А вообще если других сетей нет, то тут похоже подойдёт "тупая" статическая маршрутизация. Напиши (например) по новой сеть A должна ходить туда-то через вот это.
>я не совсем понимаю, зачем здесь вообще policy routing, и по написанному
>вообще трудно понять (может только мне), но раз уж взялся --
>то стоит попробывать в прероутинг для новой сети поставить правило на
>MARK -- и роутить уже по этому полю. А вообще если
>других сетей нет, то тут похоже подойдёт "тупая" статическая маршрутизация. Напиши
>(например) по новой сеть A должна ходить туда-то через вот это.
>
зачем prerouting? ведь таблица маршрутизации прозрачна:
from 192.168.1.0/24 lookup T2
T2:
default via 10.10.10.1 dev eth0однако маршрут всё равно идёт через default, а не указанный в T2 правилом
я наверно вас тоже не понимаю, как "тупой" статической маршрутизацией сказать так:
из 192.168.1.0/24 всё направить на gw 10.10.10.1, при условии что в системе gw 10.10.0.1?
ip route list table T2
10.10.10.0/30 dev eth0 scope link src 10.10.10.2
192.168.14.0/24 dev vlan16 scope link <<<<<<<<<<<<<ВОТ ЭТО ЧЁ ЗА ФИГНЯ, где тут сеть
<<<<<<<<<<<<<192.168.1.0/24
127.0.0.0/8 dev lo scope link
default via 10.10.10.1 dev eth0да и вообще, везде указанн именно 192.168.1.0/24