日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

python开发的网络调试助手_Linux/windows/mac 下的socket网络通信调试助手 UDP/TCP

發(fā)布時(shí)間:2023/12/20 linux 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python开发的网络调试助手_Linux/windows/mac 下的socket网络通信调试助手 UDP/TCP 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

本文,是關(guān)于socket調(diào)試在mac,linux,windows三端的測試工具的介紹和使用。

好東西有很多,在此僅僅列舉一二。

.

一、linux 網(wǎng)絡(luò)調(diào)試助手

linux端一款不錯(cuò)的socket調(diào)試工具,叫“mNetAssist”也行,直接叫做“網(wǎng)絡(luò)調(diào)試助手”也行。

感謝作者

感謝開源。

幾個(gè)小特點(diǎn)。

1.UDP通訊;

2.可做 TCP客戶端;

3.可做 TCP服務(wù)器;

4.可以“十六進(jìn)制”傳送接收數(shù)據(jù);

5.可以傳送和接收數(shù)據(jù)文件;

6.TCP服務(wù)器模式時(shí)支持群聊模式;

7.支持中文;

軟件界面

.

.

使用初探

我們用python寫一個(gè)簡單的udp代碼測試一下。

/Users/amqr/PycharmProjects/testPj/venv/bin/python /Users/amqr/PycharmProjects/testPj/udpSend.py

==============================

1:發(fā)送消息

2:接收消息

==============================

請輸入要操作的功能序號:1

請輸入要發(fā)送的數(shù)據(jù):發(fā)送到linux

請輸入對方的ip地址:10.211.55.6

請輸入對方的port:6883

==============================

1:發(fā)送消息

2:接收消息

==============================

請輸入要操作的功能序號:1

請輸入要發(fā)送的數(shù)據(jù):fine,good job.this is the second msg

請輸入對方的ip地址:10.211.55.6

請輸入對方的port:6883

==============================

1:發(fā)送消息

2:接收消息

==============================

請輸入要操作的功能序號:2

>>>('10.211.55.6', 6883):from linux is ok?

==============================

1:發(fā)送消息

2:接收消息

==============================

請輸入要操作的功能序號:

.

.

如下是接收完第二條消息之后,又發(fā)送回一條消息的界面

image.png

.

.

附上python代碼

import socket

def send_msg(udp_socket):

"""獲取鍵盤數(shù)據(jù),并將其發(fā)送給對方"""

# 1. 從鍵盤輸入數(shù)據(jù)

msg = input("\n請輸入要發(fā)送的數(shù)據(jù):")

# 2. 輸入對方的ip地址

dest_ip = input("\n請輸入對方的ip地址:")

# 3. 輸入對方的port

dest_port = int(input("\n請輸入對方的port:"))

# 4. 發(fā)送數(shù)據(jù)

udp_socket.sendto(msg.encode("utf-8"), (dest_ip, dest_port))

def recv_msg(udp_socket):

"""接收數(shù)據(jù)并顯示"""

# 1. 接收數(shù)據(jù)

recv_msg = udp_socket.recvfrom(1024)

# 2. 解碼

recv_ip = recv_msg[1]

recv_msg = recv_msg[0].decode("utf-8")

# 3. 顯示接收到的數(shù)據(jù)

print(">>>%s:%s" % (str(recv_ip), recv_msg))

def main():

# 1. 創(chuàng)建套接字

udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

# 2. 綁定本地信息

udp_socket.bind(('', 6669))

while True:

# 3. 選擇功能

print("="*30)

print("1:發(fā)送消息")

print("2:接收消息")

print("="*30)

op_num = input("請輸入要操作的功能序號:")

# 4. 根據(jù)選擇調(diào)用相應(yīng)的函數(shù)

if op_num == "1":

send_msg(udp_socket)

elif op_num == "2":

recv_msg(udp_socket)

else:

print("輸入有誤,請重新輸入...")

if __name__ == "__main__":

main()

.

.

二、windows 網(wǎng)絡(luò)調(diào)試工具

這個(gè)比較常見。

image.png

image.png

使用

簡單python客戶端向服務(wù)器發(fā)送消息

/Users/amqr/PycharmProjects/testPj/venv/bin/python /Users/amqr/PycharmProjects/testPj/04-tcp-客戶端(client).py

請輸入要鏈接的服務(wù)器的ip:10.211.55.4

請輸入要鏈接的服務(wù)器的port:6666

請輸入要發(fā)送的數(shù)據(jù):tcp test

Process finished with exit code 0

.

.

界面圖

界面.png

.

.

python 代碼

import socket

def main():

# 1. 創(chuàng)建tcp的套接字

tcp_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# 2. 鏈接服務(wù)器

# tcp_socket.connect(("192.168.33.11", 7890))

server_ip = input("請輸入要鏈接的服務(wù)器的ip:")

server_port = int(input("請輸入要鏈接的服務(wù)器的port:"))

server_addr = (server_ip, server_port)

tcp_socket.connect(server_addr)

# 3. 發(fā)送數(shù)據(jù)/接收數(shù)據(jù)

send_data = input("請輸入要發(fā)送的數(shù)據(jù):")

tcp_socket.send(send_data.encode("utf-8"))

# 4. 關(guān)閉套接字

tcp_socket.close()

if __name__ == "__main__":

main()

.

.

三、mac 網(wǎng)絡(luò)調(diào)試工具 sokit

mac下有一款PacketSender非常出名。

不過我們現(xiàn)在要說的是國人開發(fā)的 [sokit]

感謝作者 sakasa

安裝過程

1、安裝saka倉庫

brew tap rangaofei/saka

2、安裝軟件

brew install sokit

因?yàn)橐蕾噏t,所以安裝會稍微慢一點(diǎn),安裝成功后執(zhí)行命令即可:

3、啟動(dòng)

sokit

使用

我們以為udp的發(fā)送和接收為例子。

代碼還是上面在linux的代碼。

控制臺日志:

/home/parallels/PycharmProjects/testPj/venv/bin/python /home/parallels/PycharmProjects/testPj/udptest.py

==============================

1:發(fā)送消息

2:接收消息

==============================

請輸入要操作的功能序號:1

請輸入要發(fā)送的數(shù)據(jù):test to mac

請輸入對方的ip地址:192.168.0.103

請輸入對方的port:6772

==============================

1:發(fā)送消息

2:接收消息

==============================

請輸入要操作的功能序號:2

>>>('192.168.0.103', 56230):back to linux

==============================

1:發(fā)送消息

2:接收消息

==============================

請輸入要操作的功能序號:

.

.

sokit界面

作為服務(wù)端接收消息

image.png

作為客戶端發(fā)送消息

image.png

至此,三端介紹完畢。

本文完。

END.

總結(jié)

以上是生活随笔為你收集整理的python开发的网络调试助手_Linux/windows/mac 下的socket网络通信调试助手 UDP/TCP的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。