通过Wireshark抓包疯狂聊天程序聊天记录

文章目录

  • 1 WireShark 简介
  • 2 抓取聊天网络数据包
    • 2.1 设备连接
    • 2.2 利用wireshark抓包分析此程序连接采用的协议和端口
  • 总结

1 WireShark 简介

Wireshark是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。WireShark可以比喻做硬件工程的万用表、示波器,同样我们网络工程师或者软件工程师可以利用wireshark来进行分析网络。
wireshark下载地址:https://www.wireshark.org/download/
直接安装即可。

2 抓取聊天网络数据包

2.1 设备连接

注意,当两台电脑连接到同一个WLAN时,运行疯狂聊天程序可能会无法发送聊天内容,当我们知晓ip时,在终端ping ip地址能够成功,但就是不能传输,此时需要将除WLAN外的网卡全部禁用,再次运行程序,就能够发送数据了。

两台电脑连接同一个热点,打开疯狂聊天软件,并在聊天程序中输入同一个房间号:

通过Wireshark抓包疯狂聊天程序聊天记录_第1张图片

测试两台电脑是否连通

通过Wireshark抓包疯狂聊天程序聊天记录_第2张图片

2.2 利用wireshark抓包分析此程序连接采用的协议和端口

通过分析代码可知,该疯狂聊天程序通过udp向255.255.255.255发送信息。

通过Wireshark抓包疯狂聊天程序聊天记录_第3张图片

在wireshark中输入筛选ip.dst==255.255.255.255进行过滤

通过Wireshark抓包疯狂聊天程序聊天记录_第4张图片

可以发现存在这样的包,同时也验证了是基于UDP协议进行发送,而且是发送到广播地址255.255.255.255。这样处于同一个房间即处在同一个端口号的所有人都可以接受到消息。

通过Wireshark抓包疯狂聊天程序聊天记录_第5张图片

可以发现端口号为5005,通过分析源码可以得知端口号为房间号+5000,而我们的房间号为5。

继续查看发送的内容

通过Wireshark抓包疯狂聊天程序聊天记录_第6张图片

此时,只发送西文字符,可以直接看到信息内容与抓包抓到的数据一致

通过Wireshark抓包疯狂聊天程序聊天记录_第7张图片

当发送内容为中文时

通过Wireshark抓包疯狂聊天程序聊天记录_第8张图片

抓取到的信息为:

通过Wireshark抓包疯狂聊天程序聊天记录_第9张图片

可以发现当发送中文的时候,只能看到…,分析代码可知分析代码可以发现中文经过了utf-8转换,一个中文占三个字节。

总结

软件使用的协议是UDP,连接端口是5005,能在多台电脑上同时传输聊天数据的原因是发送信息时使用的广播地址。关于UDP:将数据及源和目的封装成数据包中,不需要建立连接;每个数据报的大小在限制在64k内;因无连接,是不可靠协议;不需要建立连接,速度快。使用udp协议主要涉及到两个类:DatagramSocket,DatagramPacket。学会抓包可以帮助我们在网络编程过程中很好的测试。


参考
https://blog.csdn.net/qq_45659777/article/details/121421044
https://blog.csdn.net/qq_47281915/article/details/121356226

你可能感兴趣的:(wireshark,网络,udp)