Problem obtaining IP address from DHCP server on clean server install

Ubuntu Version: Ubuntu 24.04.2 LTS server install
Computer: Dell Optiplex 7050 Micro, Intel(R) Core™ i5-7500T CPU @ 2.70GHz, 32GB DDR4 RAM

Desktop Environment (if applicable): None

Problem Description: Ethernet interface can’t get IP address from DHCP server, where MAC filtering is enabled, even though correct MAC address is added to the filter. This also happens without MAC address filtering. Ethernet controller is Intel Corporation Ethernet Connection (5) I219-LM. System is clean install, no updates since I wasn’t able to update it because I have no internet connection.

Relevant System Information: Based on this topic ran the diagnostic script, output of this script is below, many of the command were not successful as some of them are not included in minimal install of Ubuntu server:


########## wireless info START ##########

Report from: 27 May 2025 19:09 UTC +0000

Booted last: 27 May 2025 00:00 UTC +0000

Script from: 27 Aug 2024 10:55 UTC +0000

##### release ###########################

Distributor ID:	Ubuntu
Description:	Ubuntu 24.04.2 LTS
Release:	24.04
Codename:	noble

##### kernel ############################

Linux 6.8.0-60-generic #63-Ubuntu SMP PREEMPT_DYNAMIC Tue Apr 15 19:04:15 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

Parameters: ro

##### desktop ###########################

sed: can't read /root/.dmrc: No such file or directory

Could not be determined.

##### lspci #############################

00:1f.6 Ethernet controller [0200]: Intel Corporation Ethernet Connection (5) I219-LM [8086:15e3]
	Subsystem: Dell Ethernet Connection (5) I219-LM [1028:07a1]
	Kernel driver in use: e1000e
	Kernel modules: e1000e

##### lsusb #############################

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID abcd:1234 LogiLink UDisk flash drive
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

##### PCMCIA card info ##################

'pccardctl' is not installed (package "pcmciautils").

##### rfkill ############################

./diagnostic.bash: line 192: rfkill: command not found

##### secure boot #######################

SecureBoot disabled

##### lsmod #############################

dell_wmi               28672  0
dell_smbios            32768  1 dell_wmi
ledtrig_audio          12288  2 snd_ctl_led,dell_wmi
dell_wmi_aio           12288  0
intel_wmi_thunderbolt    16384  0
sparse_keymap          12288  2 dell_wmi,dell_wmi_aio
dell_wmi_descriptor    16384  2 dell_wmi,dell_smbios
wmi_bmof               12288  0
cfg80211             1355776  0
video                  77824  2 dell_wmi,i915
wmi                    28672  7 video,intel_wmi_thunderbolt,dell_wmi,dell_wmi_aio,wmi_bmof,dell_smbios,dell_wmi_descriptor

##### dkms #############################

./diagnostic.bash: line 206: dkms: command not found

##### interfaces ########################

##### ifconfig ##########################

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback <MAC address> brd <MAC address>
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host noprefixroute 
       valid_lft forever preferred_lft forever
2: enp0s31f6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether <MAC 'enp0s31f6' [IF1]> brd <MAC address>
    inet 10.45.3.65/16 metric 100 brd 10.45.255.255 scope global dynamic enp0s31f6
       valid_lft 138sec preferred_lft 138sec
    inet6 fe80::<IP6 'enp0s31f6' [IF1]>/64 scope link 
       valid_lft forever preferred_lft forever

##### iwconfig ##########################

./diagnostic.bash: line 233: iwconfig: command not found

##### route #############################

default via 10.45.255.254 dev enp0s31f6 proto dhcp src 10.45.3.65 metric 100 
10.45.0.0/16 dev enp0s31f6 proto kernel scope link src 10.45.3.65 metric 100 
10.45.255.254 dev enp0s31f6 proto dhcp scope link src 10.45.3.65 metric 100 
158.193.83.32 via 10.45.255.254 dev enp0s31f6 proto dhcp src 10.45.3.65 metric 100 

##### resolv.conf #######################

[777 root '/etc/resolv.conf' -> '../run/systemd/resolve/stub-resolv.conf']

nameserver 127.0.0.53
options edns0 trust-ad
search usr.iklub.sk

##### network managers ##################

Installed:

	None found.

Running:

	None found.

##### NetworkManager info ###############

NetworkManager is not installed (package "network-manager").

##### NetworkManager.state ##############

cat: /var/lib/NetworkManager/NetworkManager.state: No such file or directory

##### NetworkManager config #############

##### NetworkManager profiles ###########

No NetworkManager profiles found.

##### Netplan config ####################

[/etc/netplan/00-installer-config.yaml]
network:
  ethernets:
    enp0s31f6:
      dhcp4: true
  version: 2

##### iw reg get ########################

'iw' is not installed (package "iw").

##### iwlist channels ###################

