1

I have a CentOS VM client, which should be getting a Reserved IP from my Rasbian dnsmasq server, however the client will only pull the same dynamic lease over and over again, instead of the IP I've configured for it.

The full setup is as follows:

  • CentOS 6.8 KVM Host (Dell R710)
  • CentOS 6.8 VM
  • Raspberry Pi running latest Pixel(?) version

The Pi hosts the dnsmasq server for three subnets across my LAN, 192.168.0.0 (Home), 192.168.1.0 (Lab), 192.168.2.0 (Wifi) Everything works fine, no issues with DHCP or DNS that I've noticed.

The CentOS KVM Host has a reserved DHCP address which works fine. A new CentOS VM (minimal image,Plex) has a reserved DHCP address which it REFUSES to take.

I have tried reserving the IP with:

dhcp-host=MACADDRESS,IPADDRESS

or

dhcp-host=MACADDRESS,IPADDRESS,HOSTNAME.DOM.AIN

and also by specifying a dhcp-hostsfile and putting the same information in there.

I've erased the offending dynamic lease from the dnsmasq server's /var/lib/misc/dnsmasq.leases

I've erased the VM client's /etc/dhcp/dhclient-eth0.conf and /var/lib/dhclient/dhclient.leases and dhclient-eth0.leases

Every step of the way I've run

dhclient -r eth0;ifdown eth0;ifup eth0

or some similar combination

Oh and I've double and triple checked that no outstanding leases have the same IP address, no other devices have stolen that IP, and the original machine with that IP is a dead Windows VM

Here is a sample of log file entries from the dnsmasq server when dhclient -r;dhclient is run

Feb  7 16:42:55 dnsmasq-dhcp[660]: 2347579967 available DHCP range: 192.168.1.100 -- 192.168.1.200
Feb  7 16:42:55 dnsmasq-dhcp[660]: 2347579967 DHCPRELEASE(eth0.2) 192.168.1.192 52:54:00:1c:26:66
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 available DHCP range: 192.168.1.100 -- 192.168.1.200
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 DHCPDISCOVER(eth0.2) 192.168.1.192 52:54:00:1c:26:66
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 tags: tag2, eth0.2
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 DHCPOFFER(eth0.2) 192.168.1.192 52:54:00:1c:26:66
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 requested options: 1:netmask, 28:broadcast, 2:time-offset, 121:classless-static-route,
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 requested options: 15:domain-name, 6:dns-server, 12:hostname,
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 requested options: 40:nis-domain, 41:nis-server, 42:ntp-server,
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 requested options: 26:mtu, 119:domain-search, 3:router
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 next server: 192.168.1.250
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 sent size:  1 option: 53 message-type  2
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 sent size:  4 option: 54 server-identifier  192.168.1.250
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 sent size:  4 option: 51 lease-time  7h
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 sent size:  4 option: 58 T1  3h30m
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 sent size:  4 option: 59 T2  6h7m30s
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 sent size:  4 option:  1 netmask  255.255.255.0
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 sent size:  4 option: 28 broadcast  192.168.1.255
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 sent size: 18 option: 15 domain-name  ############.com
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 sent size: 12 option:  6 dns-server  192.168.1.250, 8.8.8.8, 192.168.1.1
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 sent size:  4 option:  3 router  192.168.1.1
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 available DHCP range: 192.168.1.100 -- 192.168.1.200
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 DHCPREQUEST(eth0.2) 192.168.1.192 52:54:00:1c:26:66
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 tags: tag2, eth0.2
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 DHCPACK(eth0.2) 192.168.1.192 52:54:00:1c:26:66
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 requested options: 1:netmask, 28:broadcast, 2:time-offset, 121:classless-static-route,
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 requested options: 15:domain-name, 6:dns-server, 12:hostname,
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 requested options: 40:nis-domain, 41:nis-server, 42:ntp-server,
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 requested options: 26:mtu, 119:domain-search, 3:router
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 next server: 192.168.1.250
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 sent size:  1 option: 53 message-type  5
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 sent size:  4 option: 54 server-identifier  192.168.1.250
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 sent size:  4 option: 51 lease-time  7h
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 sent size:  4 option: 58 T1  3h30m
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 sent size:  4 option: 59 T2  6h7m30s
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 sent size:  4 option:  1 netmask  255.255.255.0
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 sent size:  4 option: 28 broadcast  192.168.1.255
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 sent size: 18 option: 15 domain-name  #############.com
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 sent size: 12 option:  6 dns-server  192.168.1.250, 8.8.8.8, 192.168.1.1
Feb  7 16:42:55 dnsmasq-dhcp[660]: 171708215 sent size:  4 option:  3 router  192.168.1.1

