IPv4 is not showing, current Ubuntu build says "Failed to start Raise network interfaces"

July 3, 2018 131 views
IPv6 Nginx Ubuntu 16.04

Hi, I have a droplet with IPv4 and IPv6 enabled. It has never been a problem. However, yesterday I somehow managed to break my droplet while upgrading. IPv6 looks fine but IPv4 is now missing from my IP if I run $ip addr .

I can access the DO console to test, but cannot ssh in or ping from my terminal.

$cat /etc/network/interfaces.d/* looks the same as an older snapshot (too old unfortunately). Changing network interfaces has yet to produce anything encouraging. My firewall is disabled. Not sure where else to look.

$sudo reboot shows the error: "Failed to start Raise network interfaces".

DO support has responded and recommended the following:

$ ip addr
learned that inet6 displays, inet not present
$ ip route
no change
$ ls -l /lib/modules
total 8
drwxr-xr-x 5 root root 4096 Jun 13 07:00 4.4.0-128-generic
drwxr-xr-x 5 root root 4096 Jul 2 13:51 4.4.0-130-generic
$iptables -nvL --line-numbers

and lastly removing /etc/udev/rules.d/70-persistent-net.rules results in no change.

As per support I learned that IPv4 is not present. Support suggested "ensuring IPv4 is present" although I'm not sure how to go about accomplishing that.

Hopefully someone out here can throw me a bone, it has been a long night.

1 Answer

I just had a rather enlightened colleague of mine solve this for me. Running $ifconfig or $ip addr, he saw how inet6 can be found but not inet (IPv4). On a hunch he opened network interfaces and commented out all IPv6 related lines as follows:

$ sudo nano /etc/network/interfaces

# This file describes the network interfaces available on your
# system and how to activate them. For more information, see
# interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0 
#iface eth0 inet6 static
#       address ****:****:****:****:****:****:****:****
#        netmask 64
#        gateway ****:****:****:****:****:****:****:****
#        autoconf 0
#        dns-nameservers ****:****:****::**** ****:****:****::8888
iface eth0 inet static
        address ***.***.***.**
        netmask ***.***.***.*
        gateway ***.***.***.*
        up ip addr add dev eth0

Running ifconfig we can now see there are now two inet6 and one inet. I don't claim to know what happened here, but this new inet now allows me to ping my droplet! Websites are now up, and I can ssh into the droplet to backup as needed.

eth0      Link encap:Ethernet  HWaddr 04:01:35:48:9e:01  
          inet addr:***.***.***.*  Bcast:***.***.***.***  Mask::***.***.***.***
          inet6 addr: ****:****:***:**::***:****/64 Scope:Global
          inet6 addr: ****::***:****:****:****/64 Scope:Link
          RX packets:44118 errors:0 dropped:0 overruns:0 frame:0
          TX packets:51888 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:9519589 (9.5 MB)  TX bytes:156384397 (156.3 MB)

This was a little scary for a while there! Happy to at least have this to work from.

Have another answer? Share your knowledge.