From 8b28f72f423d32b90a08537d2c013a22228795d3 Mon Sep 17 00:00:00 2001 From: Mark Wooding Date: Sat, 13 Jul 2013 16:34:40 +0100 Subject: [PATCH] hosts.lisp: Replacing IPv6 host routes with /112 networks. Linux has a bug: it doesn't make route cache entries for remote hosts if there's already a host route, and it only attaches path-MTU information to cache entries. The result is that it doesn't handle ICMPv6 `packet too big' messages properly for destinations with host routes. I'm bodging this by replacing all of the host routes with tiny /112 networks. It's awful, but it seems to work. The convention is that the `host part' of the net is always zero. --- hosts.lisp | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/hosts.lisp b/hosts.lisp index 881ad01..7c3383e 100644 --- a/hosts.lisp +++ b/hosts.lisp @@ -103,9 +103,9 @@ (defhost vampire.untrusted (untrusted 3)) ;; Virtual private network. -(defhost crybaby.vpn (vpn 1)) +(defhost crybaby.vpn ((:ipv4 vpn 1) (:ipv6 vpn "::1:0"))) (defhost terror.vpn ((:ipv4 vpn 2))) -(defhost orange.vpn (vpn 3)) +(defhost orange.vpn ((:ipv4 vpn 3) (:ipv6 vpn "::3:0"))) ;; Iodine network. (defhost jazz.iodine (iodine 1)) @@ -123,13 +123,13 @@ (defhost jazz.colo (colo 5)) ;; Anycast addresses for services. -(defhost dns0.any (any 0)) -(defhost dns1.any (any 1)) -(defhost ntp0.any (any 2)) -(defhost ntp1.any (any 3)) -(defhost www-cache.any (any 4)) -(defhost krb0.any (any 5)) -(defhost krb1.any (any 6)) +(defhost dns0.any ((:ipv4 any 0) (:ipv6 any "::0:0"))) +(defhost dns1.any ((:ipv4 any 1) (:ipv6 any "::1:0"))) +(defhost ntp0.any ((:ipv4 any 2) (:ipv6 any "::2:0"))) +(defhost ntp1.any ((:ipv4 any 3) (:ipv6 any "::3:0"))) +(defhost www-cache.any ((:ipv4 any 4) (:ipv6 any "::4:0"))) +(defhost krb0.any ((:ipv4 any 5) (:ipv6 any "::5:0"))) +(defhost krb1.any ((:ipv4 any 6) (:ipv6 any "::6:0"))) ;;;-------------------------------------------------------------------------- ;;; Host switch. -- 2.11.0