Contenitori di Reti

Docknet

Un Contenitore di Rete è un oggetto Docker che implementa un Software Defined Network (SDN).

Ciò è ottenuto modificando automaticamente le tabelle di routing e NAT (Network Address Translation) nell'ambiente iptables di Linux.

Forwarding

Perchè le reti Docker funzionino è necessario che il forwarding (parametro kernel) di Linux sia abilitato.

Di solito lo è di default.

Proviamo a disabilitarlo:

sudo sysctl -w net.ipv4.ip_forward=0

Ora lanciamo un container:

docker run --ti --rm --name web1 -d alpine sh

Otteniamo l'avvertimento:

WARNING: IPv4 forwarding is disabled. Networking will not work.

Il container parte lo stesso, e ci troviamo nella sua shell. Ma non potremo eseguire comandi di rete.

Usciamo con exit. Il container è rimosso automaticamente poichè l'avevamo lanciato con l'opzione --rm.

Riabilitiamo il forwarding:

sudo sysctl -w net.ipv4.ip_forward=1