В попытке избежать раздельной маршрутизации для сервера CentOS 6 с несколькими сетевыми адаптерами я работаю над настройкой iproute2 для направления трафика, исходящего от определенного сетевого адаптера (VLAN), для возврата только через этот сетевой адаптер вместо маршрута по умолчанию, установленного на сервере eth0. Вот как это выглядит сейчас.
IP-адрес
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
link/ether 00:50:56:9b:1c:1d brd ff:ff:ff:ff:ff:ff
inet 10.2.130.206/24 brd 10.2.130.255 scope global eth3
inet6 fe80::250:56ff:fe9b:1c1d/64 scope link
valid_lft forever preferred_lft forever
3: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
link/ether 00:50:56:9b:6c:b3 brd ff:ff:ff:ff:ff:ff
inet 10.2.220.206/24 brd 10.2.220.255 scope global eth0
inet6 fe80::250:56ff:fe9b:6cb3/64 scope link
valid_lft forever preferred_lft forever
4: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
link/ether 00:50:56:9b:4b:b1 brd ff:ff:ff:ff:ff:ff
inet 10.2.120.206/24 brd 10.2.120.255 scope global eth1
inet6 fe80::250:56ff:fe9b:4bb1/64 scope link
valid_lft forever preferred_lft forever
5: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
link/ether 00:50:56:9b:4b:14 brd ff:ff:ff:ff:ff:ff
inet 10.2.100.206/24 brd 10.2.100.255 scope global eth2
inet6 fe80::250:56ff:fe9b:4b14/64 scope link
valid_lft forever preferred_lft forever
IP-маршрут
10.2.130.0/24 dev eth3 proto kernel scope link src 10.2.130.206
10.2.100.0/24 dev eth2 proto kernel scope link src 10.2.100.206
10.2.220.0/24 dev eth0 proto kernel scope link src 10.2.220.206
10.2.120.0/24 dev eth1 proto kernel scope link src 10.2.120.206
169.254.0.0/16 dev eth3 scope link metric 1002
169.254.0.0/16 dev eth0 scope link metric 1003
169.254.0.0/16 dev eth1 scope link metric 1004
169.254.0.0/16 dev eth2 scope link metric 1005
default via 10.2.220.1 dev eth0
IP правило
0: from all lookup local
32762: from 10.2.130.0/24 lookup development
32763: from 10.2.100.0/24 lookup protected
32764: from 10.2.120.0/24 lookup external
32765: from 10.2.220.0/24 lookup management
32766: from all lookup main
32767: from all lookup default
Теперь все «кажется» работает так, как задумано, но как мне это проверить?
как мне на самом деле проверить это
Запустите tcpdump / wirehark, настройте целевой интерфейс с помощью -i interface
и генерировать некоторый трафик, который должен проходить через определенный интерфейс, используя любые ваши любимые инструменты. Netcat в службу TCP может быть хорошим вариантом. Убедитесь, что вы видите все для соединения, с помощью tcp убедитесь, что вы видите оба направления трехстороннего рукопожатия и все пакеты для соединения закрыты.