tcpdump是Linux自带的抓包工具,可以详细看到计算机通信中详细报文内容,如果读者熟悉另一款强大的抓包工具wireshark,tcpdump相当于是wireshark的命令行版本。dump这个单词有垃圾堆,倒垃圾的意思,在计算机英语中的含义是转存。
-c3表示和ping次停下,这时候我们的计算机和百度产生的通信,窗口1的tcpdump就会监听到我们的通信数据,也就是所谓的抓包,切换到窗口1,看到的数据大致如下
在上图中我们可看到本地的IP地址是什么?阿里云的DNS服务器成功给了我们答复,由此可以说明,我们的DNS工作正常。
如果抓取的DNS数据包,看起来向下面这样:
从上图可以看出,我们一共发起了三次DNS查询请求,服务器才最终给我们返回了IP地址,这显然是不太正常的,由此我们可以判断,这次网络卡慢的原因,应该出在DNS解析上。
以上就是使用tcpdump抓包来简单判断网络通信状况。
首先我们知道TCP三次握手分别是:ACK,SYN-ACK,ACK。下面我们就在Linux中简单搭建nginx服务器,然后使用tcpdump抓取tcp包看下。
安装nginx服务并启动