IPv6 connectivity of LXC containers
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
juju-core |
Won't Fix
|
Medium
|
Unassigned |
Bug Description
GOAL
IPv6 subnets, like eg. 2001:db8:
NETWORK LAYOUT
1) Host 1: 2001:db8:
1a) eth0: 2001:db8:
1b) lxcbr0: 2001:db8:
1c) Container 11: 2001:db8:
1d) Container 12: 2001:db8:
2) Host 2: 2001:db8:
2a) eth0: 2001:db8:
2b) lxcbr0: 2001:db8:
2c) Container 21: 2001:db8:
2d) Container 22: 2001:db8:
Other tests used the same subnet for both hosts or /112 subnets for the containers.
TEST SETUP
Variant A
- Host 1 and 2 are VMs
- Host 1 runs containers 11 and 12
- Host 2 runs containers 21 and 22
Variant B
- Host 1 and 2 are containers
- Host 1 runs sub-containers 11 and 12
- Host 2 runs sub-containers 21 and 22
STATUS
- host 1 can ping6 host 2
- host 1 can ping6 container 11 and container 12 (same on host 2)
- container 11 can ping6 container 12 (same on host 2)
- host 1 cannot (!) ping6 container 21 and container 22 (and vice versa)
- tcpdump shows, that host of receiving container receives ICMP6 neighbor solicitation, but doesn’t answer
- pinged container doesn’t see ICMP6 neighbor solicitation
NETWORK SETUP SCRIPT
-----8<
#!/bin/bash
HOST=1
CN1="sub-
CN2="sub-
NETWORK=
ETH0ADDR=
LXCBR0ADDR=
LXCBR0NET=
ROUTE="fe80::1"
CN1ADDR=
CN2ADDR=
echo "Starting containers ..."
sudo lxc-start -n ${CN1} -d
sudo lxc-start -n ${CN2} -d
sleep 2
sudo lxc-ls -f
echo "Setting up ETH0 ... "
sudo ip -6 addr add ${ETH0ADDR} dev eth0
sudo ip -6 route add default dev eth0
echo "Setting up LXCBR0 ..."
sudo ip -6 addr add ${LXCBR0ADDR} dev lxcbr0
sudo ip -6 route add ${LXCBR0NET} dev lxcbr0
echo "Setting up container 1 ..."
sudo lxc-attach -n ${CN1} -- ip -6 addr add ${CN1ADDR} dev eth0
sudo lxc-attach -n ${CN1} -- ip -6 route add default via ${ROUTE} dev eth0
echo "Setting up container 2 ..."
sudo lxc-attach -n ${CN2} -- ip -6 addr add ${CN2ADDR} dev eth0
sudo lxc-attach -n ${CN2} -- ip -6 route add default via ${ROUTE} dev eth0
sleep 1
sudo lxc-ls -f
-----8<
Changed in juju-core: | |
status: | New → Triaged |
importance: | Undecided → High |
milestone: | none → next-stable |
Changed in juju-core: | |
importance: | High → Medium |
milestone: | next-stable → none |
Changed in juju-core: | |
status: | Triaged → Won't Fix |
Just adding a link since it has some relevance for how to set up networking with LXC containers: containerops. org/2013/ 11/19/lxc- networking/
http://