recvNsRFlag - Verifing that a IsRouter flag is not modified by a NS
Host only
recvNsRFlag.seq [-tooloption ...] -p recvNsRFlag.def
TN NUT ---------------------- State: NONCE (for TN)
==== unsolicited RA ===> src=TN's link-local dst=all-node M=0, O=0 RouterLifetime=600 ReachableTime=0 RetransTimer=0 SLLA=TN's LLA Prefix Option: L=1, A=1 ValidLifetime=2592000 PreferredLifetime=604800 Prefix=3ffe:501:ffff:100::/64
State: STALE (for TN)
<=== Ns for DAD (if any) ==== src=unspecified dst=solicited-node[NUT's global] target=NUT's global
==== NA ===> src=TN's link-local dst=NUT's link-local R=1, S=1, O=1 target=TN's link-local TLLA=TN's LLA
State: REACHABLE (for TN)
TN NUT ---------------------- State: NONCE (for TN)
==== unsolicited RA ===> src=TN's link-local dst=all-node M=0, O=0 RouterLifetime=600 ReachableTime=0 RetransTimer=0 SLLA=a bogus LLA Prefix Option: L=1, A=1 ValidLifetime=2592000 PreferredLifetime=604800 Prefix=3ffe:501:ffff:100::/64
State: STALE (for TN)
<=== Ns for DAD (if any) ==== src=unspecified dst=solicited-node[NUT's global] target=NUT's global
==== NA ===> src=TN's link-local dst=NUT's link-local R=1, S=1, O=1 target=TN's link-local TLLA=a bogus LLA
State: REACHABLE (for TN)
recvNsRFlag verifies that a IsRouter flag is NOT modified by a NS.
TN NUT ----------------------
State: REACHABLE (for TN)
==== NS ===> src=TN's link-local dst=teh NUT's link-local or solicited-node[NUT's link-local] target=NUT's link-local w/ or w/o SLL
State: REACHABLE or STALE (for TN)
==== echo-request ===> src=off-link global, but LLA is TN's one dst=NUT's global
<=== Judgement #2: echo-reply ==== src=NUT's global dst=off-link global, but LLA is TN's one
State: REACHABLE or DELAY->PROBE (for TN)
<=== Ns for TN (if the state is PROBE) ==== src=NUT's link-local dst=TN's link-local target=TN's global
State: REACHABLE or NONCE (for TN) =end html
JUDGEMENT
1. IsRouter flag MUST NOT be modified
7.2.3. Receipt of Neighbor Solicitations
If a Neighbor Cache entry is created the IsRouter flag SHOULD be set to FALSE. This will be the case even if the Neighbor Solicitation is sent by a router since the Neighbor Solicitation messages do not contain an indication of whether or not the sender is a router. In the event that the sender is a router, subsequent Neighbor Advertisement or Router Advertisement messages will set the correct IsRouter value. If a Neighbor Cache entry already exists its IsRouter flag MUST NOT be modified.
========================+===================== Received NS | a IsRouter flag by NUT | of NUT's NCE ------------+-----------+ ---------+---------- Dst | SLLA | Current | New ============+===========+==========+========== unicast | none | 1 | unchanged ------------+-----------+----------+---------- unicast | same | 1 | unchanged ------------+-----------+----------+---------- multicast | none | 1 | unchanged ------------+-----------+----------+---------- multicast | same | 1 | unchanged ------------+-----------+----------+---------- unicast | different | 1 | unchanged ------------+-----------+----------+---------- multicast | different | 1 | unchanged ============+===========+==========+==========
2. NUT sends an echo-reply that is thrown to the default router (i.e. TN).
TERMINATION
Send RA with RouterLifetime=0 to clear the Default Router List.
NOTE
The command does not invoke any remote command.
SEE ALSO
perldoc V6evalTool perldoc V6evalRemote