W jaki sposób otrzymasz gniazdo do odbierania pakietów przeznaczonych dla adresu IP routera podsieci IPv6?Python: Uzyskiwanie gniazda IPv6 do odbierania pakietów przeznaczonych dla routerów podsieci Adres anycastowy
Nie mogłem znaleźć żadnych informacji na temat tego, jak to zrobić.
W przypływie desparation, próbowałem za pomocą socket.setsockopt jak by przyłączyć się do grupy multicast:
# 7 is the interface number
s = socket(AF_INET6, SOCK_DGRAM)
packed_iface_num = struct.pack("I", 7)
group = inet_pton(AF_INET6, 'fd36:d00d:d00d:47cb::') + packed_iface_num
# socket.error: (22, 'Invalid argument')
s.setsockopt(IPPROTO_IPV6, IPV6_JOIN_GROUP, group)
A także za pomocą wiązania
# socket.error: (99, 'Cannot assign requested address')
s.bind(('fd36:773e:6b4c:47cb::', 9876))
Zgodnie z oczekiwaniami, ani te zadziałały. Czy jest jakiś sposób na zrobienie tego?