IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 一.wireshark抓包疯狂聊天程序 -> 正文阅读

[网络协议]一.wireshark抓包疯狂聊天程序

一.运行疯狂聊天程序,利用wireshark抓包分析此程序连接采用的协议和端口

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

打开wireshark,对WLAN进行抓包,这里利用的是两台电脑连接同一个WLAN,通过接收疯狂聊天程序的消息,得知两台电脑的ip地址,利用地址过滤,得到如下包:

在这里插入图片描述

可以看出,IPMsg程序使用的是UDP协议,在封包详细信息处打开User Datagram Protocol,可以看见封包的源端口和目的端口,在这里都是5002。

在这里插入图片描述

查看数据包:

在这里插入图片描述

这里显示的是“2222”

在这里插入图片描述

这就是聊天的内容。

尝试中文聊天:

在这里插入图片描述

捕获信息:

在这里插入图片描述

这里中文字符经过了转换。

通过字符转换工具可以得到:

在这里插入图片描述

和上述封包数据一致。
发现一个更方便的方法:
在这里插入图片描述
选择UDP流:
在这里插入图片描述

二.疯狂聊天程序的原理

关于UDP:将数据及源和目的封装成数据包中,不需要建立连接;每个数据报的大小在限制在64k内;因无连接,是不可靠协议;不需要建立连接,速度快。

使用udp协议主要涉及到两个类:DatagramSocket,DatagramPacket

  • DatagramSocket: 用于建立一个数据包的出口或入口,构造方法中有IP的都是用于接收方的
  • DatagramPacket: 用于包装数据,构造方法中有IP的都是用于发送方的

可以将其比作发送包裹,DatagramSocket就是快递公司,选择哪一个快递公司并不会影响包裹的发送;而DatagramPacket则是你的包裹,上面必须写明地址(IP)和门牌号(port:端口号).
当多台电脑运行疯狂聊天时,只需要将IP改为接收方的IP,端口号改为自己电脑上面空余的端口号(电脑的端口号是0–65535,1024以内是系统的,所以一般建议使用1024以外的端口号),并且在发送端,要在数据包对象中明确目的地IP及端口,在接收端,要指定监听的端口。
这里我们进入同一个房间(房间号相同)时,程序自动设置发送方和接收方是同一个端口号,当发送方发送数据时,接收方就能够很快接收到聊天内容。

三.参考链接

https://blog.csdn.net/qq_38238041/article/details/80268849
https://blog.csdn.net/qq_47281915/article/details/121356226

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-11-20 18:45:47  更:2021-11-20 18:48:14 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年7日历 -2024/7/3 20:39:30-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码