DHCP does not recognise mac address of interface

They’re three different cars. So, if you’re using Fedora, you use the manual for Fedora. If the instructions there are incorrect, we’ll speak to the “manufacturer” (continuing the idiom) which would be the maintainer and the developers and see how they can be corrected/improved.

Hi Fransisco

You are correct, however, also not correct. Due the fact that there is a lot of out of date info about fedora around, even hosted by fedora. For example, adding entries to config files, whereupon opening that file there is a header explicitly stating that the file is no longer used.

Which means resorting to seeking better documentation, and, afterall, we would hope RHEL is the daddy of what we are doing here!

Give me a bit and I will post the relevant files and error messages in case anyone can shed some light.

Here we go:

option domain-name “server.home”;

host server {
hardware ethernet XX:XX:XX:XX:XX:XX;
fixed-address 192.168.15.1;
}

subnet 192.168.15.0 netmask 255.255.255.0 {

authoritative;

range 192.168.15.5 192.168.15.100;

default-lease-time 86400;
max-lease-time 86400;

option subnet-mask 255.255.255.0;
option broadcast-address 192.168.15.255;
#option routers 192.168.15.1;
}

Where XX.XX.XX… is the correct mac address of one of the NICs, enp8s0f1, currently connected to main network, but, previously connected to a network switch, ready to test.

Produces this result:

Internet Systems Consortium DHCP Server 4.3.6
Copyright 2004-2017 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/
ldap_gssapi_principal is not set,GSSAPI Authentication for LDAP will not be used
Not searching LDAP since ldap-server, ldap-port and ldap-base-dn were not specified in the config file
Config file: /etc/dhcp/dhcpd.conf
Database file: /var/lib/dhcpd/dhcpd.leases
PID file: /var/run/dhcpd.pid
Source compiled to use binary-leases
Wrote 0 deleted host decls to leases file.
Wrote 0 new dynamic host decls to leases file.
Wrote 0 leases to leases file.

No subnet declaration for wls6 (192.168.0.99).
** Ignoring requests on wls6. If this is not what
you want, please write a subnet declaration
in your dhcpd.conf file for the network segment
to which interface wls6 is attached. **

No subnet declaration for enp8s0f1 (192.168.0.100).
**** Ignoring requests on enp8s0f1. If this is not what**
** you want, please write a subnet declaration**
** in your dhcpd.conf file for the network segment**
** to which interface enp8s0f1 is attached. ****

No subnet declaration for enp8s0f0 (192.168.0.94).
** Ignoring requests on enp8s0f0. If this is not what
you want, please write a subnet declaration
in your dhcpd.conf file for the network segment
to which interface enp8s0f0 is attached. **

Not configured to listen on any interfaces!

This version of ISC DHCP is based on the release available
on ftp.isc.org. Features have been added and other changes
have been made to the base software release in order to make
it work better with this distribution.

Please report issues with this software via:
https://bugzilla.redhat.com/

exiting.

Please provide the result of the following command.
ip a

In addition, what are you trying to do? It could be obvious, but I did not understood (English is not my native language).
Are you configuring a DHCP serever?

Some Google searches mentioned adding the interface to the file /etc/default/isc-dhcp-server. Also, while I’m assuming that your new lines and lack of indenting within the block isn’t an issue, you could try changing it.

Is “option domain-name “server.home”;” allowed to be outside of a block?

(While writing the above, I noticed that your quotation marks don’t look like mine. Are they perhaps the wrong ones? ASCII vs Unicode, or the other way around)

Hi Fansisco

About conflicting information. Fedora Documentation, turns up on web search:

https://docs.fedoraproject.org/en-US/Fedora/12/html/Deployment_Guide/sect-Configuring_a_Multihomed_DHCP_Server.html

mentions: /etc/sysconfig/dhcpd

Which does not exist

1 Like

Hi Benjamind

I can try indenting, but it doesn’t seem like it’s likely to be the issue, otherwise more problems would appear other than the server not relating the mac address to the interface.

The quote marks may look different because I copied from SSH terminal, to mousepad, and then to here.

Again, it seems like the script is not in error itself, otherwise there would be a stream of errors. For example, a missing ; or } will cause a failure, and the error is correctly reported.

Since, looking at the errors, it seems that you are trying to configure a DHCP server for a subnet you are not connected to.

In addition, from the man page

The host statement

 host hostname {
  [ parameters ]
  [ declarations ]

}

