[Lxc-users] Is there any document on networking?

Fajar A. Nugraha list at fajar.net
Tue Nov 12 06:42:22 UTC 2013


On Tue, Nov 12, 2013 at 1:22 PM, Magicloud Magiclouds <
magicloud.magiclouds at gmail.com> wrote:

> Thank you for the reply. I may be not clear in the original question.
>
> For example, in KVM, the system setup a virtual network device pair in
> host, and added on end to bridge. So when an program is using the other
> end, its communication will be bridged to actual hardware. And KVM exposes
> a virtual network device to the guest and links it to "the other end". And
> in guest, it is just a normal network device.
>
> But in LXC, first of all, it does not vitualize hardware. The guest is
> just a child process of LXC. Then, how does it make the guest using "the
> other end"? The guest is just using general socket APIs.
>
>

If you use the default LXC setup, then most likely you're already using
veth for networking. So you already have a pair of veth interface, one on
the host, and the other on the guest. The host and the guest can see
different network device since they're using different network namespace.

In my setup, I use something like this on lxc config ("ffmpeg" is the name
of the container):

lxc.network.type=veth
lxc.network.link=br0
lxc.network.flags=up
lxc.network.hwaddr= 00:16:3E:45:B9:78
lxc.network.veth.pair=v-ffmpeg-0
lxc.utsname = ffmpeg

What it does:
- it uses veth for network
- the veth interface on the host side would always be named "v-ffmpeg-0",
connected to the bridge "br0" (created separately using networking config
in the hosts's /etc/network/interfaces)
- the veth interface on the container/guest side is named "eth0", with MAC
address 00:16:3E:45:B9:78

-- 
Fajar
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.linuxcontainers.org/pipermail/lxc-users/attachments/20131112/010605d9/attachment.html>


More information about the lxc-users mailing list