Passive Interface

Test to verify RIPng passive interface behavior for unidirectional IPv6 route exchange. A passive interface receives routing updates from neighbors but does not send its own updates, creating asymmetric routing information exchange. This validates that passive mode enables listening to RIPng updates while preventing route advertisements.

Test RIPng Passive Interface

Description

Test RIPng passive interface behavior demonstrating unidirectional IPv6 route exchange. DUT0 (with passive interface on eth0) receives routes from DUT1 but does not advertise its own routes (2001:db8:10::/64).

Scenario

Note

Passive interface behavior:

The IPv6 route 2001:db8:10::/64 is not advertised by DUT0 to DUT1 because eth0 is configured as a passive interface.

  • DUT0 with passive interface: receives routes from DUT1 but does not send routes.

  • DUT1 with normal interface: sends and receives routes normally.

This creates unidirectional IPv6 route exchange, useful for preventing routing updates

Step 1: Set the following configuration in DUT0 :

set interfaces dummy dum0 address '2001:db8:10::1/64'
set interfaces ethernet eth0 address '2001:db8:1::100/64'
set protocols ripng network '2001:db8:1::/64'
set protocols ripng passive interface eth0
set protocols ripng redistribute connected
set protocols ripng timers update 5
set system login user admin authentication encrypted-password '$6$GSjsCj8gHLv$/VcqU6FLi6CT2Oxn0MJQ2C2tqnRDrYKNF8HIYWJp68nvXvPdFccDsT04.WtigUONbKYrgKg8d6rEs8PjljMkH0'

Step 2: Set the following configuration in DUT1 :

set interfaces dummy dum0 address '2001:db8:20::1/64'
set interfaces ethernet eth0 address '2001:db8:1::50/64'
set protocols ripng network '2001:db8:1::/64'
set protocols ripng redistribute connected
set protocols ripng timers update 5
set system login user admin authentication encrypted-password '$6$GSjsCj8gHLv$/VcqU6FLi6CT2Oxn0MJQ2C2tqnRDrYKNF8HIYWJp68nvXvPdFccDsT04.WtigUONbKYrgKg8d6rEs8PjljMkH0'

Attention

Verify that DUT0 learns the route 2001:db8:20::/64 from DUT1

Step 3: Run command protocols ripng show at DUT0 and check if output matches the following regular expressions:

2001:db8:20::/64
Show output
Codes: K - kernel route, C - connected, L - local, S - static,
       R - RIPng, O - OSPF, I - IS-IS, B - BGP, E - EIGRP, N - NHRP,
       T - Table, v - VNC, V - VNC-Direct, A - Babel, F - PBR,
       f - OpenFabric, t - Table-Direct
Sub-codes:
      (n) - normal, (s) - static, (d) - default, (r) - redistribute,
      (i) - interface, (a/S) - aggregated/Suppressed

   Network      Next Hop                      Via     Metric Tag Time
C(i) 2001:db8:1::/64
                  ::                          self       1    0
C(r) 2001:db8:10::/64
                  ::                          self       1    0
R(n) 2001:db8:20::/64
                  fe80::dcad:beff:feef:6c10   eth0       2    0  02:58

Step 4: Run command protocols ipv6 show route at DUT0 and check if output matches the following regular expressions:

2001:db8:20::/64
Show output
Codes: K - kernel route, C - connected, L - local, S - static,
       R - RIPng, O - OSPFv3, I - IS-IS, B - BGP, N - NHRP,
       T - Table, v - VNC, V - VNC-Direct, A - Babel, F - PBR,
       f - OpenFabric, t - Table-Direct,
       > - selected route, * - FIB route, q - queued, r - rejected, b - backup
       t - trapped, o - offload failure

IPv6 unicast VRF default:
C>* 2001:db8:1::/64 is directly connected, eth0, weight 1, 00:00:04
K * 2001:db8:1::/64 [0/256] is directly connected, eth0, weight 1, 00:00:05
L>* 2001:db8:1::100/128 is directly connected, eth0, weight 1, 00:00:04
C>* 2001:db8:10::/64 is directly connected, dum0, weight 1, 00:00:05
K * 2001:db8:10::/64 [0/256] is directly connected, dum0, weight 1, 00:00:05
L>* 2001:db8:10::1/128 is directly connected, dum0, weight 1, 00:00:05
R>* 2001:db8:20::/64 [120/2] via fe80::dcad:beff:feef:6c10, eth0, weight 1, 00:00:01
C * fe80::/64 is directly connected, eth0, weight 1, 00:00:04
C>* fe80::/64 is directly connected, dum0, weight 1, 00:00:05

Attention

Verify that DUT1 does not learn the route 2001:db8:10::/64 from DUT0

Step 5: Run command protocols ripng show at DUT1 and expect this output:

Show output
Codes: K - kernel route, C - connected, L - local, S - static,
       R - RIPng, O - OSPF, I - IS-IS, B - BGP, E - EIGRP, N - NHRP,
       T - Table, v - VNC, V - VNC-Direct, A - Babel, F - PBR,
       f - OpenFabric, t - Table-Direct
Sub-codes:
      (n) - normal, (s) - static, (d) - default, (r) - redistribute,
      (i) - interface, (a/S) - aggregated/Suppressed

   Network      Next Hop                      Via     Metric Tag Time
C(i) 2001:db8:1::/64
                  ::                          self       1    0
C(r) 2001:db8:20::/64
                  ::                          self       1    0

Step 6: Run command protocols ipv6 show route at DUT1 and expect this output:

Show output
Codes: K - kernel route, C - connected, L - local, S - static,
       R - RIPng, O - OSPFv3, I - IS-IS, B - BGP, N - NHRP,
       T - Table, v - VNC, V - VNC-Direct, A - Babel, F - PBR,
       f - OpenFabric, t - Table-Direct,
       > - selected route, * - FIB route, q - queued, r - rejected, b - backup
       t - trapped, o - offload failure

IPv6 unicast VRF default:
C>* 2001:db8:1::/64 is directly connected, eth0, weight 1, 00:00:03
K * 2001:db8:1::/64 [0/256] is directly connected, eth0, weight 1, 00:00:05
L>* 2001:db8:1::50/128 is directly connected, eth0, weight 1, 00:00:03
C>* 2001:db8:20::/64 is directly connected, dum0, weight 1, 00:00:05
K * 2001:db8:20::/64 [0/256] is directly connected, dum0, weight 1, 00:00:05
L>* 2001:db8:20::1/128 is directly connected, dum0, weight 1, 00:00:05
C * fe80::/64 is directly connected, eth0, weight 1, 00:00:03
C>* fe80::/64 is directly connected, dum0, weight 1, 00:00:05