ospf ptp link sending unicast packets instead of multicast; peer address config not required

Ondrej Zajicek santiago at crfreenet.org
Sun May 9 16:01:42 CEST 2021


On Sat, May 08, 2021 at 04:03:34PM +0000, Joakim Tjernlund wrote:
> Meanwhile I did this:
> --- a/proto/ospf/packet.c
> +++ b/proto/ospf/packet.c
> @@ -415,7 +415,7 @@ ospf_rx_hook(sock *sk, uint len)
>       * that (src_local || dst_local), therefore we are eliminating all
>       * such cases.
>       */
> -    if (dst_mcast && !src_local)
> +    if (ifa->type != OSPF_IT_PTP && dst_mcast && !src_local)
>        return 1;

Hi

This check should be done in a different way.

If i have iface eth0 that has two addresses:

10.0.0.1 peer 10.0.1.1
10.0.0.1 peer 10.0.2.1

Then BIRD would make two separate virtual OSPF PtP ifaces and the check
above ensures that Hello packets from 10.0.1.1 does not appear on second
iface and ones from 10.0.2.1 on the first iface.

If we want to add support for PtP iface with host address without
configured peer address, then this check should not apply (so we would
accept any peer), but not for all PtP ifaces.


> @@ -430,7 +430,7 @@ ospf_rx_hook(sock *sk, uint len)
>       * RFC 5340 says that local (non-vlink) packets use
>       * link-local src address, but does not enforce it. Strange.
>       */
> -    if (dst_mcast && !src_local)
> +    if (ifa->type != OSPF_IT_PTP && dst_mcast && !src_local)
>        LOG_PKT_WARN("Multicast packet received from non-link-local %I via %s",
>                    sk->faddr, ifa->ifname);

This is unnecessary. In OSPFv3, src_local is true on PtP networks
as it is just link-local address.

> @@ -535,6 +535,9 @@ ospf_iface_stubby(struct ospf_iface_patt *ip, struct ifa *addr)
>    if (ip->type == OSPF_IT_VLINK)
>      return 0;
>  
> +  if (ip->type == OSPF_IT_PTP)
> +    return 0;
> +
> 
> What is that about? Is it unrelated to AllSPFRouters change?

There should be some change as the code in ospf_iface_stubby() forces any
host address to stub network. That is too strong as PtP or PtMP can be
valid with just host address. But this change must be done in a different
way.

-- 
Elen sila lumenn' omentielvo

Ondrej 'Santiago' Zajicek (email: santiago at crfreenet.org)
OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net)
"To err is human -- to blame it on a computer is even more so."


More information about the Bird-users mailing list