Linux下用tcpdump抓包出现kernel drop packets的问题
来源:互联网 发布:go 读写分离 mysql 编辑:程序博客网 时间:2024/05/09 15:36
Linux下面,特别是命令行环境下,tcpdump是用来录制网络包的不二之选。但是,在使用基本必要参数时,往往不能满足正确抓取特定流量的包,比如,过快,过大。经过一番搜索求助后,试了几个方法,唯有一种比较靠谱。
首先,基本的必要参数是:
tcpdump -i ethx (不管三七二十七,这个口上的包统统抓下来)
小包,慢速环境下,这个方式基本没有问题
然后,如果流量过快,包也过大的时候,就会出现kernel drop packets的问题,怎么办?有的说,用“-nn”, "-n"参数,去掉域名解析操作;有的建议用“-s xxxx”放大默认抓包的大小;还有的建议用“-B xxxx”. 都试过一遍后,靠谱的是
tcpdump -i ethx -nn -n -B xxxx -s0 -w xxx.pcap
-nn: don't convert protocol and port number etc. to names either
-n: don not convert host addresses to names. This can be used to avoid DNS lookups.
-s: packet length (0: capture the whole packet; default is 68 bytes)
-B: Set the operating system capture buffer size to buffer_size (unit: kilobytes)
这个buffer size根据具体情况可以设置大一些,当然,这个要跟抓包的时长和具体的应用有关。
另外,对于被抓包的那个网卡,要事先关闭rx checksumming 和 GRO(general receive offload)功能
ethtool -K ethx rx off
ethtool -K ethx grp off
- Linux下用tcpdump抓包出现kernel drop packets的问题
- tcpdump减少drop packets by kernel
- tshark抓包过程出现drop数据包问题的解决方案
- linux的抓包tcpdump
- linux下网络抓包命令tcpdump的使用
- 嵌入式 tcpdump在Linux下的抓包用法
- Linux下tcpdump和Wireshark抓包的数据结构
- linux下的wireshark抓包软件--Tcpdump 安装
- Linux下用tcpdump抓包,wireshark可视化
- linux环境下用TcpDump抓包分析总结
- Linux环境下使用tcpdump抓包
- Linux tcpdump抓包
- linux 抓包 tcpdump
- Linux tcpdump抓包
- adb下的tcpdump抓包方法
- 解决tcpdump "drop by kernel" 问题
- linux下的抓包工具tcpdump
- linux下的抓包工具tcpdump
- SQL语句学习手册实例版
- Sicily1231. The Embarrassed Cryptography
- 不理解小问题列表
- SUMMARIZE:Newton's method
- <从0到1》读书笔记第5章“后发优势”第2记:打造垄断企业技术小结
- Linux下用tcpdump抓包出现kernel drop packets的问题
- 在xcode中使用memory Leaks和Instruments
- Sicily 1221. 数字游戏
- 访问者模式
- 阶沿登钢桨寡仔久四霸铝爸啪剂韧markdowncontent=
- 联盟里这么多企业,哪一家会是我的东家?
- HTML笔记----标签
- char* ,char[],指针与数组
- Sicily 1215. 脱离地牢