test_pim6_basic.py::PIM6Basic

::startup
::prepare:#81:r1/zebra/vtysh[show ipv6 route]
::prepare:#81:r2/zebra/vtysh[show ipv6 route]
::prepare:#85:r1/pim6d/vtysh[show ipv6 pim rp-info]
::prepare:#86:r2/pim6d/vtysh[show ipv6 pim rp-info]
::test_ssm:#98:h2/h2-r2/multicast-join[fdbc:1::fc03:ff:febc:100,ff05::2345]
::test_ssm:#100:r2/pim6d/log
::test_ssm:#102:r1/pim6d/log
::test_ssm:#106:h1/scapy[h1-lan/IPv6/UDP]
::test_ssm:#111:h1/scapy[h1-lan/IPv6/UDP]
::test_ssm:#116:h1/scapy[h1-lan/IPv6/UDP]
::test_ssm:#126:r2_h2/packet
::shutdown

::startup

passed after 1.38s
('test_pim6_basic.py', -inf, 'startup')

::prepare

::prepare:#81:r1/zebra/vtysh[show ipv6 route]

passed after 0.00s, CLI command: show ipv6 route
('test_pim6_basic.py', 81, '#81:r1/zebra/vtysh[show ipv6 route]')

::prepare:#81:r2/zebra/vtysh[show ipv6 route]

passed after 0.00s, CLI command: show ipv6 route
('test_pim6_basic.py', 81, '#81:r2/zebra/vtysh[show ipv6 route]')

::prepare:#85:r1/pim6d/vtysh[show ipv6 pim rp-info]

passed after 0.00s, CLI command: show ipv6 pim rp-info
('test_pim6_basic.py', 85, '#85:r1/pim6d/vtysh[show ipv6 pim rp-info]')

::prepare:#86:r2/pim6d/vtysh[show ipv6 pim rp-info]

failed after 4.99s, CLI command: show ipv6 pim rp-info
Expected output:
        RP address  group/prefix-list  OIF    I am RP  Source  Group-Type
        fd00::3     ff00::/8           r2-r1  no       Static  ASM
        
('test_pim6_basic.py', 86, '#86:r2/pim6d/vtysh[show ipv6 pim rp-info]')
self = <test_pim6_basic.PIM6Basic object at 0x7f7765a20b90>, topo = <topotato.toponom.Network object at 0x7f776592dd90>, h1 = <Router 3 "h1">, h2 = <Router 4 "h2">, r1 = <Router 1 "r1">
r2 = <Router 2 "r2">

    @topotatofunc
    def prepare(self, topo, h1, h2, r1, r2):
        self.receiver = MulticastReceiver(h2, h2.iface_to('r2'))
    
        for rt in [r1, r2]:
            yield from AssertVtysh.make(rt, "zebra", "show ipv6 route")
    
        self.receiver = MulticastReceiver(h2, h2.iface_to('r2'))
    
        yield from AssertVtysh.make(r1, "pim6d", "show ipv6 pim rp-info")
>       yield from AssertVtysh.make(r2, "pim6d", "show ipv6 pim rp-info", """
        RP address  group/prefix-list  OIF    I am RP  Source  Group-Type
        fd00::3     ff00::/8           r2-r1  no       Static  ASM
        """, maxwait=5.0)
E       topotato.exceptions.TopotatoCLICompareFail: 
E       --- output from show ipv6 pim rp-info
E       +++ expected
E       @@ -1,3 +1,3 @@
E        RP address  group/prefix-list  OIF    I am RP  Source  Group-Type
E       -fd00::1     ff00::/8           r2-r1  no       Static  ASM
E       +fd00::3     ff00::/8           r2-r1  no       Static  ASM

/home/equinox/python/topotato/test_pim6_basic.py:86: TopotatoCLICompareFail

::test_ssm

Join a (S,G) on MLD and try forwarding a packet on it.

::test_ssm:#98:h2/h2-r2/multicast-join[fdbc:1::fc03:ff:febc:100,ff05::2345]

passed after 0.00s
('test_pim6_basic.py', 98, '#98:h2/h2-r2/multicast-join[fdbc:1::fc03:ff:febc:100,ff05::2345]')

::test_ssm:#100:r2/pim6d/log

passed after 0.01s
('test_pim6_basic.py', 100, '#100:r2/pim6d/log')

::test_ssm:#102:r1/pim6d/log

