Red en LXC

Descripción de los modos de configuración de red de LXC.

Permite configurar tarjetas de red virtuales (veth) para acceder al mismo enlace físico (eth) a través de un bridge (br)

Dirección estática

En el HOST /etc/network/interfaces agregar:

# The primary network interface COMENTAR!
# allow-hotplug eth0
# iface eth0 inet manual

auto br0
iface br0 inet static 
      address 192.168.1.100
      netmask 255.255.255.0
      network 192.168.1.0
      broadcast 192.168.1.255
      gateway 192.168.1.1
      dns-nameservers 192.168.1.20
      bridge_ports eth0
      bridge_fd 0
      bridge_maxwait 0

Configurar para que el container levante red (agregar al final del archivo /var/lib/lxc/nombrecontainer/config)

## Network
# lxc.utsname = nombrecontainer
lxc.network.type = veth
lxc.network.flags = up

# Network host side
lxc.network.link = br0
lxc.network.veth.pair = veth0

# Network container side
lxc.network.name = eth0
# lxc.network.hwaddr = 00:FF:AA:00:00:01
lxc.network.ipv4 = 192.168.10.10/24
lxc.network.ipv4.gateway = 192.168.10.1

Dirección dinámica

En el HOST /etc/network/interfaces agregar:

# The primary network interface COMENTAR!
# allow-hotplug eth0
# iface eth0 inet manual

auto br0
iface br0 inet dhcp
      bridge_ports eth0
      bridge_fd 0
      bridge_maxwait 0

Configurar para que el container levante red (agregar al final del archivo /var/lib/lxc/nombrecontainer/config)

## Network
# lxc.utsname = nombrecontainer
lxc.network.type = veth
lxc.network.flags = up

# Network host side
lxc.network.link = br0
lxc.network.veth.pair = veth0

# Network container side
lxc.network.name = eth0
# lxc.network.hwaddr = 00:FF:AA:00:00:01
# lxc.network.ipv4 = 0.0.0.0/24

Documentos relacionados

Nat permite tener los contenedores no visibles desde el exterior, quedando configurados en una sub-red privada.

Permite asignar una tarjeta física real (eth) a un contenedor para su uso exclusivo.

Configuración recomendada en servicios virtualizados como VMWare ESXi, en el cual es mandatorio.

En el HOST /etc/network/interfaces configurar eth0 de manera normal.

Configurar para que el container levante red de eth1 (agregar al final del archivo /var/lib/lxc/nombrecontainer/config)

## Network
# lxc.utsname = nombrecontainer
lxc.network.type = phys
lxc.network.flags = up

# Network host side
lxc.network.link  = eth1
lxc.network.mtu = 1500

# Network container side
lxc.network.name  = eth0
lxc.network.ipv4 = 192.168.1.101/24