目录
- 一、参考链接
- 二、主要工作
- 1.查看本机ip
- 2.下载Ubuntu下网络调试助手 NetAssist
- 3.编写一个python脚本测试UDP通信
- 4.测试简单的UDP通信
一、参考链接
Ubuntu下网络调试助手 NetAssist
使用python实现UDP通信
python代码实现简单的udp通信
二、主要工作
1.查看本机ip
#下载一个工具
sudo apt install net-tools
#查看ip
ifconfig
查看得本机ip为192.168.1.7
2.下载Ubuntu下网络调试助手 NetAssist
下载地址:
链接:https://pan.baidu.com/s/1BroDliYRitu6OWoNWR0BTA
提取码:gpza
下载完了双击直接安装
3.编写一个python脚本测试UDP通信
UDP_text1.py
# -*- coding:UTF-8 -*-
import socket
# 使用udp收发数据
def main():
# 1.创建socket套接字
udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) # AF_INET表示使用ipv4,默认不变,SOCK_DGRAM表示使用UDP通信协议
# 2.绑定端口port
local_addr = ("192.168.1.7", 7878) # 本地ip,指定端口号7878
udp_socket.bind(local_addr) # 绑定端口
# 3.收发数据
send_data = input("请输入您想要发送的数据:" )
udp_socket.sendto(send_data.encode("utf-8"), ("192.168.1.5", 8080)) # 编码成全球统一数据格式,用元组表示接收方ip和port
recv_data = udp_socket.recvfrom(1024) # 定义单次最大接收字节数
# 4.打印数据
recv_msg = recv_data[0] # 接收的元组形式的数据有两个元素,第一个为发送信息
send_addr = recv_data[1] # 元组第二个元素为发信息方的ip以及port
print ("收到的信息为:", recv_msg.decode("gbk")) # 默认从windows发出的数据解码要用”gbk”,保证中文不乱码
print ("发送方地址为:", str(send_addr)) # 强转为字符串输出地址,保证不乱码
# 5.关闭套接字
udp_socket.close()
if __name__ == "__main__":
main()
4.测试简单的UDP通信
使用python3 UDP_text1.py
运行该脚本后如下图所示
用另一台电脑打开网络调试助手,按照python脚本里面的填写的ip和端口号设置本地ip、端口号和目标ip、端口号,然后点击连接网络
在python脚本这边输入需要发送的数据,点击回车
在另一台电脑上的网络调试助手接收到了
在另一台电脑上的网络调试助手上发送数据
在python脚本这边也接收到了