实现一个基于UDP协议的服务器-客户端程序作用从命令行读入服务器的IP地址;循环从命令行读入字符串,传递给服务器,并接收、显示服务器返回的字符串和服务器的地址信息
时间: 2023-03-23 13:03:38 浏览: 98
好的,以下是一个基于UDP协议的服务端-客户端程序,客户端程序可以从命令行输入读取服务端IP地址,并发送字符串给服务端,服务端程序可以接收客户端发送的字符串并返回接收到的字符串和客户端IP地址。
服务端程序:
```python
import socket
UDP_IP_ADDRESS = "0.0.0.0"
UDP_PORT_NO = 6789
serverSock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
serverSock.bind((UDP_IP_ADDRESS, UDP_PORT_NO))
print("UDP server up and listening")
while True:
data, addr = serverSock.recvfrom(1024)
print("Message: ", data.decode(), "from", addr)
serverSock.sendto(data, addr)
```
客户端程序:
```python
import socket
UDP_IP_ADDRESS = input("Enter server IP address: ")
UDP_PORT_NO = 6789
Message = input("Enter message to send: ")
clientSock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
clientSock.sendto(Message.encode(), (UDP_IP_ADDRESS, UDP_PORT_NO))
data, addr = clientSock.recvfrom(1024)
print("Message: ", data.decode(), "from", addr)
```
请注意,这是一个简单的示例程序,仅用于演示如何使用UDP协议在客户端和服务端之间传递消息。在实际应用程序中,您需要考虑数据包的丢失、乱序和重复,以及处理超时等问题。
阅读全文