dhcpv6 does not appear to send *domain-name*

Bug #1716063 reported by Dimitri John Ledkov on 2017-09-08
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
dnsmasq (Ubuntu)
Undecided
Unassigned
isc-dhcp (Ubuntu)
Undecided
Unassigned
libvirt (Ubuntu)
Undecided
Unassigned

Bug Description

libvirt manager configured dhcpv6 network does not appear to send domain

I've configured dhcpv4 & v6 networking in the libvirt dialog (will provide the config dump)

In the virtual machine guest i have specified to obtain inet6 dhcp.

With debug enabled that appears to receive only the new ipc6 address, prefixlen and name servers, but not the domain setting, like it does for ipv4.

I'm expecting something like new_ipv6_domain_name, or just new_domain_name set for the ipv6 lease.

Not sure if it is a bug in libvirt or ics-dhcp

Dimitri John Ledkov (xnox) wrote :

xml network file has domain name set, and so does the generated dnsmasq config.

Hi Xnox,
so since you said the generated dnsmasq config has the domain name set.
Can we reproduce this without libvirt using a manual config of dnsmasq to start ruling out components?

Download full text (5.1 KiB)

I set up three Artful VMs:
1. one with a dnsmasq in it.
2. the other one to correctly remote request from it
2. the other one to correctly remote request from it (but via dhcpcd instead of isc-dhcp)
3. Added an extra separate virtual network without dhcp from the host where all those guests can reach each other

Guest:
    <interface type='network'>
      <source network='noextdhcp'/>
      <model type='virtio'/>
    </interface>

Network definition:
  <network>
    <!-- dumb network -->
    <name>noextdhcp</name>
    <bridge name='virbrnoextdhcp'/>
  </network>

This gave me an unconfigured and also otherwise bare "ens7" device in all three guests.
The main guest got a static ipv6 set up like:
 auto ens7
 iface ens7 inet6 static
 address 2607:f0d0:2001:000a:0000:0000:0000:0010
 netmask 64
 gateway 2607:f0d0:2001:000a:0000:0000:0000:0001
 iface ens7 inet static
 address 10.4.0.1
 netmask 255.0.0.0
 gateway 10.4.0.1

Which gives:
$ ip -6 address show ens7
3: ens7: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 2607:f0d0:2001:a::10/64 scope global
       valid_lft forever preferred_lft forever
    inet6 fe80::5054:ff:fef1:a702/64 scope link
       valid_lft forever preferred_lft forever

The dnsmasq config I tried is:
interface=ens7
no-resolv
# uplink dns by host libvirt
server=192.168.122.1
# basic setup
bogus-priv
enable-ra
dhcp-range=::100,::1ff,constructor:ens7
dhcp-authoritative
# define domain as test1
local=/test1/
domain=test1
dhcp-fqdn
# enable logging
log-queries
log-dhcp

# killing old lease
$ sudo dhcpcd5 --release ens7; sudo dhcpcd5 --exit ens7; sudo kill $(pidof dhcpcd5); sudo rm /var/lib/dhcpcd5/dhcpcd-ens7.lease6
# refresh
$ sudo dhcpcd5 -d ens7 --ipv6only

The same with dhclient now:
# release old lease
sudo dhclient -6 -r ens7
# get a new ipv6 one
sudo dhclient -6 -v ens7

Now what I see as difference between the two clients
# dhclient:
sent size: 14 option: 1 client-id 00:01:00:01:21:49:07:75:52:54:00:8e:c2:c6
sent size: 14 option: 2 server-id 00:01:00:01:21:48:f1:2e:52:54:00:04:69:2e
sent size: 40 option: 3 ia-na IAID=9355974 T1=1800 T2=3150
nest size: 24 option: 5 iaaddr 2607:f0d0:2001:a::172 PL=3600 VL=3600
sent size: 9 option: 13 status 0 success
sent size: 16 option: 23 dns-server 2607:f0d0:2001:a::10
# but dhcpcd5
sent size: 14 option: 1 client-id 00:01:00:01:21:48:ed:66:52:54:00:44:dd:64
sent size: 14 option: 2 server-id 00:01:00:01:21:48:f1:2e:52:54:00:04:69:2e
sent size: 0 option: 14 rapid-commit
sent size: 40 option: 3 ia-na IAID=359429 T1=1800 T2=3150
nest size: 24 option: 5 iaaddr 2607:f0d0:2001:a::134 PL=3600 VL=3600
sent size: 9 option: 13 status 0 success
sent size: 1 option: 7 preference 255
sent size: 16 option: 23 dns-server 2607:f0d0:2001:a::10
sent size: 32 option: 39 FQDN artful-dnsmasqv6-client.test1

Checking what the leases contain this is the same, the dhcpcd lease has the domain name as FQDN, but dhclient holds nothing it seems.
# dhclient
$ sudo cat /var/lib/dhcp/dhclient6.leases | grep test1
# dhcpcd
$ sudo dhcpcd5 --dumplease ens7 --ipv6only | grep test1
dhcp6_fqdn='artful-dnsmasqv6-client.test1'

But there is no real "Domain name" option ...

Read more...

Changed in libvirt (Ubuntu):
status: New → Invalid
summary: - libvirt manager configured dhcpv6 network does not appear to sned domain
+ dhcpv6 does not appear to send *domain-name*
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers