I have a Nvidia Jetson TX2 SoC in an Connecttech Astro carrier board running Ubuntu 16.04. The carrier has two Gigabit Ethernet ports which I would like to configure with static IPs. In system settings -> network:

Wired Connection 1 ->IPv4 settings: manual IP: Mask: 24 Default Gateway:

Wired Connection 2 ->IPv4 settings: manual IP: Mask: 24

Under normal operation this TX2 is connected to another TX2 and some other components via a simple unmanaged switch. All components have static IPs set so they can operate without a dhcp server. When the TX2 is powered on everything works as it should but after 5 minutes, eth0 (wired connection 1) disappears. Looking at the syslog, it appears this is because dhclient doesn't get a reply from a DHCP server (because there isn't one connected) which triggers the interface to be shutdown. The avahi-daemon takes over eth0 and tries to configure it but fails. I see the timeout in /etc/dhcp/dhclient.conf is set to 300 seconds.

I am trying to figure out why dhclient is doing anything since the interface is set to manual with a static IP.

I also configured the static IP via /etc/network/interfaces:

auto eth0
iface eth0 inet static

auto eth1
iface eth1 inet static




but this did not make a difference. So my question is why is dhclient making DHCP requests for eth0 when it's configured as static? What is shutting eth0 down when it fails? What's the right way to fix this?

Couple other tidbits of information, 1) if a router or other dhcp server is attached, everything works perfectly. 2) I had a similar hardware configuration with a Jetson TX1 running Ubuntu 14.04 that worked fine.

This post is not helpful: https://askubuntu.com/questions/459140/why-dhclient-is-still-running-when-i-choose-static-ip

1 Answer 1

  • Ensure that dhclient is not envoked from any start-up scripts or are running in the background. (ps auxw | grep dhclient). You can kill it with: pkill -f dhclient.

  • There is several network related services and wrappers in Ubuntu, so can be invoked from an app such as network-manager. If you run a headless server I'd recommend you disable the network-manager and rely on the native networking.

sudo systemctl disable NetworkManager.service

After applying this changes, I would restart the machine for good measure, to ensure that there is no services remaining that invokes dhclient.

Hope this helps!

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .