18. 无法扫描或添加ADS路由是什么原因?

一、检查网卡IP地址设置

如果 IP 地址设置不合理,则 ADS 通信一定无法建立,两端控制器的 IP 是否在同一网段,子网掩码设置是否合理

  •  例如:A 控制器设置为:192.168.1.11,B 控制器设置为:192.168.1.22,子网掩码均为:255.255.0.0。 
    • 如果需要连接外网的话,网关设置是否合理,如果不需要外网通信,请不要设置网关。 
    • 不可在同一个网卡上设置多个 IP 地址,这会造成 ADS 通讯无法添加路由或者后续出现通讯不稳定。 建议先禁用其他不进行 ADS 通信的网卡,等 ADS 通信已经建立完成后,再使能其他网卡(TC2 环境下会更 有效果)。 
    • 打开命令行界面,ping 对方 IP,看看是否能够 ping 通,如果不通,则继续以上几步看看哪里设置不合理;如 果可以 ping 通则尝试在 TwinCAT 中进行扫描和添加路由。



二、检查防火墙设置

如果是 WES7 或者 Win10 的系统,在初次添加路由时防火墙可能会阻止 UDP 报文的收发, 因此需要关闭防火墙或者在防火墙中开放入站端口(48898 和 48899),一般情况,先关闭防火墙, Client 和 Server 两端的防火墙都需要关闭,扫描到目标机并添加了路由后,再启动防火墙。

 

三、检查网络交换机或路由器设置(若有)

有些用户的局域网中禁止发送 UDP 报文,因此会在路由器或者交换机上设置了 UPD 报文包过滤的屏障,这会导致目标机无法正确收发 UDP 扫描报文, 这个情况可以通过在控制器两段分别安装 Wireshark 来实时抓取网络数据包来分析,看看本机是否可以接收到目标 IP 发送过来的请求或响应报文。 广域网之间的 TwinCAT 进行通讯 ADS通讯时,经常会遇到这个问题,需要在设置 VPN 传输时,设置透传功能,这样目标控制器收到的报文中的 src IP 信息不会被路由器自动修改了。这个现象也可以通过 Wirshark 来抓取两端的数据包进行分析 src IP 和 dst IP 是否匹配即可找到问题的症结。


2025.7.7 汪继彬 编辑