VMware Port-Weiterleitung durch NAT



Mit Network Address Translation (NAT) wird auf einem Relay-Host ein IP-Packet so verpackt, dass nach aussen nicht mehr die IP des Senders sichtbar ist, sondern die des Relay-Hosts. Vom Sender gestartete Verbindungen funktionieren damit in den meisten Fällen transparent. Damit auf dem Sender Serverdienste angeboten werden können, müssen auf dem Relay-Host spezifische Ports an den Server weitergeleitet werden.

 

Wird unter VMware eine virtuelle Netzwerkkarte eines Gastsystems mit NAT konfiguriert, so gilt folgende Zuordnung der IP-Adressen des C-Netzwerkes:

 


IP-Adressbereich  
Verwendung 
<net>.1  
Host 
<net>.2  
NAT Device 
<net>.3 bis <net>.127  
statische Adressen 
<net>.128 bis <net>.254  
dynamische Adressen 
<net>.255  
Broadcast 


Die meisten Gastbetriebsysteme versuchen bei der Installation als erstes eine DHCP-Verbindung aufzubauen. Ist dies erfolgreich, so wird gemäss obiger Tabelle eine entsprechende IP-Adresse aus dem Pool <net>.128 bis <net>.254 vergeben. Um die statische Port-Weiterleitung zu aktivieren ist es jedoch sinnvoll, das GastOS auf die Verwendung statischer IP-Adressen umzustellen.

 

Auf dem Host-System werden in der Datei

  /etc/vmware/vmnet8/nat/nat.conf
die NAT-Regeln konfiguriert, mithin auch die Port-Weiterleitung. Unter dem Abschnitt [incomingtcp] werden für tcp-Verbindungen die Weiterleitungs-Zuordnungen zeilenweise angeführt in der Form:

 

  <HostPort> = <GastIP>:<GastPort>

 

So leitet zum Beispiel die Regel

 

  23 = 192.168.3.2:22

 

den Port 23 des Hostsystem um auf den Port 22 des VMware Clients mit der IP-Adresse 192.168.3.2. Ist auf dem VMware Client sshd aktiviert, so kann mit

 

  ssh -p 23 <vmhost> 

 

direkt auf eine Konsole des VMware Gastsystems zugegriffen werden.

 

 


VMware Host-Only Adapter startet nicht automatisch



In VMware Server 1.x kommt es vor, dass der Host-Only Adapter nicht automatisch startet. VMware entschied sich, den Adapter in einem Hintergrundprozess zu starten, versäumte es aber später beim Test des Adapters zu prüfen, ob der Prozess schon abgeschlossen ist. Im Logfile findet sich dann ein Eintrag der Form:

Could not get interface flags for vmnet1:

No such device Virtual device Ethernet0 will start disconnected.

Als Workaround empfehlen wir im File

 /usr/lib/vmware/net-services.sh
in der Zeile
 vmware_bg_exec 'Host-only networking on /dev/vmnet'"$vHubNr" \ 
den Ausdruck
 vmware_bg_exec
durch
 vmware_exec
zu ersetzen. Dadurch kein Hintergrundprozess gestartet um den Adapter zu finden.


Nach Oben