Date: Wed, 24 Oct 2007 15:41:42 +0800 From: LiuJiusheng <liujiusheng@galaxywind.com> To: freebsd-net@freebsd.org Subject: Routing problems Message-ID: <471EF736.1070207@galaxywind.com>
next in thread | raw e-mail | index | archive | help
Hello all: I have found something interesting in FreeBSD routing. This is a test environment, which is not used in reality(perhaps meaningless). | host |-------| router1 |----------| router2 | 2.2.2.2 2.2.2.1 6.6.6.1 6.6.6.2 X.X.X.X (All run FreeBSD OS) Two routes is added to the router1. (4.4.4.0/24 6.6.6.2) and (6.6.6.0/24 2.2.2.2).Then the routing table look this: Destination Gateway Flags Refs Use Netif Expire 2 link#3 UC 0 0 2.2.2.1 00:0c:29:67:a5:88 UHLW 0 4 2.2.2.2 00:09:6b:42:94:b7 UHLW 1 2 1068 4.4.4/24 6.6.6.2 UGS 0 38 6 link#4 UC 0 0 6.6.6/24 2.2.2.2 UGS 1 0 At this time, route 4.4.4.0 can not be used. When ping 4.4.4.4, the machine prints: sent to: Invalid argument. If I remove the route 6.6.6.0/24, then all become correct. I think this happens because Arp is stored in the routing table (That means this is a design problem). I am just start reading the FreeBSD code, so I don't know if I make some mistake. If I am correct, is there any solutions to this problem.(I test it in linux, and it works fine). Thank you!
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?471EF736.1070207>