Appearance
Appearance
本页面将为你概述 Wireshark 可以在哪些方面帮助你排查网络故障(……以及在哪些方面使用其他工具可能更好)。
由于学习网络故障排查是一项永无止境的任务(有很多关于它的优秀书籍),这里仅能提供一个粗略概览。你甚至可以把一生都投入其中(并以此获得你的年收入)。
⚠️ 请记住,Wireshark 并非面向下文提到的所有任务(而且可能也并不适合)(下面会针对具体任务给出引导)!
总体而言:如果你不了解任何网络协议,也不了解网络通常如何工作,那么在你愿意学习相关知识之前,Wireshark 对你不会很有用。
嗯,你的网络中有些东西完全无法工作,或未按预期工作,而你需要解决它。
你的网络运行得太慢。当然,这取决于你的期望 😃
一些可能的原因:
性能不足:整体网络性能对你想要完成的任务来说太慢,例如你不能指望通过 100MBit/s Ethernet 链路每秒提供一百万个 HTTP 请求。Wireshark 可以帮助判断这里是否属于这种情况,但监控(下文提到)可能是检测和处理此类问题的更好方式。
超时:客户端首先尝试访问某个特定服务。经过通常的超时时间后,它会尝试另一个能够实现该目的的服务。在下一次请求时,这个过程会一再重复。虽然查找原因可能很繁琐,但 Wireshark 在这里会非常有帮助。
瓶颈:你的网络整体性能正常,但某处存在瓶颈导致变慢(可能只是服务器/交换机/路由器/房屋/工厂/……之间的某条特定链路)。由于 Wireshark 不太适合分布式分析,监控工具(下文提到)在这里可能会做得更好。
协议问题:不兼容的协议实现会降低可能达到的性能,与上文一般部分中的协议问题相同。
泛洪:“有意的”(例如 virus/trojan)或“无意的”(例如配置错误/有缺陷的实现)发送大量数据包,从而淹没网络。Wireshark 可以帮助你找出泛洪的发起者和类型。
因此,根据原因不同,Wireshark 可能有助于追踪性能问题,也可能无能为力。
持续关注你的网络中正在发生什么。监控会提醒你服务故障(例如 webserver 无响应)、性能问题等。
这可能从每小时 ping 一次远程机器的简单 cron job,到 Nagios(以前称为 NetSaint)这样的专用工具,再到 HP OpenView (tm)Network Node Manager 这样的商业企业级工具。
Wireshark 不太适合(也并非面向)监控。不过,如果你偏好的监控工具检测到问题,你最终可能会进入上文描述的一般故障排查或性能部分。
一些常见的安全任务:
总体而言,与安全相关的任务最好由专门工具完成。不过,在使用这些工具时,Wireshark 可以通过提供额外信息,帮助你获得更深入的知识,并建立对实际发生情况的感知。
使用 Nmap 或 Nessus 等工具扫描你的网络,在坏人发现已知安全漏洞之前先发现它们。通过分析这些工具产生的网络流量,Wireshark 可以帮助你理解这些工具真正做了什么。
运行 Snort 等软件的 IDS 服务器会分析网络流量,并在某些内容“看起来异常”时触发警报。通过查看网络流量,Wireshark 可能帮助你判断 IDS 报告的是误报,还是确实存在真实问题。
在坏事发生之后,尝试找出实际发生了什么、它是如何发生的,以及最终是谁发起的。如果你必须深入挖掘网络流量,Wireshark 可能会有所帮助。不过,有人报告称,他们使用 Wireshark 捕获整个网络的流量以用于取证目的(使用磁带库或类似设备存储所有数据),把 Wireshark 当作一种网络备份工具!
于 2020-08-11 23:17:21 UTC 从 https://wiki.wireshark.org/NetworkTroubleshooting/Overview 导入