準備兩段代碼
一段時client端,另一段是server端
client端代碼
from socket import *
serverName = "hostname" # 這裏替換爲你的服務器地址
serverPort = 12000 # 我們使用12000端口進行通信
clientSocket = socket(AF_INET, SOCK_DGRAM)
message = input('input lowercase sentence:')
clientSocket.sendto(message.encode(), (serverName, serverPort))
modifiedMessage,serverAddress = clientSocket.recvfrom(2048)
print(modifiedMessage.decode())
clientSocket.close()
server端代碼
from socket import *
serverPort = 12000 # 同樣使用12000端口監聽
serverSocket = socket(AF_INET, SOCK_DGRAM)
serverSocket.bind(('', serverPort))
print('The server is ready to recrive')
while True:
message, clientAddress = serverSocket.recvfrom(2048)
modifiedMessage = message.decode().upper()
serverSocket.sendto(modifiedMessage.encode(), clientAddress)
啓動服務
首先啓動server端服務
啓動效果 可以使用linux命令 "netstat -tlnup"發現確實已經監聽了對應的端口號
啓動client端服務
我們可以看見我們隨意輸入了四個字符“agss”服務器給我們顯示了大寫的字符回來
抓包看看內容確實是服務器返回的
我們通信的過程中可以打開“Wireshark”進行抓包
這就是我們發出的數據包
限免看看服務器返回的數據包
我們完成了一次成功的通信!!!