如何在Python中拒绝特定IP的套接字连接?

时间:2017-11-26 19:53:17

标签: python sockets

听众代码:

import socket

host = socket.gethostbyname(socket.gethostname())
port = int(raw_input("PORT > "))
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.bind((host, port))
server.listen(5)
while True:
    c, addr = server.accept()
    buff = 2048
    print addr[0]+" connected."
    c.send("Connection Established")
    data = c.recv(buff)
    if data:
        print data

客户代码:

import socket

server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
host = socket.gethostbyname(socket.gethostname())
port = int(raw_input("PORT > "))
server.connect((host, port))
buff = 2048
data = server.recv(buff)
if data:
    print data

是否可以从客户端接收数据并同时侦听端口?怎么样?

1 个答案:

答案 0 :(得分:-1)

accept()使用线程向/从客户端发送/接收数据,同时主线程可以等待下一个再次运行accept()的客户端。这是标准方法。