OSPFv3 auth problem
Joakim Tjernlund
Joakim.Tjernlund at infinera.com
Thu Mar 11 16:50:18 CET 2021
On Thu, 2021-03-11 at 15:06 +0000, Joakim Tjernlund wrote:
> On Thu, 2021-03-11 at 15:50 +0100, Ondrej Zajicek wrote:
> > On Thu, Mar 11, 2021 at 12:35:40PM +0000, Joakim Tjernlund wrote:
> > > We have a ring of routers(5 of them) running unnumbered pppoe links between them. Adding OSPF authentication (auth trailer) works OK.
> > > However, removing OSPFv3 on ONE interface causes big problem in some cases, we loose auth in the whole ring
> > > and routing is then kaputt for all routers.
> > >
> > > We have noted that some PDUs(like LS update) are sent without auth trailer so the receiving nodes
> > > complains with "ospfv3_2: Authentication failed for nbr 0.0.139.1 on p1-1-3-1-4 - missing authentication trailer (0)"
> > >
> > > OSPFv3 Hello is OK though, it still has its auth trailer.
> >
> > Hmm, that is strange. There is difference between Hello and LSUpd in
> > OSPFv3 Auth receiver code, but not in sending code. That is essentially:
> >
> > if (ifa->autype != OSPF_AUTH_CRYPT)
> > return;
> >
> > ... attach auth trailer ...
> >
> >
> > > Any ideas?
> >
> > LSUpd packets do not contain explicit flag whether they use OSPFv3 auth
> > trailer. Such information is stored in neighbor structure based on
> > received DBDes packet. So 'missing authentication trailer' for LSUpd
> > really means that such neighbor structure says 'no auth'. But that
> > should not happen as that DBDes packet would be rejected.
> >
> > One idea is that DBDes packets intended for one iface (non-authenticated)
> > were sent to a different iface (authenticated) and they poisoned neighbor
> > structure with 'no auth' info.
> >
> > You say 'loose auth in the whole ring', i can imagine that it will break
> > adjacent links, but it will really break even non-adjacent links?
> >
>
> Yes, it takes some time(about 30 min) though before the whole ring is gone.
> All nodes are seeing "missing authentication trailer" msg.
I should mention that a birdc restart/configure(on each node) will correct the problem.
More information about the Bird-users
mailing list