openvz容器之间的连接错误

时间:2014-04-03 09:36:48

标签: routing openvz

我有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是空的,默认接受。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

解决方案非常简单,除了源路由之外,我还需要非对称路由。

设置rp_filter = 0解决了我的问题。