python绑定到windows上的接口和端口

2024-09-28 01:28:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我的计算机有两个NIC:一个有1.1.1.1,另一个有一些内部网络

绑定到ip和端口时,我有一些奇怪的行为:

import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.bind(('1.1.1.1',1234))
sock.settimeout(0)

group= socket.inet_aton('224.1.1.1')
mreq = struct.pack('4sL', group, socket.INADDR_ANY)
sock.setsockopt(socket.IPPROTO_IP, socket.IP_ADD_MEMBERSHIP, mreq)
print("Listening at:" + str(sock.getsockname()))

time.sleep(2)
while True:
    print("\waiting to receive message")
    data, address = sock.recvfrom(1024)

    print ("received {} butes from {}".format(len(data), adsress))
    print (data)

print("Listening at:" + str(sock.getsockname()))上,我得到了预期的数据(即接口1.1.1.1和端口1234)。 在print ("received {} butes from {}".format(len(data), adsress))上,我从其他接口获取数据

知道发生了什么吗


Tags: 端口fromipdatagroupsocketatsock

热门问题