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

Ondrej Zajicek santiago at crfreenet.org
Fri May 7 13:41:21 CEST 2021


On Thu, May 06, 2021 at 05:09:53PM +0000, Senthil Kumar Nagappan wrote:
> Hi,
> I did sent this message a week back but I could not see it in the mailing, moreover just now subscribed to this mailing list, so sending this again.
> I’m seeing some issues with ospf adj over ptpnumbered/unnumbered interface. 
> 1. Forp2p connections, ospf should be sending only multicast packets toallospfrouters, but I see its sending to unicast address.
> (From RFC “On physical point-to-point networks, theIP destination is always set to the address AllSPFRouters”)

Hi

Thanks for noticing this RFC, that is good argument to change this.


> 2. Forptp over unnumbered interface, bird requires peer address configuration whichis not required from the ospf perspective. Because bird is using peer addressand sending unicast packets, bird cannot form multiple ospf adj over ptpunnumbered interface between 2 endpoints using same peer address.
> Made some quick changes and have attached the patch thataddresses the issues. Relaxed the source ip address validation for ptp link inpacket.c for now. More validation can be added to make it complete.
> Thanks and Regards,Senthil

This is more complicated issue. BIRD OSPF implementation does not really
enumerate physical interfaces, but address ranges assigned to them.
Therefore, one could run two different address ranges on an iface and
it will behave as two different OSPF ifaces (two broadcast network
with different prefixes, two PtP links, or even one broadcast network
and one PtP link).

This is very flexible (these virtual OSPF ifaces can even have different
configuration), but it also leads to the result that physical interface
without address is not an OSPF interface, so even unnumbered ptp
interfaces require peer address configuration to define OSFP interface.

Also note that PtP interfaces need not be physical PtP interfaces, most
often it is just ethernet configured as PtP.

It is hard to reconcile existing model with true unnumbered ifaces
(considering that say IP addresses can appear dynamically so we should
not claim that iface without address is ptp iface). I think that long
term solution is to require that all virtual OSPF ifaces on one physical
iface are of the same type (broadcast vs ptp), but it would require
significant redesign of OSPF iface enumerating code and break some
backwards compatibility in corner cases.

Note that this second issue is unrelated to the first one - dst
addressess of unicast packets are taken from neighbor structure, which
is initialized from src address of neighbor's Hello packets.


-- 
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