Configurările realizate până în acest moment sunt temporare. La repornirea stației host
regulile de NAT se pierd. Dorim să configurăm în mod persistent rutarea și regulile NAT.
Pentru a configura în mod persistent rutarea pe stația host
, edităm fișierul /etc/sysctl.conf
și decomentăm linia
net.ipv4.ip_forward=1
Astfel la fiecarea pornire a sistemului, rutarea va fi activată.
sysctl -p
pentru a aplica modificările din fișierul de configurare /etc/sysctl.conf
.
Pentru a salva toate regulile iptables
introduse în sistem se poate folosi comanda iptables-save
. În mod implicit aceste reguli sunt afișate pe consolă. Noi le vom salva în /etc/iptables-rules
folosind comanda:
root@host:~# iptables-save > /etc/iptables-rules
Regulile pot fi restaurate folosind comanda iptables-restore < /etc/iptables-rules
. Așadar trebuie să configurăm sistemul să execute această comanda la pornire. Modul cel mai uzual pentru a face acest lucru este adăugarea acestei comenzi în fișierul de configurare al interfeței:
root@host:~# cat /etc/network/interfaces [...] # The primary network interface auto eth0 iface eth0 inet dhcp up iptables-restore < /etc/iptables-rules
După ce ați făcut toate configurările, reporniți stația host
:
Dashboard -> Drop Down in dreptul masinii virtuale -> Soft Reboot Instance
În urma repornirii stației host
, va trebui sa rerulam scripturile de pregatire a infrastructurii pentru a recrea containerele. Vom vedea aplicată rutarea și regulile de NAT: (in cazul in care rutarea nu este activata, inseamna ca a fost suprascrisa de catre scripturile de pregatire a infrastructurii si va trebui s-o activati din nou)
root@host:~# sysctl net.ipv4.ip_forward net.ipv4.ip_forward = 1 root@host:~# iptables -t nat -L -n -v Chain PREROUTING (policy ACCEPT 30 packets, 5694 bytes) pkts bytes target prot opt in out source destination 0 0 DNAT tcp -- eth0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:10022 to:192.168.1.2:22 0 0 DNAT tcp -- eth0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:20022 to:192.168.2.2:22 0 0 DNAT tcp -- eth0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:30022 to:192.168.3.2:22 0 0 DNAT tcp -- eth0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:10023 to:192.168.1.2:23 0 0 DNAT tcp -- eth0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:20023 to:192.168.2.2:23 0 0 DNAT tcp -- eth0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:30023 to:192.168.3.2:23 Chain INPUT (policy ACCEPT 2 packets, 534 bytes) pkts bytes target prot opt in out source destination Chain OUTPUT (policy ACCEPT 16 packets, 958 bytes) pkts bytes target prot opt in out source destination Chain POSTROUTING (policy ACCEPT 15 packets, 918 bytes) pkts bytes target prot opt in out source destination 1 40 MASQUERADE all -- * eth0 0.0.0.0/0 0.0.0.0/0