[j-nsp] IS-IS multi-topology flaps when adding IPv6
Lars Erik Gullerud
lerik at nolink.net
Thu May 19 13:33:51 EDT 2005
Hi list,
We have observed that when adding inet6 addresses to an existing IPv4-only
link (Junipers on both ends), the following type of behaviour can be
observed from IS-IS:
May 19 01:27:44 br1.stcy rpd[2845]: RPD_ISIS_ADJDOWN: IS-IS lost L2
adjacency to cr1.osls on so-1/1/0.0, reason: MT Topology Changed
May 19 01:27:44 br1.stcy rpd[2845]: RPD_RSVP_NBRDOWN: RSVP neighbor
X.X.X.X down on interface so-1/1/0.0, triggered by IGP neighbor down
event
(the second line is not IS-IS related, but only included to show that it
is indeed a full IGP adjacency flap, not just a cosmetic log insert)
This behaviour, namely that IS-IS drops the adjacency, seems to happen
regardless of whether multi-topology IS-IS has been enabled or not
(which, in our case, it is - with "topologies ipv6-unicast" set under
protocols isis).
Now, I don't claim to be an IS-IS expert by any means, which is why I'm
hoping someone can enlighten me on this - should it really be necessary
to drop the L2 adjacency to establish a new protocol in IS-IS?
IIRC, IS-IS transmits "Protocols Supported" and "Interface Address" TLV's
with every IS-IS Hello, so in my head, IPv6 NLPID TLVs and IPv6 Interface
Address TLVs could simply be added to the next outgoing Hello-packet and
the neighbouring router should be able to pick up the new protocol, and,
if supported at both ends, start flooding new LSP PDUs for it.
In fact, rereading old papers (and RFC1195), I believe a router has to
advertise "protocols supported" identically on ALL interfaces, and should
therefore have the IPv6 NLPID TLV already present in it's IS-IS Hello
packets if the router is IPv6-enabled - so wouldn't it then only need to
exchange Interface Address (which are the link-locals on the interface
I believe) and launch an SPF on only the appropriate topology once all
necessary PDUs are exhanged, without affecting the others?
If someone can explain to me what part of the picture I'm missing (again,
my IS-IS knowledge unfortunately leaves a lot to be desired), please chime
in - since I gather Juniper would not have done it this way if it was not
required, I would very much like to understand this better. :)
/leg
More information about the juniper-nsp
mailing list