TUN fd00::/8 route fix, two-node example updated from live testing

Add fd00::/8 route to TUN configure_interface() via rtnetlink - without
this route the kernel had no path to FIPS addresses ("network unreachable").

Update two-node-udp README based on live namespace testing:
- Remove resolvectl steps (doesn't work inside namespaces)
- Remove ICMPv6 Echo Reply mention (kernel handles it natively)
- Add namespace DNS limitation note and kernel ping reply explanation
- Simplify from 8 to 7 steps
This commit is contained in:
Johnathan Corgan
2026-02-13 12:30:46 +00:00
parent 2a37e2716f
commit 4a882ab591
2 changed files with 37 additions and 67 deletions
+12
View File
@@ -406,6 +406,18 @@ async fn configure_interface(name: &str, addr: Ipv6Addr, mtu: u16) -> Result<(),
// Bring interface up
handle.link().set(index).up().execute().await?;
// Add route for fd00::/8 (FIPS address space) via this interface
let fd_prefix: Ipv6Addr = "fd00::".parse().unwrap();
handle
.route()
.add()
.v6()
.destination_prefix(fd_prefix, 8)
.output_interface(index)
.execute()
.await
.map_err(|e| TunError::Configure(format!("failed to add fd00::/8 route: {}", e)))?;
Ok(())
}