From 9bb5eda3f0b98f7db5cfb2b7cb60429e9e7da6fa Mon Sep 17 00:00:00 2001 From: Andreas Rammhold Date: Tue, 14 Feb 2023 16:17:03 +0100 Subject: [PATCH] Babel: Implement IPv4 via IPv6 extension (RFC 9229) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The patch implements an IPv4 via IPv6 extension (RFC 9229) to the Babel routing protocol (RFC 8966) that allows annoncing routes to an IPv4 prefix with an IPv6 next hop, which makes it possible for IPv4 traffic to flow through interfaces that have not been assigned an IPv4 address. The implementation is compatible with the current Babeld version. Thanks to Toke Høiland-Jørgensen for early review on this work. Minor changes from committer. --- doc/bird.sgml | 6 +++ proto/babel/babel.c | 29 ++++++++--- proto/babel/babel.h | 4 +- proto/babel/config.Y | 5 +- proto/babel/packets.c | 115 ++++++++++++++++++++++++++++++------------ 5 files changed, 118 insertions(+), 41 deletions(-) diff --git a/doc/bird.sgml b/doc/bird.sgml index 001fcbd4..6f3fcfc6 100644 --- a/doc/bird.sgml +++ b/doc/bird.sgml @@ -1929,6 +1929,7 @@ protocol babel [] { check link ; next hop ipv4
; next hop ipv6
; + extended next hop ; authentication none|mac [permissive]; password "<text>"; password "<text>" { @@ -2033,6 +2034,11 @@ protocol babel [] { source for Babel packets will be used. In normal operation, it should not be necessary to set this option. +