Renvoi de port NAT VirtualBox sur Ubuntu 64?

J'ai un système d'exploitation virtuel 64 bits Ubuntu 9.04 fonctionnant sur un système d'exploitation OS 64 bits d'Ubuntu 9.04 (oui, le même système d'exploitation). Je voudrais exécuter un serveur Web sur l'invité et le rendre accessible via NAT sur l'hôte.

I (pensez-moi) a suivi les instructions de transfert de port VirtualBox , mais l'invité / VM ne démarre pas après la configuration.

Voici la configuration que j'ai exécuté:

VBoxManage setextradata "<Guest Name>" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guesthttp/Protocol" TCP VBoxManage setextradata "<Guest Name>" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guesthttp/GuestPort" 80 VBoxManage setextradata "<Guest Name>" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guesthttp/HostPort" 8080 

<Guest Name> nom de l'invité <Guest Name> est le nom de l'image VM invitée.

L'erreur ressemble à ceci:

Entrez la description de l'image ici

La même erreur se produit indépendamment de l'exécution de la configuration pendant que la machine virtuelle est en cours d'exécution ou qu'elle ne fonctionne pas.

Les ajouts de clients sont installés.

Comment configurer correctement le renvoi de port NAT? Qu'est-ce qui cause cette erreur?

Obtenez tous les paramètres que vous avez fait pour ce WM avec la commande:

 VBoxManage.exe getextradata "Name_of_VM" enumerate 

Vous devriez voir toute la valeur transmise à VM.

 Key: GUI/SaveMountedAtRuntime, Value: yes Key: GUI/ShowMiniToolBar, Value: yes Key: GUI/MiniToolBarAlignment, Value: bottom Key: GUI/LastCloseAction, Value: save Key: GUI/LastWindowPostion, Value: 345,133,640,522 Key: GUI/Fullscreen, Value: off Key: GUI/Seamless, Value: off Key: GUI/AutoresizeGuest, Value: on Key: GUI/MiniToolBarAutoHide, Value: on Key: VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/HostPort, Value: 22 Key: VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/GuestPort, Value: 22 

Supprimez toutes les lignes commencent par VBoXInternal en copiant et collez la ligne à la commande comme celle-ci

 VBoxManage.exe setextradata "Name_of_VM" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/guesthttp/HostPort" 

Sans valeur à la fin. À la fin, vous devriez énumérer à nouveau et ne plus voir de lignes de VBoxInternal.

Maintenant, vous pouvez rétablir les règles NAT, avec un nom différent pour les règles.

 Key: VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/HostPort, Value: 2222 Key: VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/GuestPort, Value: 22 Key: VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/Protocol, Value: TCP Key: VBoxInternal/Devices/pcnet/0/LUN#0/Config/guesthttp/Protocol, Value: TCP Key: VBoxInternal/Devices/pcnet/0/LUN#0/Config/guesthttp/GuestPort, Value: 80 Key: VBoxInternal/Devices/pcnet/0/LUN#0/Config/guesthttp/HostPort, Value: 8080 

Sous linux, vous devez rappeler que PORTS <1024 NE DOIT PAS être redirigé. Utilisez 2222 pour guestsh et 8080 pour guesthttp (Exemple) Pour faciliter l'utilisation, j'utilise personnellement <1014 port sous WINDOWS.

J'espère que cela devrait vous aider.

(Désolé pour l'anglais! Je suis français: P)

Jacques.guensherian

J'ai eu le même problème — Je pense que Oracle a changé la façon dont NAT est configuré. C'est beaucoup plus propre maintenant. Ceci est copié à partir du manuel de l'utilisateur, qui est toujours à: http://www.virtualbox.org/manual/UserManual.html

 VBoxManage modifyvm "VM name" --natpf1 "guestssh,tcp,127.0.0.1,2222,,22" 

"Cela transmet tout le trafic TCP arrivant sur l'interface localhost (127.0.0.1) via le port 2222 au port 22 dans l'invité", dans l'invité. "

J'ai eu le même symptôme lorsque j'ai configuré le renvoi de port dans VirtualBox.

Lorsque je crée de nouvelles machines virtuelles dans VirtualBox, la carte réseau par défaut est e1000 , pas pcnet selon les instructions que vous avez suivies.

Si vous modifiez les paramètres de configuration à:

 VBoxManage setextradata "<Guest Name>" "VBoxInternal/Devices/e1000/0/LUN#0/Config/guesthttp/Protocol" TCP VBoxManage setextradata "<Guest Name>" "VBoxInternal/Devices/e1000/0/LUN#0/Config/guesthttp/GuestPort" 80 VBoxManage setextradata "<Guest Name>" "VBoxInternal/Devices/e1000/0/LUN#0/Config/guesthttp/HostPort" 8080 

Cela devrait résoudre votre problème.


L'option de configuration ci-dessus fonctionnera pour le premier adaptateur e1000 , d'où l' e1000 / 0 dans les paramètres. Vérifiez si la carte réseau utilise la carte réseau que vous essayez de transférer.

Sur mon installation, les adaptateurs réseau disponibles sont deux "PcNet" et trois "Intel Pro 1000".

Les adaptateurs sont désignés par les clés suivantes:

  • Premier PCNet: pcnet/0
  • Deuxième PCNet: pcnet/1
  • Premier Intel PRO / 1000: e1000/0
  • Second Intel PRO / 1000: e1000/1
  • Troisième Intel PRO / 1000: e1000/2

Si votre adaptateur est, par exemple, le deuxième "PRO / 1000" dans la liste, vous devez modifier la configuration ci-dessus à e1000 / 1 (etc.).