On Sun, May 01, 2016 at 03:32:58PM +0200, Toke Høiland-Jørgensen wrote: > Ondrej Zajicek <santi...@crfreenet.org> writes: > > > - in some cases (e.g. babel_handle_route_request()), check for plen == 0 > > or check if prefix is IPA_NONE is used where check for AE 0 should be > > used instead. Note that these are two different cases - there is the > > default route ::/0 (with AE 2), which is a regular route, and there is > > 'wildcard' AE 0, which represent all routes. > > This was actually deliberate on my part: I have considered the different > AEs as solely a matter of encoding on the wire, and not carrying any > significance as to the semantics of the prefix. I.e. and update with AE > 0 and no prefix and one with AE 2 encoding ::/0 are identical in my > reading.
There is an implied semantics of address family: The address family of an address is either IPv4 or IPv6; it is undefined for AE 0, IPv4 for AE 1, and IPv6 for AE 2 and 3. Obviously, there is a difference between AE 1 encoding 0.0.0.0/0 and AE 2 encoding ::/0, therefore AE 0 cannot be identical to both of them. > If this is not the case, I think the RFC needs to specify what, exactly, > is meant by a "wildcard address". I've always thought of ::/0 as the > wildcard address; and doesn't "default route" also mean "wildcard > route"? 'default route' is just a name for the least specific route, i.e. 0.0.0.0/0 or ::/0, but it is a route like any other. While meaning of AE 0 is more like unspecified/any route. Its exact meaning depends on specific TLV: IHU TLV (address implied/irrelevant): it MAY be 0 if the TLV is sent to a unicast address, if the association is over a point-to-point link, or when bidirectional reachability is ascertained by means outside of the Babel protocol. Update TLV (all routes): AE MAY then be 0, in which case this Update retracts all of the routes previously advertised on this interface. Route Request TLV (all routes): The (AE) value 0 specifies that this is a request for a full routing table dump (a wildcard request) > > - babel_read_update() - does BABEL_AE_IP6_LL make sense? > > Not sure it makes much sense to announce a route for a link-local > address, but I suppose it could be used to set a router ID? (Not sure > why anyone would do that, but it would not technically be out of spec). Well, most routing protocols explicitly forbid to propagate link-local routes. So this may be omission in RFC 6126, OTOH it might make sense on ad-hoc wireless networks, where everybody is in one network but there is no full mutual visibily. -- Elen sila lumenn' omentielvo Ondrej 'Santiago' Zajicek (email: santi...@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."
signature.asc
Description: Digital signature