GNU/Linux >> Znalost Linux >  >> Ubuntu

Ubuntu – Jak nakonfigurovat externí IP adresy pro hosty Lxc?

Zkoumám funkce LXC v Ubuntu 12.04 a opravdu chci nastavit síť jako je tato:

client1:   192.168.56.101/24
lxc-host:  192.168.56.102/24
guest1     192.168.56.201/24
guest2     192.168.56.202/24
guest3     192.166.56.203/24

Chci jen „plochou“ síť, kde mají hosté plný přístup k LAN a jsou viditelní pro klienty. Jsem zvyklý na přemostění sítí pomocí libvirt/KVM, jak je popsáno zde:http://libvirt.org/formatdomain.html#elementsNICSBridge

Na hostiteli:

# /etc/network/interfaces
auto br0
iface br0 inet static
    address 192.168.56.102
    netmask 255.255.255.0
    broadcast 192.168.56.255
    bridge_ports eth1

lxc.conf pro prvního hosta:

# /var/lib/lxc/guest1/config:
lxc.network.type=veth
lxc.network.link=br0
lxc.network.flags=up
lxc.network.hwaddr=00:16:3e:13:48:4e
lxc.network.ipv4=192.168.56.201/24

Vypadá to, že 192.168.56.201 je pro vnější svět neviditelný, což není to, co chci. Zdá se, že musím udělat jednu z těchto věcí:

1) Ručně nastavte směrování na hostiteli a hostu

2) Udělejte něco bláznivého…vytvářejte virtuální rozhraní na hostiteli s předstihem a nakonfigurujte hosty, aby je používali lxc.network.type=phys . Nevím, jestli by to skutečně fungovalo.

Zaměřuji se na Ubuntu, ale užitečné by byly i odpovědi pro RHEL/Fedora...

Přijatá odpověď:

To je do značné míry správné – i když vám chybí řádek jako tento:

lxc.network.ipv4.gateway = X.X.X.X

Na Debianu mám hosta LXC. Nejprve nastavíte hostitelský most (snadný způsob) v /etc/network/interfaces :

auto wan
iface wan inet static
        address 72.X.X.X
        netmask 255.255.255.0
        gateway 72.X.X.1
        bridge_ports wan_phy    # this line is important.
        bridge_stp off
        bridge_fd 2
        bridge_maxwait 20

Ve vašem případě jste to nazvali br0 a nazval jsem to wan . Most se může jmenovat jak chcete. Nejprve to zprovozníte – pokud selže, prozkoumejte to pomocí (např.) brctl

Potom je vaše konfigurace LXC nastavena tak, aby se připojila k tomuto mostu:

lxc.utsname = FOO
lxc.network.type = veth
lxc.network.link = wan                  # remember, this is what I call my bridge
lxc.network.flags = up
lxc.network.name = v-wan                # optional, I believe
lxc.network.ipv4 = 72.X.X.Y/24          # different IP than the host
lxc.network.ipv4.gateway = 72.X.X.1     # same as on the host

Jak poznamenává HoverHell, někdo s rootem v kontejneru může změnit IP adresu. Ano. Je to most (neboli ethernetový přepínač). Pokud tomu chcete zabránit, můžete na hostiteli použít pravidla brány firewall – alespoň v mém případě musí pakety procházet přes iptables hostitele.


Ubuntu
  1. Jak nakonfigurovat statickou IP adresu na Ubuntu 18.04

  2. Jak restartovat síť na Ubuntu

  3. Jak nakonfigurovat klienta DHCP Ubuntu

  1. Jak nakonfigurovat statickou IP adresu na Ubuntu 20.04

  2. Jak nakonfigurovat Bacula Server na Ubuntu 16.04

  3. Jak nakonfigurovat OpenVPN na Ubuntu 16.04

  1. Jak nakonfigurovat klávesnici na Ubuntu 18.04

  2. Jak nakonfigurovat Bridged Networking pro KVM na Ubuntu 16.04 / 14.04 / Debian 9

  3. Netplan – Jak nakonfigurovat statickou IP adresu v Ubuntu 18.04 pomocí Netplan