wireshark或IPAnalyse 抓取不到本地回路的数据包
用自己电脑同时做Server和Client,想用WireShark来抓包分析一下问题,却抓取不到
原因分析
因为WireShark只能抓取经过电脑网卡的包,由于我是使用localhost
或者127.0.0.1
进行测试的,流量是不经过电脑网卡的,Windows TCP/IP下没有本地回路的接口,所以不能用常用的windows抓包驱动获取到。比如winpcap,而wireshark是基于winpcap的,所以抓取不到,下面是解决方法
方法一:
1 . 以管理员身份打开命令提示符
2 . 添加路由
输入 route add 本机ip mask 255.255.255.255 网关ip
如果不知道本机ip和网关ip,可以在命令行输入ipconfig
查看
eg:
route add 192.168.2.100 mask 255.255.255.255 192.168.2.1
(意思是:所有需要发往192.168.2.100 地址段的IP数据包,全部由 192.168.2.1 路径转发)
3. 将我们程序里面的localhost
或者127.0.0.1
替换成本机ip
4 . 使用WireShark即可抓到本地包
5 . 调试完成后删除路由
使用route delete 本机ip mask 255.255.255.255 网关ip
来删除我们上面的更改,不然我们本机的所有报文都会先经过网卡再回到本机,会比较消耗性能。
eg:
route delete 192.168.2.100 mask 255.255.255.255 192.168.2.1
方法二:
1.使用 别的抓包工具
比如 smsniff 可以选择列 可以右键导出数据流等等
比如 RawCap 没有用过
比如 WSExplorer 在.net控制台应用程序或者WInForm中比较合适,自己在测试一遍
顶
收藏
关注
评论
作者:王思明
出处:http://www.cnblogs.com/maanshancss/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。所有源码遵循Apache协议,使用必须添加 from maanshancss
出处:http://www.cnblogs.com/maanshancss/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。所有源码遵循Apache协议,使用必须添加 from maanshancss