我有 2 个 HN(每个都有 2 个上行链路和 3 个 IP 地址范围),上面有多个容器。
HN1 和 HN2 可以到达所有容器。来自同一地址范围的容器可以相互访问。但是来自不同 HN 的容器不能相互访问,如果它们的 IP 地址来自不同的范围。
网络结构:
Cont1 (5.yy.yy.171) - HN1 (5.yy.yy.162, 85.xx.xx.51) - 开关 - HN2 (5.yy.yy.163, 85.xx.xx.52) - 续 2 (85.xx.xx.54)
来自 HN2 的路由(它们在 HN1 上是相同的,唯一的区别是它的 IP 地址):
# ip ru l
0: from all lookup local
1: from all lookup main
32748: from 5.yy.yy.160/27 lookup 120
32749: from 85.xx.xx.18/28 lookup 130
32750: from 85.xx.xx.48/28 lookup 140
32766: from all lookup 130
32767: from all lookup default
# ip ro l table main:
5.yy.yy.189 dev venet0 scope link
5.yy.yy.175 dev venet0 scope link
85.xx.xx.54 dev venet0 scope link
85.xx.xx.55 dev venet0 scope link
85.xx.xx.48/28 dev eth0 proto kernel scope link src 85.xx.xx.52
85.xx.xx.16/28 dev eth0 proto kernel scope link src 85.xx.xx.22
5.yy.yy.160/27 dev eth1 proto kernel scope link src 5.yy.yy.163
# ip ro l table 120:
5.yy.yy.160/27 dev eth1 scope link src 5.yy.yy.163
default via 5.yy.yy.161 dev eth1
# ip ro l table 130:
85.xx.xx.16/28 dev eth0 scope link src 85.xx.xx.22
default via 85.xx.xx.17 dev eth0
# ip ro l table 140:
85.xx.xx.48/28 dev eth0 scope link src 85.xx.xx.52
default via 85.xx.xx.49 dev eth0
iptables 为空,默认接受。
有什么建议么?