Date: Sun, 17 Jan 2010 15:02:06 -0700 From: Brett Lee <Brett.Lee@Sun.COM> To: freebsd-net@freebsd.org Subject: Re: DHCP6 client Message-ID: <4B5388DE.5030603@Sun.COM> In-Reply-To: <4B50F719.5040402@Sun.COM> References: <4B50F719.5040402@Sun.COM>
next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format. --Boundary_(ID_7iy+6UmvzQaL/0dLKrrdUQ) Content-type: text/plain; CHARSET=US-ASCII; format=flowed Content-transfer-encoding: 7BIT Brett Lee wrote: > Hello - > > Am using FreeBSD 6.3 as a dhcp6 client, trying to get DDNSv6 operational > in this environment. When I execute 'dhcp6c -d lnc0' from the command > line, the following messages are logged on the (ISC 4.1.0p1) DHCP6 server: > > Solicit message from fe80::20c:29ff:fef3:a5de port 546, transaction ID > 0xB3D95D > Unable to pick client prefix: no IPv6 prefix pools on this shared network > Sending Advertise to fe80::20c:29ff:fef3:a5de port 546 > > Am confused by the message above, in particular the "prefix pools", as > this host obtains the "global address" prefix and configures both link > local and global addresses via SLAAC. Surely this can't be the same > prefix. > > Equally confusing is that the Solaris hosts on this LAN have no problem > getting v6 addresses via this DHCP server, and there seems to be plenty > of free leases available. > > Does FreeBSD 6.3 DHCP6 client need a "prefix", or a "pool" of them to be > delivered by the server? Obviously I'm a little bit confused :) and am > thinking the problem is with the dhcpd.conf file. Hoping for some > clarification or direction. Configs are below. > > Thanks for your guidance/suggestions! -Brett > > Client: > > [root@freebsdvm ~]# ifconfig -a > lnc0: flags=108843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,NEEDSGIANT> > mtu 1500 > inet6 fe80::20c:29ff:fef3:a5de%lnc0 prefixlen 64 scopeid 0x1 > inet 192.168.1.94 netmask 0xffffff00 broadcast 192.168.1.255 > inet6 2bad:0:564:1:20c:29ff:fef3:a5de prefixlen 64 autoconf > ether 00:0c:29:f3:a5:de > plip0: flags=108810<POINTOPOINT,SIMPLEX,MULTICAST,NEEDSGIANT> mtu 1500 > lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384 > inet6 ::1 prefixlen 128 > inet6 fe80::1%lo0 prefixlen 64 scopeid 0x3 > inet 127.0.0.1 netmask 0xff000000 > [root@freebsdvm ~]# grep -v '#' /usr/local/etc/dhcp6c.conf > interface lnc0 { > send ia-pd 0; > }; > id-assoc pd { > prefix-interface lnc0 { > sla-id 1; > }; > }; > [root@freebsdvm ~]# > > Server: > > [root@solaris10u4sparc named]# grep iaaddr /var/db/dhcpd6.leases | sort > | uniq > iaaddr 2bad:0:564:1::12 { > iaaddr 2bad:0:564:1::18 { > iaaddr 2bad:0:564:1::19 { > iaaddr 2bad:0:564:2::18 { > iaaddr 2bad:0:564:2::19 { > iaaddr 2bad:0:564:3::18 { > [root@solaris10u4sparc named]# grep -v '#' /etc/dhcpd.conf | egrep > '[A-Z]|[a-z]|[0-9]' > authoritative; > include "/etc/rndc.key"; > ddns-update-style interim; > ddns-domainname "ipv6.apevt.local"; > ddns-rev-domainname "in-addr.arpa"; > ignore client-updates; > zone ipv6.apevt.local. { > primary 192.168.1.23; > key "rndc-key"; > log-facility local6; > min-lease-time 60; > default-lease-time 3600; > max-lease-time 43200; > option domain-name "ipv6.apevt.local"; > option domain-name-servers 192.168.1.254, 192.168.1.23; > option dhcp.domain-search "ipv6.apevt.local, apevt.local"; > option dhcp6.domain-search "ipv6.apevt.local, apevt.local"; > option dhcp6.name-servers 2bad:0:564:1:203:baff:fee8:36f2, > 2bad:0:564:2:203:baff:fee8:36f3, 2bad:0:564:3:203:baff:fee8:36f4; > subnet6 2bad:0000:0564:0001::/64 { > allow unknown-clients; > min-lease-time 60; > default-lease-time 60; > max-lease-time 60; > range6 2bad:0000:0564:0001::10 2bad:0000:0564:0001::19; > subnet6 2bad:0000:0564:0002::/64 { > allow unknown-clients; > min-lease-time 60; > default-lease-time 60; > max-lease-time 60; > range6 2bad:0000:0564:0002::10 2bad:0000:0564:0002::19; > subnet6 2bad:0000:0564:0003::/64 { > allow unknown-clients; > min-lease-time 60; > default-lease-time 60; > max-lease-time 60; > range6 2bad:0000:0564:0003::10 2bad:0000:0564:0003::19; > [root@solaris10u4sparc named]# > Seems I misconfigured dhcp6c.conf to request a pool of addresses for delivery downstream instead of a single stateful address. Now using the current FreeBSD, 8.0-RELEASE, with dhcp6c.conf setup as seen below: interface le0 { send ia-na 0; # request stateful address request domain-name; request domain-name-servers; } id-assoc na 0 { } It works. On to DDNSv6. -Brett --Boundary_(ID_7iy+6UmvzQaL/0dLKrrdUQ)--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4B5388DE.5030603>