Я нуждаюсь в некоторой помощи, диагностирующей проблему маршрутизации политики.
У меня есть хост Linux с несколькими VLAN. Я пытаюсь создать уникальную таблицу маршрутизации для каждого VLAN (20 в этом примере), и я могу проверить с помощью ping-запросов двунаправлено между хостом и маршрутизатором (шлюз по умолчанию) на VLAN20. Однако, когда я отправляю трафик в от сети IP, сервер человечности отправляет запросы ARP на них дюйм/с вместо того, чтобы отправить трафик через шлюз.
Хост Ubuntu VLAN20: 192.168.20.50
Интерфейс маршрутизатора VLAN20: 192.168.20.1
Созданный таблица "vlan20"
$ cat /etc/iproute2/rt_tables
# # reserved values
# 255 local
254 main
253 default
220 vlan20
0 unspec #
#local
#1inr.ruhep
Созданное правило отправить весь трафик, полученный от таблицы vlan20 использования интерфейса VLAN20
$ ip rule show
0: from all lookup local
32765: from 192.168.20.50 lookup vlan20
32766: from all lookup main
32767: from all lookup default
маршрутизация всего трафика к маршрутизатору vlan20 интерфейс
$ ip route list table vlan20
default via 192.168.20.1 dev eth0.20
192.168.20.0/24 dev eth0.20 scope link
тестирование от хоста Linux
ping 8.8.8.8 -I eth0.20
PING 8.8.8.8 (8.8.8.8) from 192.168.20.50 eth0.20: 56(84) bytes of data.
192.168.20.50 icmp_seq=1 Destination Host Unreachable
От интерфейса Router VLAN20
9.568940 arp who-has 8.8.8.8 tell 192.168.20.50
10.565495 arp who-has 8.8.8.8 tell 192.168.20.50
Маршрут от ядра Ubuntu
# ip route get 8.8.8.8 dev eth0.20
8.8.8.8 dev eth0.20 src 192.168.20.50
cache
Спасибо за Вашу помощь! У меня не было удачи при понимании этого.
Ваша попытка ping связывает с интерфейсом (путем определения -I eth0.20
) - не адрес, и нет никакого интерфейсного маршрута.
Если Вы добавите интерфейсное выводом правило использовать vlan20 таблицу, то это будет использовать шлюз следующего транзитного участка вместо того, чтобы пытаться сделать запрос ARP. т.е.
ip rule add oif eth0.20 lookup vlan20
Вы найдете довольно долгое объяснение и примеры этого появления в моем другом ответе найденными здесь: https://stackoverflow.com/a/47613538/471825