问题描述
我的电脑有 2 个网卡:一个使用 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))
我从其他接口获取数据
知道发生了什么吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)