Docker misconfigured when using non-default overlay/underlay netmask size

Bug #1584092 reported by Leann Ogasawara on 2016-05-20
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ubuntu-fan (Ubuntu)
Medium
Andy Whitcroft
Xenial
Medium
Andy Whitcroft

Bug Description

Fan allows for variable sized subnet map sizes. For example, if I want to map a /24 to a /16 instead of the default /16 to /8, Fan supports this. However, when configuring this via fanatic, I see that docker configuration fails. In /etc/default/docker, the --fixed-cidr flag is defined incorrectly.

$ sudo fanatic
Welcome to the fanatic fan networking wizard. This will help you set
up an example fan network and optionally configure docker and/or LXD touse this network. See fanatic(1) for more details.

Configure fan underlay (hit return to accept, or specify alternative) [192.168.0.0/16]: 192.168.1.0/24
Configure fan overlay (hit return to accept, or specify alternative) [250.0.0.0/8]: 250.99.0.0/16
Create LXD networking for underlay:192.168.1.0/24 overlay:250.99.0.0/16 [Yn]: Y
Profile fan-250-99 created
Create docker networking for underlay:192.168.1.0/24 overlay:250.99.0.0/16 [Yn]: Y
Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.
Test LXD networking for underlay:192.168.1.10/24 overlay:250.99.0.0/16
(NOTE: potentially triggers large image downloads) [Yn]: n
Test docker networking for underlay:192.168.1.10/24 overlay:250.99.0.0/16
(NOTE: potentially triggers large image downloads) [Yn]: n
This host IP address: 192.168.1.10
Remote test host IP address (none to skip):
/usr/sbin/fanatic: Testing skipped

$ grep "DOCKER_OPTS" /etc/default/docker
# Use DOCKER_OPTS to modify the daemon startup options.
#DOCKER_OPTS="--dns 8.8.8.8 --dns 8.8.4.4"
DOCKER_OPTS=" -b fan-250-99 --mtu=1450 --iptables=false --fixed-cidr=250.99.10.0/40"

May 20 05:15:30 macbook docker[27364]: time="2016-05-20T05:15:30.411933688-07:00" level=fatal msg="Error starting daemon: Error initializing network controller: invalid CIDR address: 250.99.10.0/40"

===
[Impact]

Non default network splits are not honoured correctly.

[Test Case]

Setup fan with non /8 /16 split, as per reporter.

[Regression Potential]

Low, as these currently do not work correctly.

The attachment "fanatic patch" seems to be a patch. If it isn't, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are a member of the ~ubuntu-reviewers, unsubscribe the team.

[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issues please contact him.]

tags: added: patch
Jay Vosburgh (jvosburgh) wrote :

I haven't tested this patch, but fanctl had the same issue, and I believe the fix is that the subnet math has to be "overlay_width + ( 32 - underlay_width )", not "overlay_width + underlay_width".

Patch attached.

Thanks Jay! Tested here and verified it works.

Changed in ubuntu-fan (Ubuntu):
importance: Undecided → Medium
status: New → In Progress
Andy Whitcroft (apw) wrote :

@Leann -- I have just uploaded an updated ubuntu-fan package with a number of fixes including this one to ppa:apw/ubuntu/fan-staging. Could you test that out for me and report back. Thanks.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-fan - 0.10.0

---------------
ubuntu-fan (0.10.0) yakkety; urgency=medium

  [ Andy Whitcroft ]
  * fanatic: fix legacy command line form syntax error (LP: #1584150)
  * fanctl/fanatic: add help commands/options with initial pointers
    (LP: #1535054)

  [ Jay Vosburgh ]
  * fanatic: fix underlay with calculation (LP: #1584092)

  [ Andy Whitcroft ]
  * fanctl/fanatic: remove invalid web reference from manual pages.
    (LP: #1582956)
  * debian/control: fix use of obsolete > operator
  * fanatic: detect user specified underlay address without overlay
    (LP: #1584692)
  * fanatic: switch from lxd-images to using cached lxc images. (LP: #1584775)
  * fanctl.8: fix interfane type (LP: #1584845)
  * fanatic: test-host -- use the selected underlay width to calculate the remote addresses
    (LP: #1584878)

 -- Andy Whitcroft <email address hidden> Mon, 23 May 2016 22:05:19 +0100

Changed in ubuntu-fan (Ubuntu):
status: In Progress → Fix Released
Andy Whitcroft (apw) on 2016-06-06
Changed in ubuntu-fan (Ubuntu Xenial):
status: New → In Progress
importance: Undecided → Medium
Changed in ubuntu-fan (Ubuntu):
assignee: nobody → Andy Whitcroft (apw)
Changed in ubuntu-fan (Ubuntu Xenial):
assignee: nobody → Andy Whitcroft (apw)
Andy Whitcroft (apw) on 2016-07-04
description: updated

Hello Leann, or anyone else affected,

Accepted ubuntu-fan into xenial-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/ubuntu-fan/0.9.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in ubuntu-fan (Ubuntu Xenial):
status: In Progress → Fix Committed
tags: added: verification-needed
Andy Whitcroft (apw) wrote :

Confirmed that appropriate non-default masks now produce sensible docket configurations.

tags: added: verification-done
removed: verification-needed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-fan - 0.9.1

---------------
ubuntu-fan (0.9.1) xenial; urgency=medium

  [ Andy Whitcroft ]
  * fanatic: fix legacy command line form syntax error (LP: #1584150)
  * fanctl/fanatic: add help commands/options with initial pointers
    (LP: #1535054)

  [ Jay Vosburgh ]
  * fanatic: fix underlay with calculation (LP: #1584092)

  [ Andy Whitcroft ]
  * fanctl/fanatic: remove invalid web reference from manual pages.
    (LP: #1582956)
  * fanatic: detect user specified underlay address without overlay
    (LP: #1584692)
  * fanatic: switch from lxd-images to using cached lxc images. (LP: #1584775)
  * fanatic: test-host -- use the selected underlay width to calculate the remote addresses
    (LP: #1584878)
  * fanctl: fix net start/stop exit codes. (LP: #1551747)
  * fanatic: install ping and nc when needed (LP: #1586176)
  * fanatic: switch docker testing to lts images (LP: #1586169)

 -- Andy Whitcroft <email address hidden> Mon, 04 Jul 2016 14:35:39 +0100

Changed in ubuntu-fan (Ubuntu Xenial):
status: Fix Committed → Fix Released

The verification of the Stable Release Update for ubuntu-fan has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers