问题描述
在检查用Python编写的嗅探器代码时,我看到以太网层信息是从数据包的前14个字符获得的,而IP层信息是从包含以太网层信息的同一数据包的前20个字符获得的。那么如何从数据包的同一部分获得IP和以太网信息呢?
简而言之:
packet = s.recvfrom(65535)
ethernet_layer = packet[:14]
ip_layer = packet[:20] # includes ethernet layer
我的看法:
packet = s.recvfrom(65535)
ethernet_layer = packet[:14]
ip_layer = packet[14:34]
嗅探器代码:https://github.com/shreyasgune/Packet-Sniffer/blob/master/sniff-it.py#L47
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)