Come raggiungere un guest Vbox dall'host quando si utilizza la rete NAT


13

Usando Fedora o Ubuntu per l'host con i firewall spenti su ogni lato (vbox guest e host), cosa devo fare per raggiungere la macchina ospite usando un'interfaccia NAT proprio come sarebbe con un'interfaccia a ponte? (Solo dall'host vbox!)

Aggiornamento : ifconfigsul computer host:

# ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:41:56:6B:78:4E  
      inet addr:192.168.1.2  Bcast:.192.168.1.255  Mask:255.255.255.0
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:271850 errors:0 dropped:0 overruns:0 frame:0
      TX packets:144494 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:256776500 (244.8 MiB)  TX bytes:10670238 (10.1 MiB)
      Interrupt:16 Memory:fc500000-fc520000 

lo        Link encap:Local Loopback  
      inet addr:127.0.0.1  Mask:255.0.0.0
      UP LOOPBACK RUNNING  MTU:16436  Metric:1
      RX packets:77698 errors:0 dropped:0 overruns:0 frame:0
      TX packets:77698 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:0 
      RX bytes:104227086 (99.3 MiB)  TX bytes:104227086 (99.3 MiB)

vboxnet0  Link encap:Ethernet  HWaddr 0A:00:27:00:00:00  
      BROADCAST MULTICAST  MTU:1500  Metric:1
      RX packets:0 errors:0 dropped:0 overruns:0 frame:0
      TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

Risposte:


12

Secondo questa documentazione , le versioni correnti di VirtualBox non espongono le interfacce NAT interne al computer host. È possibile configurare regole speciali di port forwarding per raggiungere le caselle, ma anche l'host non è in grado di raggiungere l'intera interfaccia. Per questo dovresti usare un bridge.


Ho aggiornato la domanda. No, non ho alcun IP predefinito da Virtualbox.
LanceBaynes,

Vedi la risposta aggiornata. Scusate è da un po 'che non uso NAT in VirtualBox e la macchina che ho che utilizza ha interfacce secondarie fatte da me, apparentemente non VB.
Caleb,

12

Questo comando inoltrerà tutto il traffico TCP in arrivo sull'interfaccia localhost (127.0.0.1) tramite la porta 33890 alla porta 3389 nel guest

$ VBoxManage modifyvm "xp" --natpf1 "guestrdp,tcp,127.0.0.1,33890,,3389"

Aggiungi questo come commento alla mia risposta, non come risposta separata.
Caleb,

1
Inizialmente ho convertito questo in un commento, ma sembra che in realtà aggiunge una parte importante della risposta
Michael Mrozek

@Michael: Non è così importante in entrambi i casi, ma la soluzione non è in realtà ciò che la sua domanda chiede. Il port forwarding è diverso dall'esporre un'interfaccia di rete nello stesso modo del bridging, quindi non ho incluso la sintassi esatta nella mia risposta. Il comando che mostra è solo dalla documentazione che ho suggerito e collegato nel caso in cui il port forwarding fosse un'alternativa accettabile.
Caleb,

1

Non l'ho testato su un host Linux.

Sembra che tu voglia utilizzare NAT in modo che il tuo ospite possa uscire sulla rete, ma desideri anche accedere al guest direttamente dall'host senza utilizzare il port forwarding.

Se si creano due reti sul guest, una come rete NAT o NAT e la seconda come adattatore solo host, è possibile ottenere questo risultato.

La configurazione NAT consente al tuo ospite di uscire, l'adattatore solo host consente al tuo host di entrare.

Di solito uso reti NAT, quindi i miei vms possono parlare tra loro. Nella GUI di Windows, entrambe le impostazioni sono gestite in File-> Preferenze-> Rete

Scheda Reti NAT: aggiungi la rete NAT. Modificalo e assegnagli un nome o un intervallo ip personalizzato, se lo desideri.

Scheda Rete solo host - modifica l'interfaccia predefinita e assicurati che l'indirizzo ipv4 sia nella stessa rete (ma non nell'intervallo dhcp!) Della scheda server dhcp configurata. il mio non corrispondeva immediatamente, quindi la rete non funzionava.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.