簡體   English   中英

Python Sockets - 將套接字綁定到 IP 后如何獲取該套接字的 IP 地址

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM