2011-04-20 31 views

回答

1

Wireshark(libpcap)只知道Ips,传输协议(UDP/TCP)和端口。有了这个信息,它尝试用候选协议“解码器”解码帧。通常它会犯错。 如果您想要更准确地识别协议,则必须使用深度包检测分析器。更多信息http://en.wikipedia.org/wiki/Deep_packet_inspection

+1

的Wireshark [启发式(http://en.wikipedia.org/wiki/Heuristic#Computer_science)是流行的协议相当不错 – 2011-04-20 12:48:50

+0

呀怎样的Wireshark启发式工作?通过简单的端口号是远远好... – 2011-04-20 12:52:39

+0

@编译迷,启发式定义并不完美;端口号对于80-90%的用例来说很好......所以这是我定义的一个很好的启发式方法。如果您想对端口号启发式做出尖锐的评论,我会期待看到您的提交,以改进wireshark主干中的这些内容。 – 2011-04-21 15:50:22

0

这个email list条目描述了有关wireshark启发式的一些内容。

总之wireshark使用端口/协议编号以及魔术常量(如果可用)。启发式还可以使用有效负载的特殊属性(在HTTP中,可以在某些通信开始时查找字符串GET/POST/...)。 解剖器(因为他们被称为)也可以查看流量​​中的其他数据包,当某些其他应用hi-jacks端口80时,该数据包是有用的,例如Skype does this every now and then