-
- self.pg0.add_stream(pkts)
- self.pg0.add_stream(pkts)
- self.pg_enable_capture(self.pg_interfaces)
- self.pg_start()
- capture = self.pg0.get_capture(1, filter_out_fn=None)
- found = 0
- for rx in capture:
- if (rx.haslayer(ICMPv6ND_RA)):
- # and come from the router's link local
- self.assertTrue(in6_islladdr(rx[IPv6].src))
- self.assertEqual(in6_ptop(rx[IPv6].src),
- in6_ptop(mk_ll_addr(self.pg0.local_mac)))
- # sent to the all hosts mcast
- self.assertEqual(in6_ptop(rx[IPv6].dst), "ff02::1")
-
- found = 1
- self.assertTrue(found)
-
- @unittest.skip("Unsupported")
- def test_mrs(self):
- """ IPv6 Multicast Router Solicitation Exceptions
-
- Test scenario:
- """
-
- #
- # An RS from a link source address
- # - expect an RA in return
- #
- nsma = in6_getnsma(inet_pton(socket.AF_INET6, self.pg0.local_ip6))
- d = inet_ntop(socket.AF_INET6, nsma)
-
- p = (Ether(dst=getmacbyip6("ff02::2")) /
- IPv6(dst=d, src=self.pg0.remote_ip6) /
- ICMPv6MRD_Solicitation())
- pkts = [p]
-
- self.pg0.add_stream(pkts)
- self.pg_enable_capture(self.pg_interfaces)
- self.pg_start()
- self.pg0.assert_nothing_captured(
- remark="No response to NS source by address not on sub-net")