Ho installato Proxmox VE 5.1 su un VirtualBox in macOS (10.12).
Il SO guest, Debian Stretch (Proxmox è costruito su debian), ha 2 interfacce di rete "fisiche" (configurate da VirtualBox), Host-Only
e NAT
, Posso accedere ad internet attraverso l'interfaccia NAT:
root@proxmox:~# traceroute 1.1.1.1
traceroute to 1.1.1.1 (1.1.1.1), 30 hops max, 60 byte packets
1 10.0.3.2 (10.0.3.2) 0.792 ms 0.694 ms 0.625 ms
2 1dot1dot1dot1.cloudflare-dns.com (1.1.1.1) 2.829 ms 2.818 ms 3.318 ms
La / etc / network / interfaces nell'host debian contiene:
auto lo
iface lo inet loopback
auto enp0s3
iface enp0s3 inet static
address 192.168.56.101
netmask 255.255.255.0
auto enp0s8
iface enp0s8 inet static
address 10.0.3.15
netmask 255.255.255.0
gateway 10.0.3.2
#NAT
auto vmbr0
iface vmbr0 inet static
address 172.16.1.1
netmask 255.255.255.0
bridge_ports dummy1
bridge_stp off
bridge_fd 0
Il "guest", debian vede su macOS ("host") da entrambe le interfacce (macOS IPs: 192.168.56.1, 10.0.3.2).
Il vmbr0
l'interfaccia virtuale è stata creata per i contenitori LxC proxmox, ho aggiunto una regola iptables per inviare tutto il traffico da vmbr0 al enp0s8
interfaccia (l'interfaccia NAT in VirtualBox).
iptables -A POSTROUTING -s 172.16.1.0/24 -o enp0s8 -j MASQUERADE -t nat
Il problema è che quando creo un contenitore LXC dentro proxmox, usando il vmbr0
come interfaccia di rete, il contenitore LXC non ha accesso a Internet, posso eseguire il ping sul "master" proxmox (IP: 172.16.1.1) ma nient'altro.
Ho anche provato a usare enp0s8 come bridge_ports
parametro, stesso risultato.
Il file /etc/network/interfaces
nel contenitore LXC (Ubuntu 16.04) contiene:
auto eth0
iface eth0 inet static
address 172.16.1.100
netmask 255.255.255.0
gateway 172.16.1.1
Ho una configurazione abbastanza simile in un altro server proxmox (ma in bare metal, non nell'installazione di VirtualBox) e funziona bene.
Qualcuno può dirmi cosa non è corretto o mancante nella configurazione di rete per consentire ai container l'accesso a Internet?