2011-02-03 137 views
0

我使用了基本的python客户端和服务器脚本来模拟我的网络中的客户端和服务器示例。 在服务器端,我跑这个脚本:无法在我的网络中建立客户端 - 服务器连接

# UDP server example 
import socket 
server_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) 
server_socket.bind(("", 5000)) 
print"UDPServer Waiting for client on port 5000" 
while 1: 
data, address = server_socket.recvfrom(256) 
print "(" ,address[0], " " , address[1] , ") said : ", data 

,跑在另一个系统的客户端脚本:

# UDP client example 
import socket 
client_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) 
while 1: 
data = raw_input("Type something(q or Q to exit): ") 
if (data <> 'q' and data <> 'Q'): 
    client_socket.sendto(data, ("localhost",5000)) 
else: 
    break 
client_socket.close() 

在客户端脚本,而不是本地主机,我写我的服务器系统的IP地址。仍然没有连接的迹象。我在这里做错了吗?

+1

您的代码为我工作。你有一些互联网防火墙活跃?另外,如果你使用“localhost”,它是否适合你? – 2011-02-03 18:02:37

回答

0

我假设你在某种* nix上运行它。 您可能需要运行

iptables -I INPUT -p udp --dport 5000 -j ACCEPT 

打开防火墙端口5000