Adding Debian Bug report in CC.
Thank you Klaus, for confirming. T
As I had expected, my network config stands correct. But I still need to
root cause what freezes the network at times, when both the VMs and the
Containers access the network simultaneously.
The odd part is that the issue is very sporadic. I haven't been able to
conclude a persistent pattern, to report a bug upstream.
Yes. The build is from Debian. Me and Gianfranco currently maintain VBox
for Debian (and derivatives).
I'll get you the required info soon. Something else came up inbetween.
The config is simple. You already must have seen the bridge's (lxcbr0)
config details in the debian bug report.
I use both Containers, and VBox VMs to connect to the bridge for all
network related stuff.
My intent is to use Containers and VMs on the same network and make them
reachable to each other.
For the VMs, I use the network setting "Attached to Bridge Adapter" and
the bridge interface I choose is "lxcbr0".
Under "Advanced Settings", I've chosen "Promiscuous Mode" to "Allow All"
With the above setting, I boot a VM and it can access the network /
internet.
BTW, When I start the VM, on the host, I see the following in dmesg.
[44838.685860] device lxcbr0 entered promiscuous mode
Here's what the syslog says to the guest VM, upon providing the network
(dhcp service is provided by dnsmasq on the host).
Jan 14 23:43:43 learner kernel: [45356.381385] vboxdrv: Found 8
processor cores.
Jan 14 23:43:43 learner kernel: [45356.381552] vboxdrv: fAsync=0
offMin=0x1b0 offMax=0xebb
Jan 14 23:43:43 learner kernel: [45356.381636] vboxdrv: TSC mode is
'synchronous', kernel timer mode is 'normal'.
Jan 14 23:43:43 learner kernel: [45356.381638] vboxdrv: Successfully
loaded version 4.3.20_Debian (interface 0x001a0008).
Jan 14 23:43:43 learner virtualbox[15064]: Starting VirtualBox kernel
modules.
Jan 14 23:43:43 learner kernel: [45356.391613] vboxpci: IOMMU not found
(not registered)
Jan 14 23:43:56 learner kernel: [45369.535587] device lxcbr0 entered
promiscuous mode
Jan 14 23:44:11 learner dnsmasq[14939]: reading /var/run/dnsmasq/resolv.conf
Jan 14 23:44:11 learner dnsmasq[14939]: using nameserver 8.8.8.8#53
Jan 14 23:44:11 learner dnsmasq[14939]: using nameserver 8.8.4.4#53
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 available DHCP
range: 172.16.10.10 -- 172.16.10.200
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 client provides
name: debian
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666
DHCPDISCOVER(lxcbr0) 172.16.10.40 08:00:27:d6:62:9a
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 tags: lxcbr0
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666
DHCPOFFER(lxcbr0) 172.16.10.40 08:00:27:d6:62:9a
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 requested
options: 1:netmask, 28:broadcast, 2:time-offset, 3:router,
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 requested
options: 15:domain-name, 6:dns-server, 119:domain-search,
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 requested
options: 12:hostname, 44:netbios-ns, 47:netbios-scope,
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 requested
options: 26:mtu, 121:classless-static-route, 42:ntp-server
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 next server:
172.16.10.1
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 1
option: 53 message-type 2
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 4
option: 54 server-identifier 172.16.10.1
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 4
option: 51 lease-time 1h
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 4
option: 58 T1 30m
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 4
option: 59 T2 52m30s
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 4
option: 1 netmask 255.255.0.0
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 4
option: 28 broadcast 172.16.255.255
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 4
option: 3 router 172.16.10.1
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 4
option: 6 dns-server 172.16.10.1
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 9
option: 15 domain-name lxc.local
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 available DHCP
range: 172.16.10.10 -- 172.16.10.200
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 client provides
name: debian
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666
DHCPREQUEST(lxcbr0) 172.16.10.40 08:00:27:d6:62:9a
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 tags: lxcbr0
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 DHCPACK(lxcbr0)
172.16.10.40 08:00:27:d6:62:9a debian
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 requested
options: 1:netmask, 28:broadcast, 2:time-offset, 3:router,
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 requested
options: 15:domain-name, 6:dns-server, 119:domain-search,
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 requested
options: 12:hostname, 44:netbios-ns, 47:netbios-scope,
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 requested
options: 26:mtu, 121:classless-static-route, 42:ntp-server
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 next server:
172.16.10.1
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 1
option: 53 message-type 5
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 4
option: 54 server-identifier 172.16.10.1
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 4
option: 51 lease-time 1h
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 4
option: 58 T1 30m
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 4
option: 59 T2 52m30s
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 4
option: 1 netmask 255.255.0.0
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 4
option: 28 broadcast 172.16.255.255
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 4
option: 3 router 172.16.10.1
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 4
option: 6 dns-server 172.16.10.1
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 9
option: 15 domain-name lxc.local
Jan 14 23:44:11 learner dnsmasq-dhcp[14939]: 3735664666 sent size: 6
option: 12 hostname debian
And then I fire up an Ubuntu Container. It too acquires the IP.
Following is the host logs for the same.
Jan 14 23:46:32 learner kernel: [45525.019745] device vethHF250W entered
promiscuous mode
Jan 14 23:46:32 learner kernel: [45525.019822] IPv6:
ADDRCONF(NETDEV_UP): vethHF250W: link is not ready
Jan 14 23:46:32 learner avahi-daemon[2448]: Withdrawing workstation
service for vethM3U37T.
Jan 14 23:46:32 learner kernel: [45525.095210] IPv6:
ADDRCONF(NETDEV_CHANGE): vethHF250W: link becomes ready
Jan 14 23:46:32 learner kernel: [45525.095253] lxcbr0: port
1(vethHF250W) entered forwarding state
Jan 14 23:46:32 learner kernel: [45525.095260] lxcbr0: port
1(vethHF250W) entered forwarding state
Jan 14 23:46:33 learner avahi-daemon[2448]: Joining mDNS multicast group
on interface vethHF250W.IPv6 with address fe80::fc3f:3bff:feaa:4d08.
Jan 14 23:46:33 learner avahi-daemon[2448]: New relevant interface
vethHF250W.IPv6 for mDNS.
Jan 14 23:46:33 learner avahi-daemon[2448]: Registering new address
record for fe80::fc3f:3bff:feaa:4d08 on vethHF250W.*.
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 available DHCP
range: 172.16.10.10 -- 172.16.10.200
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 client provides
name: trusty-test
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720
DHCPDISCOVER(lxcbr0) 172.16.10.45 00:16:3e:91:1d:83
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 tags: lxcbr0
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720
DHCPOFFER(lxcbr0) 172.16.10.45 00:16:3e:91:1d:83
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 requested
options: 1:netmask, 28:broadcast, 2:time-offset, 3:router,
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 requested
options: 15:domain-name, 6:dns-server, 119:domain-search,
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 requested
options: 12:hostname, 44:netbios-ns, 47:netbios-scope,
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 requested
options: 26:mtu, 121:classless-static-route, 42:ntp-server
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 next server:
172.16.10.1
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 1
option: 53 message-type 2
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 4
option: 54 server-identifier 172.16.10.1
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 4
option: 51 lease-time 1h
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 4
option: 58 T1 30m
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 4
option: 59 T2 52m30s
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 4
option: 1 netmask 255.255.0.0
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 4
option: 28 broadcast 172.16.255.255
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 4
option: 3 router 172.16.10.1
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 4
option: 6 dns-server 172.16.10.1
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 9
option: 15 domain-name lxc.local
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 available DHCP
range: 172.16.10.10 -- 172.16.10.200
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 client provides
name: trusty-test
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720
DHCPREQUEST(lxcbr0) 172.16.10.45 00:16:3e:91:1d:83
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 tags: lxcbr0
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 DHCPACK(lxcbr0)
172.16.10.45 00:16:3e:91:1d:83 trusty-test
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 requested
options: 1:netmask, 28:broadcast, 2:time-offset, 3:router,
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 requested
options: 15:domain-name, 6:dns-server, 119:domain-search,
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 requested
options: 12:hostname, 44:netbios-ns, 47:netbios-scope,
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 requested
options: 26:mtu, 121:classless-static-route, 42:ntp-server
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 next server:
172.16.10.1
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 1
option: 53 message-type 5
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 4
option: 54 server-identifier 172.16.10.1
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 4
option: 51 lease-time 1h
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 4
option: 58 T1 30m
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 4
option: 59 T2 52m30s
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 4
option: 1 netmask 255.255.0.0
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 4
option: 28 broadcast 172.16.255.255
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 4
option: 3 router 172.16.10.1
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 4
option: 6 dns-server 172.16.10.1
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 9
option: 15 domain-name lxc.local
Jan 14 23:46:35 learner dnsmasq-dhcp[14939]: 3088368720 sent size: 11
option: 12 hostname trusty-test
Jan 14 23:46:47 learner kernel: [45540.154482] lxcbr0: port
1(vethHF250W) entered forwarding state
And at this point, at times, the VBox VM connection is like frozen.
rrs@learner:/var/tmp/Debian-Build/temp/stevedore (debian/unstable)$ ping
172.16.10.40
PING 172.16.10.40 (172.16.10.40) 56(84) bytes of data.
From 172.16.10.1 icmp_seq=1 Destination Host Unreachable
From 172.16.10.1 icmp_seq=2 Destination Host Unreachable
From 172.16.10.1 icmp_seq=3 Destination Host Unreachable
From 172.16.10.1 icmp_seq=4 Destination Host Unreachable
^C^C
--- 172.16.10.40 ping statistics ---
7 packets transmitted, 0 received, +4 errors, 100% packet loss, time 6033ms
Even pinging the VMs gateway, which is the host bridge's IP, fails.
At this point, even restarting the VM doesn't help. On next boot, it is
unable to acquire the DHCP IP, even though the host logs show that the
DHCP server is offering the IP.
Jan 14 23:55:00 learner dnsmasq-dhcp[14939]: 3770987320
DHCPOFFER(lxcbr0) 172.16.10.40 08:00:27:d6:62:9a
Jan 14 23:55:00 learner dnsmasq-dhcp[14939]: 3770987320 requested
options: 1:netmask, 28:broadcast, 2:time-offset, 3:router,
Jan 14 23:55:00 learner dnsmasq-dhcp[14939]: 3770987320 requested
options: 15:domain-name, 6:dns-server, 119:domain-search,
Jan 14 23:55:00 learner dnsmasq-dhcp[14939]: 3770987320 requested
options: 12:hostname, 44:netbios-ns, 47:netbios-scope,
Jan 14 23:55:00 learner dnsmasq-dhcp[14939]: 3770987320 requested
options: 26:mtu, 121:classless-static-route, 42:ntp-server
Jan 14 23:55:00 learner dnsmasq-dhcp[14939]: 3770987320 next server:
172.16.10.1
Jan 14 23:55:00 learner dnsmasq-dhcp[14939]: 3770987320 sent size: 1
option: 53 message-type 2
Jan 14 23:55:00 learner dnsmasq-dhcp[14939]: 3770987320 sent size: 4
option: 54 server-identifier 172.16.10.1
Jan 14 23:55:00 learner dnsmasq-dhcp[14939]: 3770987320 sent size: 4
option: 51 lease-time 1h
Jan 14 23:55:00 learner dnsmasq-dhcp[14939]: 3770987320 sent size: 4
option: 58 T1 30m
Jan 14 23:55:00 learner dnsmasq-dhcp[14939]: 3770987320 sent size: 4
option: 59 T2 52m30s
Jan 14 23:55:00 learner dnsmasq-dhcp[14939]: 3770987320 sent size: 4
option: 1 netmask 255.255.0.0
Jan 14 23:55:00 learner dnsmasq-dhcp[14939]: 3770987320 sent size: 4
option: 28 broadcast 172.16.255.255
Jan 14 23:55:00 learner dnsmasq-dhcp[14939]: 3770987320 sent size: 4
option: 3 router 172.16.10.1
Jan 14 23:55:00 learner dnsmasq-dhcp[14939]: 3770987320 sent size: 4
option: 6 dns-server 172.16.10.1
Jan 14 23:55:00 learner dnsmasq-dhcp[14939]: 3770987320 sent size: 9
option: 15 domain-name lxc.local
Interestingly, this isn't a persistent behavior. At times, the network
functions for a couple of minutes, before going lost.
But on the Container, the connectivity is perfect. Thus I concluded this
to be a VBox problem and NOT a Bridging problem.
Klaus: If you need more information, please do let me know.
Thanks,
Ritesh