mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-27 05:42:21 +00:00
network: add domain to unqualified names defined with <host>
If a domain name is defined for a network, add the --expand-hosts option to the dnsmasq commandline. This results in the domain being added to any hostname that is defined in a dns <host> element and contains no '.' characters (i.e. it is an "unqualified" hostname). Since PTR records are automatically created for any name defined in <host>, the result of a PTR request will change from the unqualified name to the qualified name. This also has the same effect on any hostnames that dnsmasq reads from the host's /etc/hosts file. (In the case of guest hostnames that were learned by dnsmasq via DHCP requests, they were already getting the domain name added on, even without --expand-hosts).
This commit is contained in:
parent
6818cf8690
commit
25171f607c
@ -617,6 +617,10 @@ networkBuildDnsmasqArgv(virNetworkObjPtr network,
|
|||||||
if (ipdef->nranges || ipdef->nhosts)
|
if (ipdef->nranges || ipdef->nhosts)
|
||||||
virCommandAddArg(cmd, "--dhcp-no-override");
|
virCommandAddArg(cmd, "--dhcp-no-override");
|
||||||
|
|
||||||
|
/* add domain to any non-qualified hostnames in /etc/hosts or addn-hosts */
|
||||||
|
if (network->def->domain)
|
||||||
|
virCommandAddArg(cmd, "--expand-hosts");
|
||||||
|
|
||||||
if ((dctx = networkSaveDnsmasqHostsfile(ipdef, network->def->dns, network->def->name, false))) {
|
if ((dctx = networkSaveDnsmasqHostsfile(ipdef, network->def->dns, network->def->name, false))) {
|
||||||
if (dctx->hostsfile->nhosts)
|
if (dctx->hostsfile->nhosts)
|
||||||
virCommandAddArgPair(cmd, "--dhcp-hostsfile",
|
virCommandAddArgPair(cmd, "--dhcp-hostsfile",
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
/usr/sbin/dnsmasq --strict-order --bind-interfaces --conf-file= \
|
/usr/sbin/dnsmasq --strict-order --bind-interfaces --domain example.com \
|
||||||
--except-interface lo --listen-address 192.168.122.1 \
|
--conf-file= --except-interface lo --listen-address 192.168.122.1 \
|
||||||
--addn-hosts=/var/lib/libvirt/dnsmasq/default.addnhosts\
|
--expand-hosts --addn-hosts=/var/lib/libvirt/dnsmasq/default.addnhosts\
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
<uuid>81ff0d90-c91e-6742-64da-4a736edb9a9c</uuid>
|
<uuid>81ff0d90-c91e-6742-64da-4a736edb9a9c</uuid>
|
||||||
<forward dev='eth0' mode='nat'/>
|
<forward dev='eth0' mode='nat'/>
|
||||||
<bridge name='virbr0' stp='on' delay='0' />
|
<bridge name='virbr0' stp='on' delay='0' />
|
||||||
|
<domain name="example.com"/>
|
||||||
<dns>
|
<dns>
|
||||||
<host ip='192.168.122.1'>
|
<host ip='192.168.122.1'>
|
||||||
<hostname>host</hostname>
|
<hostname>host</hostname>
|
||||||
|
@ -2,5 +2,5 @@
|
|||||||
--conf-file= --except-interface lo --listen-address 192.168.122.1 \
|
--conf-file= --except-interface lo --listen-address 192.168.122.1 \
|
||||||
--dhcp-range 192.168.122.2,192.168.122.254 \
|
--dhcp-range 192.168.122.2,192.168.122.254 \
|
||||||
--dhcp-leasefile=/var/lib/libvirt/dnsmasq/netboot.leases \
|
--dhcp-leasefile=/var/lib/libvirt/dnsmasq/netboot.leases \
|
||||||
--dhcp-lease-max=253 --dhcp-no-override --enable-tftp \
|
--dhcp-lease-max=253 --dhcp-no-override --expand-hosts --enable-tftp \
|
||||||
--tftp-root /var/lib/tftproot --dhcp-boot pxeboot.img\
|
--tftp-root /var/lib/tftproot --dhcp-boot pxeboot.img\
|
||||||
|
@ -2,4 +2,5 @@
|
|||||||
--conf-file= --except-interface lo --listen-address 192.168.122.1 \
|
--conf-file= --except-interface lo --listen-address 192.168.122.1 \
|
||||||
--dhcp-range 192.168.122.2,192.168.122.254 \
|
--dhcp-range 192.168.122.2,192.168.122.254 \
|
||||||
--dhcp-leasefile=/var/lib/libvirt/dnsmasq/netboot.leases \
|
--dhcp-leasefile=/var/lib/libvirt/dnsmasq/netboot.leases \
|
||||||
--dhcp-lease-max=253 --dhcp-no-override --dhcp-boot pxeboot.img,,10.20.30.40\
|
--dhcp-lease-max=253 --dhcp-no-override --expand-hosts \
|
||||||
|
--dhcp-boot pxeboot.img,,10.20.30.40\
|
||||||
|
Loading…
x
Reference in New Issue
Block a user