** Description changed:

- Expectation:  After reboot, route for default gateway specified on
- bonded interface is installed according to "gateway x.x.x.x"  (where
- x.x.x.x is a valid IPv4 address) specified in /etc/network/interfaces or
- files sourced per /etc/network/interfaces
+ [Impact]
+ 
+ Systems using vlans, especially those using vlans on top of bond
+ interfaces, in addition to default or other routes on the vlans, may
+ find their vlan routes are not present at boot.
+ 
+ The attached debdiff patches fix the vlan package's /etc/network/if-pre-
+ up.d/vlan script.  Currently, the script will bring up a vlan's raw
+ device if needed; but the problem is if the vlan's ifup processing
+ happens before the raw device's ifup processing, the raw device may be
+ taken down and back up (especially for bonds), and when the raw device
+ is taken down, the vlan is as well, and thus loses all its routing
+ configuration.  Instead of only bringing the raw device up using ip link
+ up, the patch changes the vlan script to do a full ifup on the raw
+ device, so it will remain up after the vlan is configured.
+ 
+ [Test Case]
+ 
+ Set up a system using two interfaces configured into a bond interface,
+ with a vlan on top of that bond.  Add a default route and/or specific
+ routes to the vlan interface.  Then edit the system as described in
+ comment 8, and reboot.  The vlan's routes will not be present in the
+ system.
+ 
+ [Regression Potential]
+ 
+ Any modifications to ifupdown or the scripts it uses may cause wider
+ problems with network configuration.  Specifically, this could cause
+ problems when using vlan interfaces, as it forces every vlan's raw
+ device interface to be fully ifup'ed before the vlan interface can
+ finish its ifup.
+ 
+ [Other Info]
+ 
+ original description below:
+ 
+ 
+ Expectation:  After reboot, route for default gateway specified on bonded 
interface is installed according to "gateway x.x.x.x"  (where x.x.x.x is a 
valid IPv4 address) specified in /etc/network/interfaces or files sourced per 
/etc/network/interfaces
  
  Actual Result: After reboot, route is not installed. Interface does work
  otherwise (I can ping the gateway on that subnet, for instance).
  'ifdown -a' followed by  'ifup -a' (run with proper permission... so
  sudo) brings the gateway back until next reboot.
  
  Package:  I'm not familiar enough to be certain what is causing this,
  but I was seeing this in beta2 of 16.04 as well.
  
  *username snipped*@*hostname snipped*:~$ lsb_release -rd
  Description:    Ubuntu 16.04 LTS
  Release:        16.04
  *username snipped*@*hostname snipped*:~$ apt-cache policy ifenslave
  ifenslave:
-   Installed: 2.7ubuntu1
-   Candidate: 2.7ubuntu1
-   Version table:
-  *** 2.7ubuntu1 100
-         100 /var/lib/dpkg/status
+   Installed: 2.7ubuntu1
+   Candidate: 2.7ubuntu1
+   Version table:
+  *** 2.7ubuntu1 100
+         100 /var/lib/dpkg/status
  
  *username snipped*@*hostname snipped*:~$ apt-cache policy ifupdown
  ifupdown:
-   Installed: 0.8.10ubuntu1
-   Candidate: 0.8.10ubuntu1
-   Version table:
-  *** 0.8.10ubuntu1 100
-         100 /var/lib/dpkg/status
-         
-         
-       
+   Installed: 0.8.10ubuntu1
+   Candidate: 0.8.10ubuntu1
+   Version table:
+  *** 0.8.10ubuntu1 100
+         100 /var/lib/dpkg/status
  
- 
- 
- 
-       /etc/network/interfaces
+       /etc/network/interfaces
  
  ----------------------------------
  # This file describes the network interfaces available on your system
  # and how to activate them. For more information, see interfaces(5).
  
  source /etc/network/interfaces.d/*
  
  # The loopback network interface
  auto lo
  iface lo inet loopback
  
  # The primary network interface
  auto enp2s0f1
  iface enp2s0f1 inet manual
  bond-master bond0
  
  auto enp2s0f0
  iface enp2s0f0 inet manual
  bond-master bond0
  
  auto bond0
  iface bond0 inet static
-         address 10.96.96.2
-         netmask 255.255.255.0
-         network 10.96.96.0
-         broadcast 10.96.96.255
-         # dns-* options are implemented by the resolvconf package, if 
installed
-         dns-search *snip*
-         bond-mode balance-alb
-         bond-slaves none
-         bond-miimon 100
- auto bond0.3000 
+         address 10.96.96.2
+         netmask 255.255.255.0
+         network 10.96.96.0
+         broadcast 10.96.96.255
+         # dns-* options are implemented by the resolvconf package, if 
installed
+         dns-search *snip*
+         bond-mode balance-alb
+         bond-slaves none
+         bond-miimon 100
+ auto bond0.3000
  iface bond0.3000 inet static
-         address 172.21.33.29
-         netmask 255.255.255.0
-         network 172.21.33.0
-         broadcast 172.21.33.255
-         gateway 172.21.33.1
-         dns-search *snip*
-         vlan-raw-device bond0
-         dns-nameservers 172.31.10.84 8.8.8.8 4.2.2.2
-         
+         address 172.21.33.29
+         netmask 255.255.255.0
+         network 172.21.33.0
+         broadcast 172.21.33.255
+         gateway 172.21.33.1
+         dns-search *snip*
+         vlan-raw-device bond0
+         dns-nameservers 172.31.10.84 8.8.8.8 4.2.2.2
+ 
  -----------------------------------------------------
  interfaces.d is empty:
  
  *username snipped*@*hostname snipped*:~$ ls -lisah /etc/network/interfaces.d
  total 8.0K
  10748247 4.0K drwxr-xr-x 2 root root 4.0K Jan 24 14:08 .
  10748237 4.0K drwxr-xr-x 7 root root 4.0K Apr 21 17:32 ..

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

Title:
  default gateway route not installed for bond interfaces through reboot

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

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to