The host declaration provides a way for the DHCP server to identify a DHCP or BOOTP client. This allows the server to provide configuration information including fixed addresses

Usually such declaration goes inside the subnet statement.
As far as I can understand (but I could be wrong), you are thinking that

host server {
   hardware ethernet XX:XX:XX:XX:XX:XX;
   fixed-address 192.168.15.1;
}

will assign the IP address 192.168.15.1 to the enp8s0f1 interface of the host acting as DHCP server. This is a wrong assumption. The DHCP server will assign IPs to the clients in the same subnet, and not to itself.

Hi alciregi

Thanks, this is my first time experimenting with DHCP, so I am trying to work out how it works!

Now I reread it according to your explanation it makes a different kind of sense. This is to set a fixed address of a client.

So, how to do what I want?

The mention of what seems to be the logical course of action in Fedora docs relates to a nonexistent directory and file, and the entry is regarding Fedora 14!

Well… :face_with_monocle: what are you trying to achieve?

That’s unfortunate. Instructions for older releases will almost never work for a current release, especially if the instructions are from years ago. (Even if we set aside the relatively fast pace of Fedora, 5 years is a long time for software to change in).

Given that this is available from search engines, I’ve filed a ticket with docs now to either:

  • remove outdated docs
  • or to put a big banner on each page making it very clear that this is outdated documentation

You can follow the ticket and provide your views here:
https://pagure.io/fedora-docs/docs-fp-o/issue/116

Hi Fransisco

Thanks! :slight_smile:

There are many more instances I have experienced in the past.

For someone like me, who has some experience, but has to research and learn about something new to them, it can become a grim and frustrating experience.

It seems some ‘distros’ (Arch, FreeBSD) are more thorough and precise about documentation. I guess here there could be a reason to, lets say, not allow documentation to become so useful that paid for support is less of a requirement.

Still, I like Fedora and have used it for some years, so I would prefer to stick around.

1 Like

@valve order and nesting is important in dhcpd.conf.
Check the dhcpd.conf manpage. It’s a long read but it has all the info.
man dhcpd.conf

Example dhcpd.conf (untested):

option domain-name "server.home";

# timers
default-lease-time 32200;
max-lease-time 86400;

authoritative;

subnet 192.168.15.0 netmask 255.255.255.0 {
  option routers              192.168.15.1;
  option subnet-mask          255.255.255.0;
  option broadcast-address    192.168.15.255;
  option domain-name          "server.home";
  option domain-name-servers  yourdnsserver.server.home;
  # option time-offset        3600;   # adjust for your situation
  option ntp-servers          yourntpserver.server.home;

  allow unknown-clients;

  # .5 to .100 are used for dynamic clients
  range 192.168.15.5 192.168.15.100;

  # while .1 to .4 can be used for static clients
  host server {
    hardware ethernet XX:XX:XX:XX:XX:XX;
    fixed-address 192.168.15.1;
  }
} # end of subnet declaration
1 Like

Hi alciregi

Let’s say this is as much about me experimenting and learning as it is about achieving an end result (which I have not firmly decided about).

So, I will describe what I would like to achieve today is the elimination of this specific problem: No subnet declaration for enp8s0f1 (192.168.0.100).

If I could find an explicit instruction as to how to do it, I would. I can easily find such for Ubuntu, but not Fedora, and, a deeper search starts to show up conflicting and wrong information about nonexistent directories and files, as I described.

Hi Patrickl

I have two wired NICs and one Wifi interface in that machine, and my problem is about using one of them, please take a look at the error report and see if it makes sense.

I see in Ubuntu there is a way off declaring a NIC, I cannot find that information in Fedora, or it is explicitly wrong/outdated.

Excuse me. Your goal is to set up a DHCP server on one of the two interfaces?

Hi alciregi

Yes, that’s correct, sorry to be vague, I’m doing 3 things at once.

Where is the Fedora documentation about selecting a NIC?

This is from Ubuntu:

Select Interface card

nano -w /etc/default/isc-dhcp-server

INTERFACES=“wlan0 eth0”

I would like to see something like that

It’s mostly just a question of having the resources to keep all this up to date and make the necessary changes. Please feel free to file tickets—at least that way, the community is aware of what needs to be done.

Edit: only an FAS is required to open tickets (and contribute anywhere in the Fedora community) which you already have now.

Hi FransiscoD

I guess I have been to lazy before, or too involved in the immediate problem. I am trying to change that now.

Tonight I will go through the systemd issue on Bugzilla.

1 Like