不同网段的两台主机互ping问题

三台工控机,中间的作为路由器
网络拓扑如图:
图片说明
OVS1可以ping通OVS3 的p1p1口,OVS7也可以ping通 ovs3的eth0口,但是OVS1和OVS7两者不能互ping.

我查过 OVS1和OVS7的arp表 OVS1的arp表中 OVS7的 MAC地址是 incomplete,我手动添加MAC地址之后,还是ping不通,不知道问题出在哪里

明显是没有路由啊,如果需要用OVS3做中转,那他上边要有所有机器的路由,不管是linux还是windows,都可以通过命令来配置临时路由,有了路由,OVS3做了非本机消息不丢弃,转发,(linux中可以这么配置,windows不明),这样其他消息过来以后按照路由转发到指定端口,然后不同端口间的机器就可以自由转发消息了。

看这里:https://blog.csdn.net/qq_24373811/article/details/53695449
还有配置网关:https://blog.csdn.net/u011353822/article/details/39370849

ping其他望断主机是不需同网段的,就像是我们可以可以直接ping百度一样,这个是你的硬件设置问题,检查下eth0和p1p1之间是不是有问题

以太网的ping有很多规定,以我们常用的C类地址来说,能不能ping通,是看ip和子网掩码相与的两个结果,一样不一样

好比192.168.1.1和192.168.2.1 如果子网掩码都配置255.255.255.0时 相与的结果分别是192.168.1.0和192.168.2.0 明显不一样 所以ping不通

但是如果修改子网掩码为255.255.252.0时 相与的结果都为192.168.0.0 可以ping通

ov3两个网段的网关端口是否通,要配置ov3的2个以太网端口。

首先确定一下OVS1和OVS7的防火墙设置,先把OVS1和OVS7都关掉,再去ping测试;因为你ping路由器没有问题,路由器如果确实转发了ping请求,看看是不是目的的防火墙给屏蔽了,最好是抓包看一下

确定一下OVS1和OVS7的防火墙设置,先把OVS1和OVS7都关掉

这个不同网段之间ping需要进行特殊配置,楼上一位大牛说的三个网关都设置成255.255.0.0子网掩码可以试试,
你可以找资料看看局域网不同网段之间通信怎么配置

不同网段要ping通,可以使用vpn进行连接,比较简单的使用pptp
或者使用两块网卡将一个设为内网,一个设为外网,应该也是可以的。

两台PC相连,假设PC1的ip为1.1.1.1,PC2的ip为2.2.2.2.

当PC1 ping PC2时,会首先查看自己的APR缓存,看是否有2.2.2.2对应MAC地址。第一次显然没有,那么就需要发送ARP包来询问谁的IP地址为2.2.2.2

PC2收到来自PC1的ARP包之后,会回答说我就是2.2.2.2,将MAC地址发送个PC1.

如果按照这个思路,显然是可以ping的通的。

但是,问题的根源就在这里了,ARP包是在什么情况的时候发送。

ARP协议是解决同一个局域网上的主机或路由器的IP地址和硬件地址的映射问题的

也就是说当PC1想ping PC2之前,要先看PC2是否与自己在同一个网段上,如果在一个网段上,可以直接广播ARP,如果不在,那么需要向网关发送ARP包,

网关查询自己的ARP缓存。也就说如果两台直连,不通网段是无法ping通的

这个连接方法网段不同不能ping通