====== systemd-nspawn hálózati opciók ====== https://www.freedesktop.org/software/systemd/man/systemd-nspawn.html * **''--private-network''** * nincs konténer ↔ gazdagép kommunikáció * csak loopback eszköz van a konténerben (illetve a ''--network-interface'' által adott, ''--network-veth'' által konfigurált interfészek) * a ''CAP_NET_ADMIN'' képesség hozzárendelődik a konténerhez (kikapcsolható: ''--drop-capability'') * **''--network-namespace-path''** * a hálózati névteret reprezentáló fájl (tipikusan ''/run/netns/sajátnévtér'') * hozzáadja a konténert az adott hálózati névtérhez * nem használható együtt a ''--private-network'' és a ''--network-interface'' kapcsolóval * **''--network-interface''** * hozzárendeli az adott interfészt a konténerhez * a gazdagép névtéréből kiveszi az interfészt (ha a konténer megszűnik, akkor visszakerül) * ''--private-network'' implicite igaz * többször egymás után használva több interfész is hozzárendelhető a konténerhez * **''--network-macvlan''** * [[.:network_virt#mac-vlan|MAC-VLAN]] interfészt hoz létre az adott fizikai interfészhez, és hozzárendeli a konténerhez * az interfész neve a konténerben a fizikai interfész neve + egy ''mv-'' előtag * ''--private-network'' implicite igaz * többször egymás után használva több interfész is hozzárendelhető a konténerhez * **''--network-ipvlan''** * ld. ''--network-macvlan'' csak [[.:network_virt#ip-vlan|IP-VLAN]] interfészt hoz létre * **''-n, --network-veth''** * virtuális Ethernet-összeköttetést ("veth") hoz létre a gazdagép és a konténer között * a gazdagépen a virtuális interfész neve a konténer neve (''--machine'') + egy ''ve-'' előtag * a konténerben az interfész neve ''host0'' * ''--private-network'' implicite igaz * a systemd-networkd alapértelmezetten ad két fájlt: * ''/usr/lib/systemd/network/80-container-ve.network'' a gazdagép interfészéhez, ami a DHCP-t engedélyezi és a routing szabályokat beállítja * ''/usr/lib/systemd/network/80-container-host0.network'' a konténer interfészéhez, ami a DHCP-t engedélyezi * ha a systemd-networkd fut a gazdagépen is és a konténerben is, akkor van IP-kapcsolat * (a ''systemd-nspawn@.service'' minta unit fájlban ''--network-veth'' szerepel) * **''--network-veth-extra''** * további virtuális Ethernet-összeköttetést hoz létre a gazdagép és a konténer között * '':'' (utóbbi elhagyása esetén a konténerbeli név megegyezik a gazdagépbelivel) * a ''--network-veth'' kapcsolótól függetlenül használható, egymás után többször is * a ''--network-bridge'' nincs hatással a ''--network-veth-extra'' kapcsolóval létrehozott interfészekre * **''--network-bridge''** * a ''--network-veth'' által létrehozott gazdagépbeli interfészt hozzáadja a megadott bridge-hez * a gazdagépen az interfész neve ''vb-'' előtag lesz ''ve-'' helyett * **''--network-zone''** * mint a ''--network-bridge'', csak a bridge is automatikusan létrejön (és ha nincs már konténer, ami használja, akkor automatikus törlődik is) * a bridge neve a megadott argumentum + a ''vz-'' előtag * "z" mint "zóna", ismertebb nevén broadcast domain * egy konténer csak egy zónában lehet benne, de egy zóna tartalmazhat több konténert * a systemd-networkd alapértelmezetten ad egy ''/usr/lib/systemd/network/80-container-vz.network'' fájlt a bridge interfészhez, ami a DHCP-t engedélyezi és routing szabályokat beállítja * ezt érdemes használni több konténer egy broadcast domainhez történ automatikus hozzáadásához, ami a külső hálózattal való kapcsolatot is biztosítja * **''-p, --port''** * privát hálózati mód esetén egy gazdagépbeli portot hozzárendel a konténerbeli porthoz (TCP vagy UDP) * ''::'' ( a protokoll elhagyható, a TCP alapértelmezett; a konténer portja is elhagyható, ekkor a hoszton lévő port száma lesz a konténerben lévő port száma) ===== Hálózatvirtualizáláshoz kis magyarázat ===== * http://rblst.info/wiki/it:network_virt