# Waiting for eno1...

## The_Great_Sephiroth

OK, my Ethernet device on the domain controller is "eno1". When the system boots it stops three or four times and says "Waiting for eno1...", which takes about a minute each time. When it DOES boot, it isn't online. I am using a static IP address with netifrc.

ifconfig

```

eno1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

        inet 10.0.1.111  netmask 255.255.252.0  broadcast 10.0.3.255

        inet6 fe80::9a90:96ff:feb7:9199  prefixlen 64  scopeid 0x20<link>

        ether 98:90:96:b7:91:99  txqueuelen 1000  (Ethernet)

        RX packets 198713  bytes 202794775 (193.4 MiB)

        RX errors 0  dropped 2843  overruns 0  frame 0

        TX packets 49354  bytes 5141242 (4.9 MiB)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

        device interrupt 20  memory 0xf7c00000-f7c20000  

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536

        inet 127.0.0.1  netmask 255.0.0.0

        inet6 ::1  prefixlen 128  scopeid 0x10<host>

        loop  txqueuelen 1  (Local Loopback)

        RX packets 68  bytes 5476 (5.3 KiB)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 68  bytes 5476 (5.3 KiB)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

```

/etc/conf.d/net

```

dns_domain_lo="rtfp.lan"

nis_domain_lo="rtfp.lan"

config_eno1="10.0.1.111/22"

routes_eno1="default via 10.0.0.254"

```

Services

```

Available init scripts

  agetty

  binfmt                    boot

  bootmisc                  boot

  busybox-klogd

  busybox-ntpd

  busybox-syslogd

  busybox-watchdog

  consolefont

  cronie                    default

  devfs                     sysinit

  dmesg                     sysinit

  fsck                      boot

  gpm

  hostname                  boot

  hwclock                   boot

  ip6tables

  iptables

  keymaps                   boot

  killprocs                 shutdown

  kmod-static-nodes         sysinit

  local                     default

  localmount                boot

  loopback                  boot

  modules                   boot

  modules-load

  mount-ro                  shutdown

  mtab                      boot

  net.eno1                  default

  net.lo

  netmount                  default

  net-online

  numlock

  opentmpfiles-dev

  opentmpfiles-setup

  osclock

  pciparm

  procfs                    boot

  pwcheck

  pydoc-2.7

  pydoc-3.4

  root                      boot

  rsyncd

  runsvdir

  s6-svscan

  saslauthd

  savecache                 shutdown

  slapd

  sshd                      default

  swap                      boot

  swclock

  sysctl                    boot

  sysfs                     sysinit

  sysklogd                  default

  termencoding              boot

  udev                      sysinit

  udev-settle

  udev-trigger              sysinit

  urandom                   boot

```

So what would be causing this? I cannot remotely reboot the system due to this, and should it shutdown due to a power failure long enough to bring down the batteries, I would literally need to drive 45min to power it up and put in address info.

----------

## chiefbag

When you say its not online what exactly do you mean?

```
inet 10.0.1.111  netmask 255.255.252.0  broadcast 10.0.3.255 
```

Looks like the card has been assigned the configuration given, has it not?

Can you reach the gateway?

Are you saying the RC script does not bring up the interface on boot?

----------

## The_Great_Sephiroth

It is assigned because I manually ran ifconfig. When it boots it says something along the lines of "Waiting for eno1... (59)", "Waiting for eno1... (49)", etc etc until it continues the boot process. It does this multiple times. This is when OpenRC is starting things.

----------

## szatox

You have several services that require net, so it's possible that openrc tries to start your network every time it encounters one of those (and sees it's not ready yet)

What does "which ip" report?

Also, have you tried removing those lines?

```
dns_domain_lo="rtfp.lan"

nis_domain_lo="rtfp.lan" 
```

It's a bit weird setup, smells like a possible conflict to me. Shouldn't they be on eno1 instead? Should they be there at all?

----------

## Hu

 *The_Great_Sephiroth wrote:*   

> OK, my Ethernet device on the domain controller is "eno1". When the system boots it stops three or four times and says "Waiting for eno1...", which takes about a minute each time. When it DOES boot, it isn't online. I am using a static IP address with netifrc.

 While the network is down, run /etc/init.d/net.eno1 --verbose start.  Does the extra verbosity show anything interesting?  If not, try with --debug so that you can trace its exact flow.  This will be noisy.  You will probably need to redirect output to a file.

 *The_Great_Sephiroth wrote:*   

> I cannot remotely reboot the system due to this, and should it shutdown due to a power failure long enough to bring down the batteries, I would literally need to drive 45min to power it up and put in address info.

 This is where trained monkeys are useful.

----------

## The_Great_Sephiroth

I am here now, and the exact message is "netmount: waiting for net.eno1... (xx seconds)". It waits sixty seconds each time, four times total, then brings up the shell login with eno1 unconfigured. I will see what your commands do next.

*UPDATE*

OK, running the verbose command provides a single line of output. "WARNING: net.lo has already been started". I did not specify net.lo, I did net.eno1. The net.eno1 file is a symlink to net.lo, per the install guide. For some reason it isn't working.

*UPDATE*

Using "--debug" or even "--debug --verbose" results in a single line output, the same as before.

----------

## Cyker

This shouldn't matter, but what NIC is eno1 and is it compiled into the kernel or just as a module?

----------

## Hu

Yes, --debug / --verbose were meant to trace execution inside the network script, but the output you received says that it's not even trying to run the network script because it wrongly thinks it's dealing with a different interface.  I have never seen that happen and have not read the relevant code, so I cannot guess why it is printing an interface name different than the one you requested.  I suspect that fixing that will be necessary to solve your original problem.

----------

## The_Great_Sephiroth

The NIC is built into the motherboard and the driver is built into the kernel, same as always. I always build permanently attached hardware drivers into my kernels. Never seems to be an issue.

As for the setup I followed the guide to the T.

```

cd /etc/init.d

ln -s ./net.lo ./net.eno1

rc-update add net.eno1 default

```

This has always worked before, so I am stumped.

----------

## Hund

I also had issues with no network at boot, and then when I manually started it and tried to run OpenVPN, it would complain about not finding eno1. So I changed back to the old interface naming scheme by adding "net.ifnames=0" to my kernel parameters.

And now everything works just fine.  :Smile: 

----------

## charles17

 *The_Great_Sephiroth wrote:*   

> I am here now, and the exact message is "netmount: waiting for net.eno1... (xx seconds)"

 

Unless you really need it, netmount could be removed from the runlevels.

----------

## The_Great_Sephiroth

I have never touched netmount and assumed it was a service that the OS needed since it was always there by default. I am going to read up on it now.

----------

## The_Great_Sephiroth

OK, I may not use it at this time but I am debating using it with an AD setup for centralized documents. It is not disabled on any other Gentoo system, so I should not have to disable it here. Still figuring out the issue though. I do not know what is causing it to look for lo instead of eno1.

----------

## charles17

 *The_Great_Sephiroth wrote:*   

> Still figuring out the issue though. I do not know what is causing it to look for lo instead of eno1.

 Read /etc/rc.conf and set rc_interactive="YES".  Reboot interactively.  Confirm each service separately, see what happens.

----------

