[英]Python Sockets - how can I get the IP Address of a Socket after I bind it to an IP
从python库'socket'中是否有一种方法可以返回绑定到它的套接字的IP?
假设一个套接字被声明和初始化如下:
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.connect(ip, port)
我想从套接字中找到接收到的数据报的 IP:
while True:
for s in socks:
recv = s.recv(1024)
#get ip of s or socket
#print received data from s.gethostname()
我将如何继续这件事?
您可以尝试使用 recvfrom 此方法返回数据和发件人的地址
data, address = sock.recvfrom(4)
尝试使用socket.getpeername()
。
简单的方法就像
data, (ip, port) = sock.recvfrom(4096)
print (ip)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.