'iwlist' is not installed (package "wireless-tools").

##### iwlist scan #######################

'iwlist' is not installed (package "wireless-tools").

##### module infos ######################

[cfg80211]
filename:       /lib/modules/6.8.0-60-generic/kernel/net/wireless/cfg80211.ko.zst
description:    wireless configuration support
license:        GPL
depends:        
retpoline:      Y
intree:         Y
name:           cfg80211
vermagic:       6.8.0-60-generic SMP preempt mod_unload modversions 
parm:           bss_entries_limit:limit to number of scan BSS entries (per wiphy, default 1000) (int)
parm:           ieee80211_regdom:IEEE 802.11 regulatory domain code (charp)
parm:           cfg80211_disable_40mhz_24ghz:Disable 40MHz support in the 2.4GHz band (bool)

##### module parameters #################

[cfg80211]
bss_entries_limit: 1000
cfg80211_disable_40mhz_24ghz: N
ieee80211_regdom: 00

##### /etc/modules ######################

##### modprobe options ##################

[/etc/modprobe.d/amd64-microcode-blacklist.conf]
blacklist microcode

[/etc/modprobe.d/blacklist-ath_pci.conf]
blacklist ath_pci

[/etc/modprobe.d/blacklist-rare-network.conf]
alias net-pf-3 off
alias net-pf-6 off
alias net-pf-9 off
alias net-pf-11 off
alias net-pf-12 off
alias net-pf-19 off
alias net-pf-21 off
alias net-pf-36 off

[/etc/modprobe.d/blacklist.conf]
blacklist evbug
blacklist usbmouse
blacklist usbkbd
blacklist eepro100
blacklist de4x5
blacklist eth1394
blacklist snd_intel8x0m
blacklist snd_aw2
blacklist prism54
blacklist bcm43xx
blacklist garmin_gps
blacklist asus_acpi
blacklist snd_pcsp
blacklist pcspkr
blacklist amd76x_edac

[/etc/modprobe.d/intel-microcode-blacklist.conf]
blacklist microcode

[/etc/modprobe.d/iwlwifi.conf]
remove iwlwifi \
(/sbin/lsmod | grep -o -e ^iwlmvm -e ^iwldvm -e ^iwlwifi | xargs /sbin/rmmod) \
&& /sbin/modprobe -r mac80211

[/etc/modprobe.d/mdadm.conf]
options md_mod start_ro=1

##### rc.local ##########################

grep: /etc/rc.local: No such file or directory

##### pm-utils ##########################

##### udev rules ########################

##### dmesg #############################

[    4.032502] i915 0000:00:02.0: [drm] Finished loading DMC firmware i915/kbl_dmc_ver1_04.bin (v1.4)
[    6.073641] e1000e 0000:00:1f.6 enp0s31f6: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: Rx/Tx

########## wireless info END ############


Screenshots or Error Messages:
Log output after running sudo systemctl status systemd-networkd:

May 27 19:06:59 freya systemd-networkd[362]: lo: Link UP
May 27 19:06:59 freya systemd-networkd[362]: lo: Gained carrier
May 27 19:06:59 freya systemd-networkd[362]: Enumeration completed
May 27 19:06:59 freya systemd-networkd[362]: enp0s31f6: Configuring with /run/systemd/network/10-netplan-enp0s31f6.network.
May 27 19:06:59 freya systemd-networkd[362]: enp0s31f6: Link UP
May 27 19:07:02 freya systemd-networkd[362]: enp0s31f6: Gained carrier
May 27 19:07:03 freya systemd-networkd[362]: enp0s31f6: DHCPv4 address 10.45.3.65/16, gateway 10.45.255.254 acquired from 158.193.86.26
May 27 19:07:03 freya systemd-networkd[362]: enp0s31f6: Gained IPv6LL

Also after running sudo netplan ip leases enp0s31f6 I get following output, with correct addresses apart from the one I obtained from DHCP, which should be 158.193.83.9:

ADDRESS=10.45.3.65
NETMASK=255.255.0.0
ROUTER=10.45.255.254
SERVER_ADDRESS=158.193.86.26
NEXT_SERVER=158.193.86.31
T1=2min 30s
T2=4min 22s
LIFETIME=5min
DNS=158.193.83.32
DOMAINNAME=usr.iklub.sk

What I’ve Tried: Already tried multiple netplan configurations, but none of them worked, I also use another computer with exact hardware specs and with mentioned netplan config I had zero issues connecting via ethernet and obtaining correct IP address.

From your output…

If 158.193.86.26 is your router, then your router settings are suspect.

If 158.193.86.26 is some other machine on your network, then that other machine is running a second dhcp server (even something small like a dnsmasq instance), and your Ubuntu system found the wrong one first.

try:

ethtool -K enp0s31f6 tso off gso off

It could be firmware or bios.