failed after 2.99s
('test_pim6_basic.py', 102, '#102:r1/pim6d/log')
self = <test_pim6_basic.PIM6Basic object at 0x7f7765a20b90>, topo = <topotato.toponom.Network object at 0x7f776592dd90>, h1 = <Router 3 "h1">, h2 = <Router 4 "h2">, r1 = <Router 1 "r1">
r2 = <Router 2 "r2">

    @topotatofunc
    def test_ssm(self, topo, h1, h2, r1, r2):
        """
        Join a (S,G) on MLD and try forwarding a packet on it.
        """
        srcaddr = h1.iface_to('lan').ip6[0].ip
    
        yield from self.receiver.join('ff05::2345', srcaddr)
    
        yield from AssertLog.make(r2, 'pim6d', '[MLD default:r2-h2 (%s,ff05::2345)] NOINFO => JOIN' % srcaddr, maxwait=3.0)
    
>       yield from AssertLog.make(r1, 'pim6d', 'pim_forward_start: (S,G)=(%s,ff05::2345) oif=r1-r2' % srcaddr, maxwait=3.0)
E       topotato.exceptions.TopotatoLogFail: pim_forward_start: (S,G)=(fdbc:1::fc03:ff:febc:100,ff05::2345) oif=r1-r2

/home/equinox/python/topotato/test_pim6_basic.py:102: TopotatoLogFail

::test_ssm:#106:h1/scapy[h1-lan/IPv6/UDP]

passed after 0.06s, packet: Ether / IPv6 / UDP IPv6Address('fdbc:1::fc03:ff:febc:100'):9999 > ff05::2345:9999
###[ Ethernet ]### 
  dst       = 33:33:00:00:23:45
  src       = None
  type      = IPv6
###[ IPv6 ]### 
     version   = 6
     tc        = 0
     fl        = 0
     plen      = None
     nh        = UDP
     hlim      = 255
     src       = IPv6Address('fdbc:1::fc03:ff:febc:100')
     dst       = ff05::2345
###[ UDP ]### 
        sport     = 9999
        dport     = 9999
        len       = None
        chksum    = None

::test_ssm:#111:h1/scapy[h1-lan/IPv6/UDP]

passed after 0.05s, packet: Ether / IPv6 / UDP IPv6Address('fdbc:1::fc03:ff:febc:100'):9999 > ff05::2345:9999
###[ Ethernet ]### 
  dst       = 33:33:00:00:23:45
  src       = None
  type      = IPv6
###[ IPv6 ]### 
     version   = 6
     tc        = 0
     fl        = 0
     plen      = None
     nh        = UDP
     hlim      = 255
     src       = IPv6Address('fdbc:1::fc03:ff:febc:100')
     dst       = ff05::2345
###[ UDP ]### 
        sport     = 9999
        dport     = 9999
        len       = None
        chksum    = None

::test_ssm:#116:h1/scapy[h1-lan/IPv6/UDP]

passed after 0.04s, packet: Ether / IPv6 / UDP IPv6Address('fdbc:1::fc03:ff:febc:100'):9999 > ff05::2345:9999
###[ Ethernet ]### 
  dst       = 33:33:00:00:23:45
  src       = None
  type      = IPv6
###[ IPv6 ]### 
     version   = 6
     tc        = 0
     fl        = 0
     plen      = None
     nh        = UDP
     hlim      = 255
     src       = IPv6Address('fdbc:1::fc03:ff:febc:100')
     dst       = ff05::2345
###[ UDP ]### 
        sport     = 9999
        dport     = 9999
        len       = None
        chksum    = None

::test_ssm:#126:r2_h2/packet

passed after 0.00s
('test_pim6_basic.py', 126, '#126:r2_h2/packet')

::shutdown

passed after 1.18s
('test_pim6_basic.py', inf, 'shutdown')
net router-h1 h1 10.255.0.3/32 fd00::3/128 h1-lan fe:03:00:bc:01:00 10.101.0.3/16 fdbc:1::fc03:ff:febc:100/64 lan-lan lan 10.101.0.0/16 fdbc:1::/64 router-h1:h1-lan--lan-lan router-r1 r1 10.255.0.1/32 fd00::1/128 r1-lan fe:01:00:bc:01:00 10.101.0.1/16 fdbc:1::fc01:ff:febc:100/64 r1-r2 fe:01:00:fe:02:00 10.2.1.2/16 router-r1:r1-lan--lan-lan router-r1_router-r2_0 p2p#2 router-r1:r1-r2--router-r1_router-r2_0 router-r2 r2 10.255.0.2/32 fd00::2/128 r2-r1 fe:02:00:fe:01:00 10.2.2.1/16 r2-h2 fe:02:00:fe:04:00 10.3.2.4/16 router-r2:r2-r1--router-r1_router-r2_0 router-r2_router-h2_0 p2p#3 router-r2:r2-h2--router-r2_router-h2_0 router-h2 h2 10.255.0.4/32 fd00::4/128 h2-r2 fe:04:00:fe:02:00 10.3.4.2/16 router-h2:h2-r2--router-r2_router-h2_0