Comment 12 for bug 1633479

Revision history for this message
Scott Moser (smoser) wrote :

I've verified that this fixes issue on yakkety.

## Set up a network in lxc that listens to dhcp ipv4 and ipv6

$ netname="v4and6"
$ profname="$netname-profile"
$ cnamepre="v4v6-"
$ lxc network create $netname
Network v4and6 created

$ lxc network set $netname ipv6.dhcp.stateful true
$ lxc profile create $profname
$ lxc profile device add $profname eth0 nic nictype=bridged parent=$netnam
Device eth0 added to v4and6-profile

$ lxc network show $netname
name: v4and6
config:
  ipv4.address: 10.152.128.1/24
  ipv4.nat: "true"
  ipv6.address: fd42:198e:d2a5:1d10::1/64
  ipv6.dhcp.stateful: "true"
  ipv6.nat: "true"
managed: true
type: bridge
usedby: []

$ lxc profile show $profname
name: v4and6-profile
config: {}
description: ""
devices:
  eth0:
    nictype: bridged
    parent: v4and6
    type: nic
usedby: []

## Now launch a container to verify
$ rel=yakkety
$ cname=v5v6-$rel
$ lxc launch ubuntu-daily:$rel --profile=$profname $cname
$ sleep 20; # give it time to come up
% lxc exec $cname /bin/bash

## inside
$ dev=eth0;
$ ifdown $dev; ip link set down dev $dev; killall dhclient;
Killed old client process
$ dhclient -6 -1 -v $dev
...
Can't bind to dhcp address: Cannot assign requested address
Please make sure there is no other dhcp server
...
$ echo $?
1

## That verified busted. now fix.
$ ifup eth0 # brings up ipv4 dhcp properly
$ m=http://archive.ubuntu.com/ubuntu
$ echo "deb $m $(lsb_release -sc)-proposed main" | sudo tee /etc/apt/sources.list.d/proposed.list

$ sudo apt-get install isc-dhcp-client
$ dpkg-query --show isc-dhcp-client
isc-dhcp-client 4.3.3-5ubuntu15.1

$ ifdown $dev; ip link set down dev $dev; killall dhclient;
$ dhclient -6 -1 -v $dev
...
message status code Success: "success"
PRC: Bound to lease 00:01:00:01:1f:c5:e1:fb:b8:ae:ed:75:5f:9a.

$ echo $?
0