Barra laterale

sistema:systemd-nspawn:container_con_ip_statico

Container Systemd-nspawn con Ip statico

Autore: Fabio Di Matteo
Ultima revisione: 20/07/2024 - 18:46

Immaginiamo di dover avviare un container basato su systemd-nspawn cn un webserver o altro servizio tcp su un determinato ip statico.

Il risultato finale è quello di raggiungere il nostro container all'indirizzo 192.168.31.10 alla porta 80 in questo caso.

Nel pc che ospita il container (pc reale)

Nel pc reale occorerà configurare come segue la rete. Ovvero occorrerà creare un file .network che si riferisca all'interfaccia di rete abbinata in automatico al nostro container quando avviato:

/etc/systemd/network/80-container-ve.network


[Match]
Name=ve-*
Driver=veth

[Network]
Address=192.168.31.1/24
LinkLocalAddressing=yes
DHCPServer=yes
IPMasquerade=yes
LLDP=yes
EmitLLDP=customer-bridge

Non dimentichiamoci di aprire le porte sul container tramite il file del container:

/etc/systemd/nspawn/fedora-web.nspawn

[Network]

port=tcp:80:80
port=tcp:2222:2222

Il nome del file deve essere uguale alla cartella che continene la radice del container.

Dentro il container

Nel container invece creare la controparte come segue. Notare la compatibilità degli ip:

/etc/systemd/network/80-container-host0.network

[Match]
Virtualization=container
Name=host0

[Network]
#DHCP=yes
Address=192.168.31.10/24
Gateway=192.168.31.1
DNS=8.8.8.8
LinkLocalAddressing=yes
LLDP=yes
EmitLLDP=customer-bridge

[DHCP]
UseTimezone=yes

sistema/systemd-nspawn/container_con_ip_statico.txt · Ultima modifica: 20/07/2024 - 18:56 da Fabio Di Matteo