Come impedire a una macchina host di inviare / ricevere pacchetti con la seguente configurazione di rete:
eth0 - NIC fisica :: non configurato;
tun0 - NIC virtuale per VM quale ruolo è il gateway per altre macchine virtuali :: auto configurato ( dhcp ), ha accesso a Internet, riceve ip dal router ( 192.168.1.1/24 );
tun1 - NIC virtuale, il gateway per altre macchine virtuali :: 10.0.2.1/24 , dhcpd , iptables con NAT masquerading 10.0.2.0/24 tramite tun0 (che è eth0 nella VM guest)
bridge0 - bridge che include eth0 e tun0 :: non configurato
bridge1 - bridge che include tutte le NIC virtuali di VM (tun {1 ...}) :: auto configurate, riceve ip dalla VM del gateway dhcpd ( 10.0.2.1 ), ma la route predefinita attraverso 10.0.2.1 viene eliminata .
Voglio isolare completamente la mia macchina host dalla rete esterna (Internet nel mio caso). E ho bisogno di accedere alla rete VM 10.0.2.0/24 . Quindi la tabella del routing sul computer host è simile a:
Destination Gateway Genmask Flags Metric Ref Use Iface
10.0.2.0 0.0.0.0 255.255.255.0 U 0 0 0 br1
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
127.0.0.0 127.0.0.1 255.0.0.0 UG 0 0 0 lo
Ma c'è una VM che è il gateway per Internet per altre VM, ma non per l'host (che fa parte della rete 10.0.2.0/24). Sono interessato se l'eliminazione del gw predefinito è sufficiente o se alcuni software intelligenti in esecuzione nello spazio utente possono rilevare che 10.0.2.1 è il gateway per Internet e il kernel di Linux consente di instradare verso host sconosciuti attraverso questo.