我有两个子网,A和B和路由器连接到A和B和广域网。
我有4台服务器,分别位于子网A和B上,其中2台是Mac操作系统,2台是Centos 7 (1503)。它们都被配置为在接收请求的同一个接口上进行响应,而B子网上的网关是它们的默认网关。这个图解显示网络。
两个Mac服务器和一个CentOS服务器Bob工作得很好,因为每个服务器都可以通过子网A或B地址对其他服务器进行ping和ssh。
此外,子网A上的客户端还可以通过子网A或B地址访问Mac OS服务器和CentOS服务器,而这三台服务器可以访问子网A上的任何客户端。
第二个CentOS服务器,Alice,就是问题所在。
子网A上的其他双归属服务器或客户端都不能使用Alice的子网A地址向Alice进行ping或ssh操作。Pings和ssh只是挂起,我没有看到任何通过tcpdump在Alice上传输的证据。其他服务器和客户端上的arp表都表明,子网A和B上的Alice IP地址被映射到适当的MAC地址。
其他任何一个双归属服务器都无法使用Alice的子网B地址向Alice进行ping或ssh操作。
但是,子网A上的客户端可以通过在子网B上使用Alice的地址来平入Alice和ssh。
此外,Alice可以通过子网A对所有服务器和客户端进行ping和ssh操作,也可以通过子网B上的其他三台服务器进行平分,但当Alice试图通过其子网B地址将ssh插入任何服务器时,Alice收到“拒绝连接”吗?!
除了地址之外,服务器Bob和Alice的配置也是相同的。
我比较了各种/etc/sysconfig/network/{ifcfg-、路由-、规则-}{eno1、eno2} on Bob和Alice,除了分配给每个接口的地址之外,它们似乎是相同的。
我比较了Bob和Alice之间的"ip addr“、"ip路由”、"ip规则“,除了地址分配之外,它们看起来都是一样的。
我已经禁用了SELinux并禁用了爱丽丝上的防火墙,以便从考虑中删除这些内容。
我对爱丽丝的错位感到迷惑不解。
在我看来,从证据上看,Alice的任何一个接口都没有硬件问题,因为我可以通过子网A和B地址从路由器到达每个接口,而子网A上的客户可以通过子网B地址到达Alice。
这似乎并不是一个问题,在路由器,因为所有其他组合的通信工作。
此外,拒绝的连接似乎不是通过子网B与其他三台服务器的配置问题,因为它们都能够在子网B上相互连接。从tcpdump来看,Alice试图连接到子网B上的其他三台服务器时,我没有看到其他三个服务器上的任何数据包到达B接口。
我真的很想知道该从哪里着手解决这个问题。
谢谢你,克里斯
发布于 2015-05-18 16:18:46
在一些wireshark捕获了相当多的ICMP从路由器重定向到“隐藏”服务器之后,我发现这个问题是由于过度热心地使用策略路由规则。一旦规则简化,问题就解决了。
https://serverfault.com/questions/690645
复制相似问题