From owner-freebsd-net@FreeBSD.ORG Mon Oct 16 22:19:59 2006 Return-Path: X-Original-To: freebsd-net@freebsd.org Delivered-To: freebsd-net@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7F50D16A47C for ; Mon, 16 Oct 2006 22:19:59 +0000 (UTC) (envelope-from dan.krejsa@windriver.com) Received: from mail.wrs.com (mail.windriver.com [147.11.1.11]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9B90C43D78 for ; Mon, 16 Oct 2006 22:19:56 +0000 (GMT) (envelope-from dan.krejsa@windriver.com) Received: from ALA-MAIL03.corp.ad.wrs.com (ala-mail03 [147.11.57.144]) by mail.wrs.com (8.13.6/8.13.3) with ESMTP id k9GMJuJM016885 for ; Mon, 16 Oct 2006 15:19:56 -0700 (PDT) X-MimeOLE: Produced By Microsoft Exchange V6.5.7226.0 Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Date: Mon, 16 Oct 2006 15:19:55 -0700 Message-ID: X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: PPP IPv6 prefix length and stateless autoconfiguration? Thread-Index: AcbxcTVelj3tiji6QFeG+wubd+b7VQ== From: "Krejsa, Dan" To: Subject: PPP IPv6 prefix length and stateless autoconfiguration? 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, 16 Oct 2006 22:19:59 -0000 Hi, Some code in the in6_update_ifa() function in netinet6/in6.c enforces that if an IPv6 destination address is specified for an interface address, the interface must be point-to-point or loopback (fine), and the corresponding prefix length must be exactly 128 bits. The latter seems (at least naively) to conflict with=20 the definition in http://www.ietf.org/internet-drafts/draft-ietf-ipv6-over-ppp-v2-02.txt that the interface identifier length for PPP interfaces is 64 bits, and correspondingly prefixes accepted from a router advertisement must also be 64 bits long; see section 5.5.3 in http://www.ietf.org/internet-drafts/draft-ietf-ipv6-rfc2462bis-08.txt There's code in nd6_rtr.c's in6_ifadd() function which requires the prefix length associated with the link local in6_ifaddr (found by in6ifa_ifpforlinklocal()) to agree with the prefix length from the router advertisement prefix info option before adding an autoconfigured address. They won't match if the in6_ifaddr has prefix length 128. This would seem to prevent autoconfiguring global IPv6 addresses on PPP links. Or is there a way this is worked around elsewhere in the code? - Dan