您的Ping命令真的用对了吗?( 二 )


已过滤 - 该实用程序未收到来自端口的任何响应,无论是正面还是负面
现在让我们在实验室中使用本地Modbus PLC进行尝试,我们知道这可以通过端口502(默认的Modbus端口)看到连接请求 。
这次我扫描一系列端口502-503,仍然要求检查TCP和UDP 。

您的Ping命令真的用对了吗?

文章插图
 结果并不令人惊讶; 主机名称解析失败,因为它只是一个PLC(虽然它没有超出PLC分配DNS名称的可能性的范围,大多数不是),并且查询结果确实显示有一个进程在端口502上侦听传入的TCP连接 。
现在,显然,我们实验室中的Modbus PLC没有任何通信问题 。但是,您现在可以想象,当Portqry实用程序以“Not Listening”或“Filtered”响应端口和传输时,对于无响应的设备有多么有用,我们希望在正常通信情况下能够得到肯定的响应 。
但是,如果我们从Portqry得到积极响应但仍然没有成功通信,我们还能做些什么呢?
什么是Netstat?
虽然Netstat命令不提供远程设备接受连接的能力的信息,或者远程主机是否可以在网络上访问,但在查看本地计算机上的套接字状态时,它是非常宝贵的资源 。
您的Ping命令真的用对了吗?

文章插图
 运行简单的netstat枚举本地套接字信息,显示本地和远程地址,套接字状态以及与该主题关联的进程ID(在想要跟踪哪个应用程序正在使用端口时特别有用) 。在对PLC的连接问题进行故障排除时,套接字状态将是最有用的列,因为它可以深入了解发生问题的连接顺序 。过滤后(使用FIND)可以轻松过滤任何关键字的Netstat列表; 包括IP地址和端口:
您的Ping命令真的用对了吗?

文章插图
在解释Socket状态时,至少在一般情况下 - 理解TCP状态图以查看错误发生在连接序列中的哪个位置 。毫无疑问,这是有用的,只是触及netstat能够表达的表面,建议运行netstat /?查看所有可用选项 。
什么是Wireshark?
如果所有其他方法都失败了,并且上面的工具显示一切都应该工作,那么Wireshark就是我们的首选诊断工具 。Wireshark将捕获网卡上的所有流量,并将向我们显示目标设备与我们的计算机之间究竟发生了什么 。
您的Ping命令真的用对了吗?

文章插图
因此,虽然Ping命令肯定有其作为一个非常基本的故障排除工具,但它不应该被误认为是一个完成所有工作的工具 。
 
【您的Ping命令真的用对了吗?】


推荐阅读