[Dnsmasq-discuss] Dnsmasq 2.68 not assign IPv6 address, error -- no addresses available

Simon Kelley simon at thekelleys.org.uk
Fri Feb 14 14:46:56 GMT 2014


On 14/02/14 08:46, Da Zhao Y Yu wrote:
> More investigate about this issue:
> 
> I found the dnsmasq dhcp client id is generated by client MAC address, 
> but the dhcp server id is not generated by the binding tap 
> interface(*tap1a82f5d5-e9*) MAC address. Base on the server id ( 
> 00:03:00:01:00:0a:f7:1d:70:5c), I found it is generated by another 
> network device, the MAC address(0a:f7:1d:70:5c) is matched with eth4 in 
> my env, and also eth4 device is in "inactive" status, I do not know the 
> root cause.
> 
> For IPv4, the client can got the IP address, just on IPv6 case, have 
> such issues.
> 
> 
> --------------------------------------------------
> 
> 
> 
> From: Da Zhao Y Yu/China/IBM at IBMCN
> To: Dnsmasq-discuss at lists.thekelleys.org.uk,
> Date: 2014/02/14 12:04
> Subject: Re: [Dnsmasq-discuss] Dnsmasq 2.68 not assign IPv6 address, 
> error -- no addresses available
> Sent by: dnsmasq-discuss-bounces at lists.thekelleys.org.uk
> ------------------------------------------------------------------------
> 
> 
> 
> After add '--log-dhcp' in dnsmasq, more log in /var/log/message, as below:
> 
> Feb 13 21:56:29 x3650m4-ir10-7915j2a-06nrrh8 dnsmasq-dhcp[3610]: 
> 16372489 available DHCPv6 subnet: 2011:2011:0:f101::/64
> Feb 13 21:56:29 x3650m4-ir10-7915j2a-06nrrh8 dnsmasq-dhcp[3610]: 
> 16372489 client MAC address: fa:16:3e:99:c6:54
> Feb 13 21:56:29 x3650m4-ir10-7915j2a-06nrrh8 dnsmasq-dhcp[3610]: 
> 16372489 DHCPSOLICIT(tap1a82f5d5-e9) 
> 00:01:00:01:1a:90:4c:42:fa:16:3e:99:c6:54
> Feb 13 21:56:29 x3650m4-ir10-7915j2a-06nrrh8 dnsmasq-dhcp[3610]: 
> 16372489 DHCPADVERTISE(tap1a82f5d5-e9) 
> 00:01:00:01:1a:90:4c:42:fa:16:3e:99:c6:54 no addresses available
> Feb 13 21:56:29 x3650m4-ir10-7915j2a-06nrrh8 dnsmasq-dhcp[3610]: 
> 16372489 tags: known, dhcpv6, tap1a82f5d5-e9
> Feb 13 21:56:29 x3650m4-ir10-7915j2a-06nrrh8 dnsmasq-dhcp[3610]: 
> 16372489 sent size: 14 option: 1 client-id 
> 00:01:00:01:1a:90:4c:42:fa:16:3e:99:c6:54
> Feb 13 21:56:29 x3650m4-ir10-7915j2a-06nrrh8 dnsmasq-dhcp[3610]: 
> 16372489 sent size: 10 option: 2 server-id 00:03:00:01:00:0a:f7:1d:70:5c
> Feb 13 21:56:29 x3650m4-ir10-7915j2a-06nrrh8 dnsmasq-dhcp[3610]: 
> 16372489 sent size: 12 option: 3 ia-na IAID=1050265172 T1=4294967295 
> T2=4294967295
> Feb 13 21:56:29 x3650m4-ir10-7915j2a-06nrrh8 dnsmasq-dhcp[3610]: 
> 16372489 sent size: 24 option: 13 status 2 no addresses available
> 
> Any help would be appricated, thanks!!!
> 
> 
> -------------------------------------------------
> Cloud Solutions & OpenStack Development
> China Systems & Technology Laboratory in Beijing
> Email: dzyu at cn.ibm.com
> Tel: (86)10-82450677
> --------------------------------------------------
> 
> 
> 
> From: Da Zhao Y Yu/China/IBM
> To: Dnsmasq-discuss at lists.thekelleys.org.uk,
> Date: 2014/02/13 18:23
> Subject: Dnsmasq 2.68 not assign IPv6 address, error -- no addresses 
> available
> ------------------------------------------------------------------------
> 
> 
> Hi all,
> 
> Today I used dnsmasq 2.68 as dhcpv6 server to assign IP address to vm 
> instance, and encountered the following issue:
> 
> 1, The dnsmasq process as below:
> 
> /usr/sbin/dnsmasq --no-hosts --no-resolv --strict-order 
> --bind-interfaces --interface=*tap1a82f5d5-e9* --except-interface=lo 
> --pid-file=/var/lib/neutron/dhcp/a5d2bd6f-4509-483d-97df-66582e86b661/pid --dhcp-hostsfile=/var/lib/neutron/dhcp/a5d2bd6f-4509-483d-97df-66582e86b661/host 
> --dhcp-optsfile=/var/lib/neutron/dhcp/a5d2bd6f-4509-483d-97df-66582e86b661/opts 
> --leasefile-ro --dhcp-range=set:tag0,2011:2011:0:f101::,static,86400s 
> --dhcp-lease-max=16777216
> 
> 2, In ubuntu vm instance, I use *dhclient -6* to send request, and in 
> controller node, use* tcpdump -i tap1a82f5d5-e9* to monitor the result, 
> as below:
> 
> tcpdump: WARNING: tap1a82f5d5-e9: no IPv4 address assigned
> tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
> listening on tap1a82f5d5-e9, link-type EN10MB (Ethernet), capture size 
> 65535 bytes
> 04:02:04.230789 IP6 fe80::f816:3eff:fe41:b297.dhcpv6-client > 
> ff02::1:2.dhcpv6-server: dhcp6 solicit
> 04:02:04.232872 IP6 fe80::d046:83ff:fec3:cd10 > ff02::1:ff41:b297: 
> ICMP6, neighbor solicitation, who has fe80::f816:3eff:fe41:b297, length 32
> 04:02:04.233682 IP6 fe80::f816:3eff:fe41:b297 > 
> fe80::d046:83ff:fec3:cd10: ICMP6, neighbor advertisement, tgt is 
> fe80::f816:3eff:fe41:b297, length 32
> 04:02:04.233702 IP6 fe80::d046:83ff:fec3:cd10 > 
> fe80::f816:3eff:fe41:b297: ICMP6, neighbor solicitation, who has 
> fe80::f816:3eff:fe41:b297, length 24
> 04:02:04.234124 IP6 fe80::f816:3eff:fe41:b297 > 
> fe80::d046:83ff:fec3:cd10: ICMP6, neighbor advertisement, tgt is 
> fe80::f816:3eff:fe41:b297, length 24
> 04:02:04.331231 IP6 fe80::d046:83ff:fec3:cd10.dhcpv6-server > 
> fe80::f816:3eff:fe41:b297.dhcpv6-client: dhcp6 advertise
> 04:02:05.301072 IP6 fe80::f816:3eff:fe41:b297.dhcpv6-client > 
> ff02::1:2.dhcpv6-server: dhcp6 solicit
> 04:02:05.301173 IP6 fe80::d046:83ff:fec3:cd10.dhcpv6-server > 
> fe80::f816:3eff:fe41:b297.dhcpv6-client: dhcp6 advertise
> 
> It seems the network request have been sent from vm instance, and dhcpv6 
> server also got the message, but the vm instance still can not get the 
> special IPv6 address, also from /var/log/message, I saw the dsnmasq 
> error message:
> 
> dnsmasq-dhcp[24313]: read 
> /var/lib/neutron/dhcp/a5d2bd6f-4509-483d-97df-66582e86b661/host
> dnsmasq-dhcp[24313]: read 
> /var/lib/neutron/dhcp/a5d2bd6f-4509-483d-97df-66582e86b661/opts
> dnsmasq-dhcp[24313]: DHCPSOLICIT(tap1a82f5d5-e9) 
> 00:01:00:01:1a:8f:54:b6:fa:16:3e:41:b2:97
> dnsmasq-dhcp[24313]: DHCPADVERTISE(tap1a82f5d5-e9) 
> 00:01:00:01:1a:8f:54:b6:fa:16:3e:41:b2:97 no addresses available
> dnsmasq-dhcp[24313]: DHCPSOLICIT(tap1a82f5d5-e9) 
> 00:01:00:01:1a:8f:54:b6:fa:16:3e:41:b2:97
> dnsmasq-dhcp[24313]: DHCPADVERTISE(tap1a82f5d5-e9) 
> 00:01:00:01:1a:8f:54:b6:fa:16:3e:41:b2:97 no addresses available
> 
> I do not know how to fix this issue, so can you give me some help about 
> it, thanks!
> 
> 


Your configuration has the dhcp-range configured as "static", which
tells dnsmasq to only give addresses to hosts which are configured with
a static address. My guess is the "no addresses available" error is
because dnsmasq is not recognising the client.

Set --log-dhcp and see if there's a tag called "known" in the list of
tags, and let us know how you're configuring host addresses in dnsmasq
to do static address allocation.

>I found the dnsmasq dhcp client id is generated by client MAC address,
>but the dhcp server id is not generated by the binding tap
>interface(tap1a82f5d5-e9) MAC address. Base on the server id (
>00:03:00:01:00:0a:f7:1d:70:5c), I found it is generated by another
>network device, the MAC address(0a:f7:1d:70:5c) is matched with eth4
>in my env, and also eth4 device is in "inactive" status, I do not know
>the root cause.

That's fine. The MAC address of any interface is allowed to be used,
it's just to make sure the server-id is unique. Same for client-ids.

Cheers,

Simon.



More information about the Dnsmasq-discuss mailing list