From owner-freebsd-net@FreeBSD.ORG Mon Feb 27 02:58:46 2012 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0A1FA106564A for ; Mon, 27 Feb 2012 02:58:46 +0000 (UTC) (envelope-from agaviola@infoweapons.com) Received: from infoweapons.com (ironmail.v6home.org [184.105.238.50]) by mx1.freebsd.org (Postfix) with ESMTP id DD6C48FC14 for ; Mon, 27 Feb 2012 02:58:45 +0000 (UTC) Received: from ([120.89.47.15]) by mail0.infoweapons.com with ESMTP with TLS id 4321444.9242070; Sun, 26 Feb 2012 18:43:12 -0800 Received: from [IPv6:2001:470:3d:2400:148b:9fc2:a186:ec38] (2001:470:3d:2400:148b:9fc2:a186:ec38) by webmail.infoweapons.com (2001:470:3d:2400::10:11) with Microsoft SMTP Server (TLS) id 8.2.255.0; Mon, 27 Feb 2012 10:43:11 +0800 Message-ID: <4F4AEDBF.3000903@infoweapons.com> Date: Mon, 27 Feb 2012 10:43:11 +0800 From: Archimedes Gaviola User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:10.0.2) Gecko/20120216 Thunderbird/10.0.2 MIME-Version: 1.0 To: Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="ISO-8859-1"; format="flowed" Subject: Issue with multiple configured IPv6 prefixes in rtadvd.conf X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Feb 2012 02:58:46 -0000 Hi, I setup my FreeBSD 8.2 IPv6 router with 2 IPv6 addresses on its interface and configure a static router advertisement (RA) using the 2 prefixes. Each prefix has its corresponding prefix length, valid lifetime, preferred lifetime and MTU options. vulcan# ifconfig em2 em2: flags=8843 mtu 1500 options=3 inet6 fe80::204:23ff:fed4:903a%em2 prefixlen 64 scopeid 0x3 inet6 3ffe:501:ffff:100::1 prefixlen 64 inet6 3ffe:501:ffff:101::1 prefixlen 64 ether 00:04:23:d4:90:3a media: Ethernet autoselect (100baseTX ) status: active vulcan# cat /etc/rtadvd.conf em2:\ :addrs#1:addr="3ffe:501:ffff:100::":prefixlen#64:vltime#12345:pltime#12345:mtu#1400: :addrs#2:addr="3ffe:501:ffff:101::":prefixlen#64:vltime#12345:pltime#12345:mtu#1400: Run RA with rtadvd, vulcan# rtadvd -s -c /etc/rtadvd.conf em2 and here's one of the tcpdump packet logs (exported to a file): Frame 4 (150 bytes on wire, 150 bytes captured) Ethernet II, Src: Intel_d4:90:3a (00:04:23:d4:90:3a), Dst: IPv6mcast_00:00:00:01 (33:33:00:00:00:01) Internet Protocol Version 6 Internet Control Message Protocol v6 Type: 134 (Router advertisement) Code: 0 Checksum: 0x1d4f [correct] Cur hop limit: 64 Flags: 0x00 Router lifetime: 1800 Reachable time: 0 Retrans timer: 0 ICMPv6 Option (Source link-layer address) Type: Source link-layer address (1) Length: 8 Link-layer address: 00:04:23:d4:90:3a ICMPv6 Option (MTU) Type: MTU (5) Length: 8 MTU: 1400 ICMPv6 Option (Prefix information) Type: Prefix information (3) Length: 32 Prefix length: 64 Flags: 0xc0 Valid lifetime: 2592000 Preferred lifetime: 604800 Prefix: 3ffe:501:ffff:101:: ICMPv6 Option (Prefix information) Type: Prefix information (3) Length: 32 Prefix length: 64 Flags: 0xc0 Valid lifetime: 2592000 Preferred lifetime: 604800 Prefix: 3ffe:501:ffff:100:: it seems like the prefix and MTU options took effect upon advertising the RA message while the valid lifetime and preferred lifetime were using the default values. So, I try to modify my rtadvd.conf using one prefix temporarily to verify if those values are acceptable. vulcan# cat /etc/rtadvd.conf em2:\ :addrs#1:addr="3ffe:501:ffff:100::":prefixlen#64:vltime#12345:pltime#12345:mtu#1400: Re-run rtadvd again and here's the packet logs, Frame 6 (118 bytes on wire, 118 bytes captured) Ethernet II, Src: Intel_d4:90:3a (00:04:23:d4:90:3a), Dst: IPv6mcast_00:00:00:01 (33:33:00:00:00:01) Internet Protocol Version 6 Internet Control Message Protocol v6 Type: 134 (Router advertisement) Code: 0 Checksum: 0xd622 [correct] Cur hop limit: 64 Flags: 0x00 Router lifetime: 1800 Reachable time: 0 Retrans timer: 0 ICMPv6 Option (Source link-layer address) Type: Source link-layer address (1) Length: 8 Link-layer address: 00:04:23:d4:90:3a ICMPv6 Option (MTU) Type: MTU (5) Length: 8 MTU: 1400 ICMPv6 Option (Prefix information) Type: Prefix information (3) Length: 32 Prefix length: 64 Flags: 0xc0 Valid lifetime: 12345 Preferred lifetime: 12345 Prefix: 3ffe:501:ffff:100:: so, this time the values are correct since it was advertised in the message. Now, my observation is that there seems to be a problem with advertising two or perhaps more prefixes in the RA message. This has been tested in 7.x and the issues were the same. FreeBSD 4.11 behave the same as well. Is this a bug or limitation of the rtadvd design implementation? Thanks, Archimedes