Как iptables или netfilter работают с несколькими сетевыми картами? - PullRequest
0 голосов
/ 28 июня 2019

Например, у меня есть машина с установленным доксером.Сетевые адаптеры могут выглядеть следующим образом:

[root@localhost ~]# ip a
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
   valid_lft forever preferred_lft forever
inet6 ::1/128 scope host 
   valid_lft forever preferred_lft forever
2: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:37:97:29 brd ff:ff:ff:ff:ff:ff
inet 192.168.80.126/24 brd 192.168.80.255 scope global dynamic eno16777736
   valid_lft 1687sec preferred_lft 1687sec
inet6 fe80::20c:29ff:fe37:9729/64 scope link 
   valid_lft forever preferred_lft forever
3: docker0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP 
link/ether 02:42:eb:5b:4a:63 brd ff:ff:ff:ff:ff:ff
inet 172.17.32.1/24 brd 172.17.32.255 scope global docker0
   valid_lft forever preferred_lft forever
inet6 fe80::42:ebff:fe5b:4a63/64 scope link 
   valid_lft forever preferred_lft forever
5: vethf27f258@if4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker0 state UP 
link/ether b6:d5:ae:73:77:aa brd ff:ff:ff:ff:ff:ff link-netnsid 0
inet6 fe80::b4d5:aeff:fe73:77aa/64 scope link 
   valid_lft forever preferred_lft forever
[root@localhost ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.80.1    0.0.0.0         UG    100    0        0 eno16777736
172.17.32.0     0.0.0.0         255.255.255.0   U     0      0        0 docker0
172.17.100.0    192.168.80.235  255.255.255.0   UG    0      0        0 eno16777736
192.168.80.0    0.0.0.0         255.255.255.0   U     100    0        0 eno16777736

Итак, когда я пропингую контейнер на этом компьютере с другого узла, при передаче NIC ENO будут проверяться цепи PreRouting, Forward, PostRouting (функции перехвата в netfilter)., затем пакет будет отправлен в NIC docker0, и что тогда произойдет?iptables будет проверен снова или что-то еще случится?Что, если docker0 перенаправит этот пакет в третий сетевой адаптер на этой машине, будут ли проверены iptables, и если да, то какая часть?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...