tcpdump简单抓包分析

socket传输数据时,如果不采用加密的方式,使用tcpdump抓包可获取传输数据,这里简单记录一下,用于以后深入分析。

 

socket通信可以参考之前写的博客:

https://blog.csdn.net/xiadeliang1111/article/details/85210205

 

服务端启动之后:

tcpdump简单抓包分析_第1张图片

 

客户端发送:

./client 127.0.0.1 "welcome to helloworld"

参数1为IP,此处设置的是127.0.0.1, 传输内容为 welcome to helloworld

 

使用tcpdump进行抓包

命令:

tcpdump host (IP) and port (port) -i (eth0) -w file_name.pcap

如:

tcpdump host 127.0.0.1 and port 4321 -i lo -w socket_test.pcap

上面代码中socket通信时,使用IP为127.0.0.1,端口为4321,所以使用tcpdump抓取的主机IP为127.0.0.1,端口为4321,网卡为本地回环地址,-w为将数据写入文件socket_test.pcap

tcpdump简单抓包分析_第2张图片

 

使用wireshark查看socket_test.pcap文件,分析数据

 

tcpdump简单抓包分析_第3张图片

取两组数据进行查看,可以看到源地址127.0.0.1,目的地址127.0.0.1,以及端口4321,

再看TCP/IP三次握手:

第一行客户端先发送一个SYN包

第二行服务端收到SYN包之后,发送一个SYN,ACK包

第三行客户端再发送ACK包,握手成功

第四行客户端发送传输数据

 tcpdump简单抓包分析_第4张图片

 

可以看到传输内容:welcome to helloworld

因此,非加密时,传输内容可被捕获到,传输数据时,应使用加密传输。

 

再下面几行就是挥手的过程。

 

到这里,简单的抓包分析就结束了,涉及的点主要是socket,TCP/IP协议,tcpdump使用,以后再继续深入研究。 

 

 

 

 

你可能感兴趣的:(C)