[Dnsmasq-discuss] dnsmasq with dhcpv6 and dhcp-host option

Sheng Yang sheng at yasker.org
Mon Jan 14 18:48:56 GMT 2013


On Mon, Jan 14, 2013 at 10:35 AM, Sheng Yang <sheng at yasker.org> wrote:
>
>
> On Mon, Jan 14, 2013 at 9:49 AM, Sheng Yang <sheng at yasker.org> wrote:
>>
>> Hi Simon,
>>
>> Thank you for help! It's the problem!
>>
>> However, after I correct this one, dnsmasq still failed to hand out IP address, using dhcp-host entry.
>>
>> The config here:
>> dhcp-range=fc00:1234:5678:1234::1,static
>> dhcp-host=00:01:00:01:18:80:df:3e:48:aa:8e:b2:d5:2a,fred,[fc00:1234:5678:1234::144],test,infinte
>> enable-ra
>>
>
> Thank you! I found the problem. dhcp-host should be:
>
> dhcp-host=id:00:01:00:01:18:80:df:3e:48:aa:8e:b2:d5:2a,fred,[fc00:1234:5678:1234::144],test,infinte
>
> missing the id option...
>
> Thank you for help!
>
> --Sheng
>
>>
>> The log:
>>
>> Jan 14 17:38:35 dnsmasq[2213]: started, version 2.62 cachesize 150
>> Jan 14 17:38:35 dnsmasq[2213]: compile time options: IPv6 GNU-getopt DBus i18n IDN DHCP DHCPv6 no-Lua TFTP conntrack
>> Jan 14 17:38:35 dnsmasq-dhcp[2213]: IPv6 router advertisement enabled
>> Jan 14 17:38:35 dnsmasq-dhcp[2213]: DHCP, static leases only on fc00:1234:5678:1234::1, lease time 1h
>> Jan 14 17:38:35 dnsmasq[2213]: using local addresses only for domain cs1cloud.internal
>> Jan 14 17:38:35 dnsmasq[2213]: reading /etc/dnsmasq-resolv.conf
>> Jan 14 17:38:35 dnsmasq[2213]: using nameserver 8.8.8.8#53
>> Jan 14 17:38:35 dnsmasq[2213]: using local addresses only for domain cs1cloud.internal
>> Jan 14 17:38:35 dnsmasq[2213]: read /etc/hosts - 9 addresses
>> Jan 14 17:38:37 dnsmasq-dhcp[2213]: RTR-ADVERT(eth0) fc00:1234:5678:1234::
>> Jan 14 17:38:43 dnsmasq-dhcp[2213]: RTR-ADVERT(eth0) fc00:1234:5678:1234::
>> Jan 14 17:38:44 dnsmasq-dhcp[2213]: 10713471 available DHCPv6 subnet: fc00:1234:5678:1234::1/64
>> Jan 14 17:38:44 dnsmasq-dhcp[2213]: 10713471 DHCPCONFIRM(eth0) 00:01:00:01:18:80:df:3e:48:aa:8e:b2:d5:2a
>> Jan 14 17:38:44 dnsmasq-dhcp[2213]: 9785557 available DHCPv6 subnet: fc00:1234:5678:1234::1/64
>> Jan 14 17:38:44 dnsmasq-dhcp[2213]: 9785557 DHCPSOLICIT(eth0) 00:01:00:01:18:80:df:3e:48:aa:8e:b2:d5:2a
>> Jan 14 17:38:44 dnsmasq-dhcp[2213]: 9785557 tags: eth0
>> Jan 14 17:38:44 dnsmasq-dhcp[2213]: 9785557 sent size: 14 option:  1 client-id  00:01:00:01:18:80:df:3e:48:aa:8e:b2:d5:2a
>> Jan 14 17:38:44 dnsmasq-dhcp[2213]: 9785557 sent size: 14 option:  2 server-id  00:01:00:01:18:82:53:de:06:3d:ba:00:00:2b
>> Jan 14 17:38:44 dnsmasq-dhcp[2213]: 9785557 sent size: 40 option:  3 ia-na  IAID=754974890 T1=0 T2=0
>> Jan 14 17:38:44 dnsmasq-dhcp[2213]: 9785557 nest size: 24 option: 13 status  2 No addresses available
>> Jan 14 17:38:44 dnsmasq-dhcp[2213]: 9785557 sent size: 16 option: 23 dns-server  fc00:1234:5678:1234:
>> Jan 14 17:38:45 dnsmasq-dhcp[2213]: 186834 available DHCPv6 subnet: fc00:1234:5678:1234::1/64
>> Jan 14 17:38:45 dnsmasq-dhcp[2213]: 186834 DHCPREQUEST(eth0) 00:01:00:01:18:80:df:3e:48:aa:8e:b2:d5:2a
>> Jan 14 17:38:45 dnsmasq-dhcp[2213]: 186834 tags: eth0
>> Jan 14 17:38:45 dnsmasq-dhcp[2213]: 186834 sent size: 14 option:  1 client-id  00:01:00:01:18:80:df:3e:48:aa:8e:b2:d5:2a
>> Jan 14 17:38:45 dnsmasq-dhcp[2213]: 186834 sent size: 14 option:  2 server-id  00:01:00:01:18:82:53:de:06:3d:ba:00:00:2b
>> Jan 14 17:38:45 dnsmasq-dhcp[2213]: 186834 sent size: 57 option:  3 ia-na  IAID=754974890 T1=0 T2=0
>> Jan 14 17:38:45 dnsmasq-dhcp[2213]: 186834 nest size: 13 option: 13 status  4 Not on link
>> Jan 14 17:38:45 dnsmasq-dhcp[2213]: 186834 nest size: 24 option: 13 status  2 No addresses available
>> Jan 14 17:38:45 dnsmasq-dhcp[2213]: 186834 sent size: 16 option: 23 dns-server  fc00:1234:5678:1234::1
>> Jan 14 17:38:45 dnsmasq-dhcp[2213]: 3317545 available DHCPv6 subnet: fc00:1234:5678:1234::1/64
>> Jan 14 17:38:45 dnsmasq-dhcp[2213]: 3317545 DHCPINFORMATION-REQUEST(eth0) 00:01:00:01:18:80:df:3e:48:aa:8e:b2:d5:2a
>> Jan 14 17:38:45 dnsmasq-dhcp[2213]: 3317545 tags: eth0
>> Jan 14 17:38:45 dnsmasq-dhcp[2213]: 3317545 sent size: 14 option:  1 client-id  00:01:00:01:18:80:df:3e:48:aa:8e:b2:d5:2a
>> Jan 14 17:38:45 dnsmasq-dhcp[2213]: 3317545 sent size: 14 option:  2 server-id  00:01:00:01:18:82:53:de:06:3d:ba:00:00:2b
>> Jan 14 17:38:45 dnsmasq-dhcp[2213]: 3317545 sent size: 16 option: 23 dns-server  fc00:1234:5678:1234::1
>> Jan 14 17:38:57 dnsmasq-dhcp[2213]: RTR-ADVERT(eth0) fc00:1234:5678:1234::
>> Jan 14 17:39:14 dnsmasq-dhcp[2213]: RTR-ADVERT(eth0) fc00:1234:5678:1234::
>>
>> I would be appreciate if you can help!
>>
>> Thank you!
>>
>> --Sheng
>>
>>
>> On Sat, Jan 12, 2013 at 2:32 AM, Simon Kelley <simon at thekelleys.org.uk> wrote:
>>>
>>> On 12/01/13 06:04, Sheng Yang wrote:
>>>>
>>>> Hi,
>>>>
>>>> I'd like to using DHCPv6, but I want to assign stateful address in order
>>>> to know which client get which address.
>>>>
>>>> Here is my config for dnsmasq(version 2.63, from debian testing):
>>>>
>>>> domain=xxxx
>>>> dhcp-range=fc00:1234:5678:1234::1,static
>>>> dhcp-host=00:01:00:01:18:80:df:3e:48:aa:8e:b2:d5:2a,fred,[fc00:1234:5678:1234::144],test,infinte
>>>> enable-ra
>>>> interface=eth0
>>>> listen-address=::1
>>>> log-dhcp
>>>> dhcp-option=option6:dns-server,[::]
>>>>
>>>> But when client's dhcp6c ask for address, dnsmasq keeps giving this
>>>> error message:
>>>>
>>>> Jan 12 05:54:33 dnsmasq-dhcp[5383]: no address range available for
>>>> DHCPv6 request via eth0
>>>>
>>>> Here is the ip of eth0:
>>>>
>>>> 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
>>>> state UP qlen 1000
>>>>      link/ether 06:3d:ba:00:00:2b brd ff:ff:ff:ff:ff:ff
>>>>      inet 10.223.161.41/26 <http://10.223.161.41/26> brd 10.223.161.63
>>>>
>>>> scope global eth0
>>>>      inet6 fc00:1234:5678:1234::1/128 scope global
>>>
>>> -----------------------------------^^^^^
>>>
>>>
>>>>         valid_lft forever preferred_lft forever
>>>>      inet6 fe80::43d:baff:fe00:2b/64 scope link
>>>>         valid_lft forever preferred_lft forever
>>>>
>>>
>>> Here's the problem: the prefix length should not be 128, almost certainly it should be 64.
>>>
>>> Cheers,
>>>
>>> Simon.
>>>

Another question: Could it possible to use dhcp-host with ipv6 and id:*?

like this:

dhcp-host=06:6f:aa:00:00:2d,id:\*,[fc00:1234:5678:1234::144],fred,infinte

I found seems it doesn't work, but I found these lines in dnsmasq.conf:

<quote>

A single dhcp-host may contain an IPv4 address or an IPv6 address, or
both. IPv6 addresses must be bracketed by square brackets thus:
--dhcp-host=laptop,[1234::56] Note that in IPv6 DHCP, the hardware
address is not normally available, so a client must be identified by
client-id (called client DUID in IPv6-land) or hostname.

The special option id:* means "ignore any client-id and use MAC
addresses only." This is useful when a client presents a client-id
sometimes but not others.
</quote>

Does this means dnsmasq is able to extract MAC from DUID, then
identify the client?

Thank you!

--Sheng



More information about the Dnsmasq-discuss mailing list