even though the Linux routeros I was playing with (IPFire) didn’t have a decent driver for these chips until Linux Main Kernel 6.11

Unfortunately I can’t do much about router configuration since it is not my network. I already wrote to its administrator and they reset my IP allocation tied to MAC address of this computer, but it didn’t help. I also doubt that there would be second DHCP server as there might be some collisions otherwise.

I tried the command you mentioned, then did sudo ip link set dev enp0s31f6 down && ip link set dev enp0f31f6 up and restarted networkd, but made no difference. BIOS is upgraded to the latest version available for this computer.
I also compared eeprom dumps with already working computer with the same NIC, they were the same, but there are few bits changed on offsets 0x0000 and 0x0070. Not sure if they contain chip ID or that could be cause of entire problem. I guess my best bet will be to take the computer home and try it on a network that does not use MAC filtering, just plain DHCP server. But thanks for your suggestion, if you have any more ideas, just let me know.

so the checksum is different, therefore a different firmware. But this chip was not designed for server duty only client or consumer duty what Intel calls it. They are also not supposed to be compatible for SD-WAN duties either. Which I wish Intel never produced different level of nic chips because retailers don’t go into details.

What I would try to do is find what firmware version the ethernet is on the working one and flash the nonworking one to that firmware. If its the same chip (219-LM).

But those Dell Optiplex 7050 Micro computers are just a stup up from a thin client and was never really designed to be a server.

It will be connected to the network only as client, but will be used to run few docker containers, so it won’t be under big load as some servers are.
As for the firmwares and driver versions, both uses e1000e driver, working one has: driverversion=6.8.0-59-generic duplex=full firmware=0.1-4 and the non-working one: driverversion=6.8.0-60-generic duplex=full firmware=0.1-4. So the non-working one has newer version of the driver, I have no idea if that could be the issue or not.

that s why.
Lets switch your kernel to a level they fixed all the networking:

    sudo apt install ubuntu-mainline-kernel
    sudo ubuntu-mainline-kernel.sh -i 6.12

then reboot

Keep in mind when you update a kernel this way you have to manually add security patches.

This is seriously not appropriate on this forum without a big fat warning!! (Beyond the fact that this package is not available in the official archives )

Pretty please when suggesting such a thing add a detailed warning that the mainline kernels are highly inappropriate for anything other than a temporary test, are highly insecure due to lack of a ton of Ubuntu security patches, do not get any support, are not upgraded ever once installed and are using a wrong configuration that will cause issues with userspace application expectations (and thus are known to cause bugs with apps)

Well they need to either limit the 24.04 lts to 6.8.0.59 and skip to 6.12 but changing kernels to known kernels that don’t break is preferred. But I never experience skipping to a known one that works and breaking programs. Do you know of a 6.12 version in the system that is attached to the apt update database?

Because all of these kernels in between 6.8.0.59 and 6,12 have known and unsolvable bugs.

Moderator Note:

There’s nothing wrong with trying a newer kernel while troubleshooting.

There’s also nothing wrong with ensuring the person asking for help understands the risk and is making an informed choice.

And there is also nothing wrong with including advice to protect their system from the risk, and perhaps instructions to revert the change, so the person you’re helping feels more comfortable trying it.

We’re all patient adults here, we all want to help, and we all want to prevent consequences.

2 Likes

No, there is no 6.12 in Ubuntu at all and will never be, the next HWE kernel that will hit 24.04 will be 6.14.
Supported Ubuntu kernels only get backported from non LTS releases to LTS a while after the non-LTS release is out …

25.04 released with 6.14 which will hit the 24.04 archive eventually.

After this 25.10 will release in october with 6.17 which will hit the 24.04 archive later on and replace 6.14 in the HWE stack …

Preparing them, including all security patches and testing them on all possible hardware arches takes a while, so interim kernel versions are simply not doable by the kernel team.

So are we between the release-candidates that do-release-upgrade isn’t available yet?

I’m wondering if they can update from 24.04 to 25.04 with the iso image as well.

Its a lot of work, and I appreciate everyone involved in making the best OS I ever used on a computer.

Thank you for your input @ogra

1 Like

No, do-release-upgrade works fine, but on LTS releases it defaults to only upgrade to the next LTS, you need to flick a switch to allow an LTS to go to the non-LTS version (simply because that forces you to from now on hop releases every 9 months and LTSes only come out every two years (next being in 2026 with 26.04))

Take a look at /etc/update-manager/release-upgrades

1 Like

Recommending downloading anything doesn’t seem helpful due to lack of internet connection.

Well its simple, they just blast out the install and load 25.04 and swith to an LTS channel in November. Since they are on the new hardware that doesn’t work well until kernel 6.12.

I was curios what a dev’s opinion was on the current upgrade path.

But its o.k., your opinion does count as I can’t think of everything all the time.