(The correct IP address to receive would be 192.168.2.9)

And my dnsmasq.conf file:

dhcp-authoritative
log-queries
log-dhcp
log-facility = /var/log/dns-log.log
# Never forward plain names (without a dot or domain part)
domain-needed

# Never forward addresses in the non-routed address spaces.
bogus-priv

# If you don't want dnsmasq to read /etc/resolv.conf or any other
# file, getting its servers from this file instead (see below), then
# uncomment this.
#no-resolv

# If you don't want dnsmasq to poll /etc/resolv.conf or other resolv
# files for changes and re-read them then uncomment this.
#no-poll

# Add local-only domains here, queries in these domains are answered
# from /etc/hosts or DHCP only.
local=/############.com/
#server=/###########.com/192.168.0.250

###### External DNS
server=ISP#DNS#SERVER
server=8.8.8.8

#################################interfaces to bind, vlan style
interface=eth0.1
interface=eth0.2
interface=eth0.3

# If you don't want dnsmasq to read /etc/hosts, uncomment the
# following line.
#no-hosts
# or if you want it to read another file, as well as /etc/hosts, use
# this.
#addn-hosts=/etc/dnsmasq-static.conf

# Set this (and domain: see below) if you want to have a domain
# automatically added to simple names in a hosts-file.
expand-hosts

# Set the domain for dnsmasq. this is optional, but if it is set, it
# does the following things.
# 1) Allows DHCP hosts to have fully qualified domain names, as long
#     as the domain part matches this setting.
# 2) Sets the "domain" DHCP option thereby potentially setting the
#    domain of all systems configured by DHCP
# 3) Provides the domain part for "expand-hosts"
domain=##########.com


# Uncomment this to enable the integrated DHCP server, you need
# to supply the range of addresses available for lease and optionally
# a lease time. If you have more than one network, you will need to
# repeat this for each network on which you want to supply DHCP
# service.

    ############################################################################################################
dhcp-range=set:tag1,192.168.0.100,192.168.0.200,255.255.255.0,7h
dhcp-range=set:tag2,192.168.1.100,192.168.1.200,255.255.255.0,7h
dhcp-range=set:tag3,192.168.2.100,192.168.2.200,255.255.255.0,7h

#######################################
# Always set the name of the host with hardware address
# 11:22:33:44:55:66 to be "fred"

#FIRST TRY SETTING RESERVATION, THEN MOVED TO STATIC FILE
#dhcp-host=52:54:00:1C:26:66,192.168.2.9
dhcp-hostsfile=/etc/dns-static.conf


# If this line is uncommented, dnsmasq will read /etc/ethers and act
# on the ethernet-address/IP pairs found there just as if they had
# been given as --dhcp-host options. Useful if you keep
# MAC-address/host mappings there for other purposes.
#read-ethers

####################################################################################DEFAULT ROUTES
dhcp-option=tag:tag1,option:router,192.168.0.1
dhcp-option=tag:tag2,option:router,192.168.1.1
dhcp-option=tag:tag3,option:router,192.168.2.1

dhcp-option=tag:tag1,option:dns-server,192.168.0.250,8.8.8.8,192.168.0.1
dhcp-option=tag:tag2,option:dns-server,192.168.1.250,8.8.8.8,192.168.1.1
dhcp-option=tag:tag3,option:dns-server,192.168.2.250,8.8.8.8,192.168.2.1

migrated from serverfault.com Feb 8 '17 at 1:36

This question came from our site for system and network administrators.

0

It turned out to be a VLAN error on my part.

I ended up creating a second bridge interface on the second ethernet port, tagged it onto the 192.168.2.0 VLAN, changed the VM to use the new bridge, and poof

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.