gpt4 book ai didi

sockets - Twisted上的IPv6链路本地多播

转载 作者:行者123 更新时间:2023-12-03 11:53:58 27 4
gpt4 key购买 nike

我正在尝试在Twisted-Example-Page上编写相同的Ping-Pong组播示例。尽管该示例适用于多播组的IPv4地址,但我替换了这一行

self.transport.joinGroup("228.0.0.5")


 self.transport.joinGroup("ff02::1")

这是 链接本地IPv6地址,因此地址为 fe80::的客户端可以接收多播消息。

尽管收到这样的错误,但这不起作用:
Unhandled error in Deferred:
Unhandled Error
Traceback (most recent call last):
Failure: twisted.internet.error.DNSLookupError: DNS lookup failed:
address 'ff02::1' not found: [Errno -9] Address family for hostname not supported.

我一直在寻找API引用,但似乎没有获得执行此方法的正确方法。

这就是我得到的 cat /etc/hosts
127.0.0.1   localhost
127.0.1.1 testbed

# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

任何帮助将非常感谢。

更新

我使用的Debian软件包的版本为 13.2 ,现在已更新为 16.0 ,但此问题仍然存在。

最佳答案

好的,显然,在使用self.transport.joinGroup()时,分配 IPv6地址的工作仍在进行中。

因此,这将无法正常工作

self.transport.joinGroup('ff02::1')

这也不会
self.transport.joinGroup('ff02:0000:0000:0000:0000:0000:0000:0001')

人们总是可以回到Python的基本套接字编程中,在真实网络和计算机上都可以使用IPv6多播来完成工作。对于代码,请检查 this Link

关于sockets - Twisted上的IPv6链路本地多播,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36034258/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com