[Bug 1636678] Re: ethernet -> bond -> 802.1q vlan -> dhcp causes race condition, hangs on boot

Chris Pitchford 1636678 at bugs.launchpad.net
Wed Oct 26 06:15:59 UTC 2016


I believe this is probably an issue with ifupdown and how it handles
lock files. It appears to randomly allow a dependant interface (bond0.5)
to start before its provider (bond0) which means eno1 would never
receive the ifenslave.bond0 file and therefore no interfaces are ever
attached to the bond.

I've submitted a new bug for that package, with a work around (if you're
happy hacking systemd service files)

https://bugs.launchpad.net/ubuntu/+source/ifupdown/+bug/1636708

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to ifenslave in Ubuntu.
https://bugs.launchpad.net/bugs/1636678

Title:
  ethernet -> bond -> 802.1q vlan -> dhcp causes race condition, hangs
  on boot

Status in ifenslave package in Ubuntu:
  New

Bug description:
  I have two ethernet interfaces (eno1, eno2) bonded to form a bond0 interface
  I then split this interface into 802.1q vlan interfaces bond0.2 and bond0.5

  bond0.2 receives a static IP
  bond0.5 receives its IP via DHCP

  During boot up, it seems that bond0 starts and bond0.2 and bond0.5
  start. bond0.5 starts dhclient as expected.

  However, this all happens whilst eno1 and eno2 are starting and the
  ifenslave scripts believe bond0 is blocked so they hang.

  The net result is dhclient starts before eno1,eno2 are attached to the
  bond0 interface, therefore dhclient can't talk to the network, so it
  never finishes, so eno1,eno2 are never unblocked and never added.

  
  Here's my basic config from /etc/network/interfaces:

  auto lo eno1 eno2 bond0 bond0.2 bond0.5

  iface eno1 inet manual
          bond-master     bond0

  iface eno2 inet manual
          bond-master     bond0

  iface bond0 inet manual
          bond-slaves     eno1 eno2
          bond-mode       4
          bond-lacp-rate  1
          bond-miimon     100
          bond-updelay    200
          bond-downdelay  200

  iface bond0.2 inet manual
          vlan-raw-device bond0
          address         192.168.5.1
          netmask         255.255.255.0

  iface bond0.5 inet dhcp
          vlan-raw-device bond0

  
  On boot, I can see ifup is called for all interfaces but soon after, the system hangs and I'm presented with a 5minute 4 second timeout countdown.
  After this, the network service has failed and I'm left with a partially configured network (the dhcp interface is never configured)

  
  What should happen is ifup should start eno1, eno2 and bond0 THEN bond0.2 and bond0.5 should be started... or... eno1 and eno2 should not be blocked and added to bond0

  ProblemType: Bug
  DistroRelease: Ubuntu 16.04
  Package: ifenslave 2.7ubuntu1
  ProcVersionSignature: Ubuntu 4.4.0-45.66-generic 4.4.21
  Uname: Linux 4.4.0-45-generic x86_64
  ApportVersion: 2.20.1-0ubuntu2.1
  Architecture: amd64
  Date: Wed Oct 26 03:46:40 2016
  InstallationDate: Installed on 2016-10-24 (1 days ago)
  InstallationMedia: Ubuntu-Server 16.04.1 LTS "Xenial Xerus" - Release amd64 (20160719)
  PackageArchitecture: all
  SourcePackage: ifenslave
  UpgradeStatus: No upgrade log present (probably fresh install)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ifenslave/+bug/1636678/+subscriptions



More information about the foundations-bugs mailing list