Iptables
本文将介绍iptables的四表五链,以及入站、出站和转发所走的链
(待补充一张图,参考Reference中两个链接,会有修改)
实验过程
通过ip addr
命令我们可以看到,本机上有三个IP地址127.0.0.1
、192.168.1.103
、172.17.0.1
$ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000
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: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:e8:b0:38 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.103/24 brd 192.168.1.255 scope global ens33
valid_lft forever preferred_lft forever
inet6 fe80::4876:bfe:de57:eb31/64 scope link
valid_lft forever preferred_lft forever
3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN
link/ether 02:42:9d:c9:79:d8 brd ff:ff:ff:ff:ff:ff
inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
valid_lft forever preferred_lft forever
4: cali3d40082289d@if3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1440 qdisc noqueue state UP
link/ether ee:ee:ee:ee:ee:ee brd ff:ff:ff:ff:ff:ff link-netnsid 0
inet6 fe80::ecee:eeff:feee:eeee/64 scope link
valid_lft forever preferred_lft forever
查看路由表如下:
$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.2 0.0.0.0 UG 100 0 0 ens33
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
172.26.0.0 0.0.0.0 255.255.255.0 U 0 0 0 *
172.26.0.19 0.0.0.0 255.255.255.255 UH 0 0 0 cali3d40082289d
192.168.1.0 0.0.0.0 255.255.255.0 U 100 0 0 ens33
本机 to 127.0.0.1
本机 ping 127.0.0.1,源地址是127.0.0.1,依次经过
上层协议栈 -> 路由 -> OUTPUT -> 路由 -> POSTROUTING -> lo -> INPUT -> 上层协议栈
本机 to 192.168.1.103
本机 ping 192.168.1.103,源地址是192.168.1.103,依次经过
上层协议栈 -> 路由 -> OUTPUT -> 路由 -> POSTROUTING -> ens33-> INPUT -> 上层协议栈
本机 to 172.17.0.1
本机 ping 172.17.0.1,源地址是172.17.0.1,依次经过
上层协议栈 -> 路由 -> OUTPUT -> 路由 -> POSTROUTING -> docker0 -> INPUT -> 上层协议栈
本机 to 远程
从本机 ping 192.168.1.102,源IP是192.168.1.103,依次经过
上层协议栈 -> 路由 -> OUTPUT -> 路由 -> POSTROUTING -> ens33
本机 to 本机上的Pod
本机 ping 172.26.0.19,源IP是192.168.1.103,依次经过
上层协议栈 -> 路由 -> OUTPUT -> 路由 -> POSTROUTING -> cali3d40082289d
to be continued
Reference
Last updated
Was this helpful?