hallo Vinzenz,
Wie wäre es, wenn Du die Konfiguration Deines virtuellen Netzwerkes hier detailliert darstellst. Mit diesen mangelhaften Informationen kann man Dir beim besten Willen nicht helfen.
Es gibt bei VMware (in diesem Fall auf einem Windows-Host) noch einen grafisch basierten "Netzwerkmanager". Auf einer Linux-Trägermaschine werden die nötigen Einstellungen über Scripts vorgenommen.
Wenn Deine Trägermaschine keine IP-Adresse gleichen Netzwerk wie der Rechner mit Deinem Apache hat, dann benötigst Du entsprechendes Routing dazwischen.
Richtig, aber genau deswegen ist eine der beiden virtuellen NICs auf eine IP gestellt, mit der sie im selben Subnetz angesiedelt ist wie eine der beiden Netzwerkkarten im Hostrechner. Auch die zweite befindet sich in einem Subnetz, das es als IP-Alias auf dem Hostrechner gibt.
Wie sind die virtuellen Netzwerkkarten, die VMware einrichtet konfiguriert?
Es gibt immer zwei Konfigurationen: eine auf dem Hostrechner und eine auf dem Gastsystem. Auf dem Hostrechner können bis zu zehn virtuelle NICs konfiguriert werden (bis VMware 5.5.4 waren es acht). Standardmäßig wird durchgezählt von "VMNet0" bis "VMNet9". Drei davon sind vorkonfiguriert: VMNet0, VMNet1 und VMNet8. VMNet0 als "bridged" - das heißt, wenn man die bei der Konfiguration der virtuellen Hardware auswählt, wird sie demselben Subnetz zugeordnet, das für die erste NIC des Hostrechners gilt und mit der gebridget. Damit kann dann beispielsweise die Internetverbindung des Hostrechners genutzt werden, und bei Windowsmaschinen funktioniert dann die Anzeige von "Netzwerkverbindungen". VMNet1 wird standardmäßig auf "host only" gestellt. Das bedeutet: ein anderes Subnet (irgendwas aus 192.168.xxx.xxx), keine Internetverbindung, aber eine "Netzwerkverbindung", so daß Dateiaustausch zwischen Host und Gast möglich ist. Ein auf dem Host laufender lokaler Apache ist zum Beispiel im Gastsystem erreichbar. VMNet8 wird auf NAT gestellt, damit wäre Routing zwischen Host und Gast möglich.
Diese Voreinstellungen reichen nicht aus, um auch im Gastsystem einen Apache betreiben zu können - naja, "betreiben" kann man ihn schon, aber er ist dann auch nur innerhalb dieses Gastsystems als "localhost" verfügbar. Ich stelle also VMNet2 so ein, daß es auf Hostseite als NAT behandelt wird - also gleiches Subnetz wie die erste im Host vorhandene NIC (192.168.0.0), Zuweisung einer IP über den VMware-internen DHCP-Server aus dem Bereich 192.168.0.128...192.168.0.255 und als Gateway 192.168.0.1. Über diese Schnittstelle kann die Internetverbindung laufen, und der auf dem Host vorhandene Apache ist im Gastsystem erreichbar (allerdings nicht alle virtuellen Hosts des Apache, sondern nur der erste). VMNet3 wird auf Hostseite auf das Subnetz 172.24.20.xxx gestellt und bekommt ebenfalls über DHCP eine Adresse 172.24.20.128...172.24.20.255.
Auf dem Gastsystem (beispielsweise Gentoo) wird VMNet2 zu eth0 mit unveränderter DHCP-IP-Adressse. VMNet3 wird zu eth1 mit festgelegter IP 172.24.20.1. Über eth0 läuft die Internetanbindung (und übrigens sind auch die anderen eventuell grade aktiven Rechner mit den IPs 192.168.0.x wechselseitig erreichbar), über eth1 soll eigentlich der im Gastsystem vorhandene Apache erreichbar sein - tat er jedenfalls bis VMware 5.5.4, deshalb diese Netzwerkeinstellungen.
Nutze die bekannten TCP/IP-Systemwerkzeuge zur Netzwerkdiagnose (z.B. ping), um herauszufinden, ob Du über TCP/IP zwischen "Trägermaschine" und der virtuellen Maschine, auf der Dein apache läuft - und zwar über die IP-Adresse, die Dein apache nutzt - kommunizieren kannst.
"Kommunizieren" kann ich über beide virtuelle NICs, das heißt, ping funktioniert anstandslos in beide Richtungen (vom Host zum Gast, vom Gast zum Host, vom Gast zu anderem Netzwerkrechner, von anderem Netzwerkrechner zum Gast sowie zwischen Host und anderen Netzwerkrechnern). Auch andere Diagnosemöglichkeiten (netstat, traceroute ...) liefern keine irgendwie problematichen Aussagen.
Es wäre noch möglich, daß die Windows-eigene Firewall etwas blockiert. Die ist ja auf dem Host aktiv. Tut sie aber nicht, bzw. ich hab sie so eingestellt, daß das Gastsystem nicht geblockt wird.
Ich habe bereits angegeben, daß ein ebenfalls als virtuelle Maschine laufendes Windows2003Server-Gastsystem, das exakt über dieselbe Netzwerkkonfiguration läuft und auf dem IIS installiert ist, keinerlei Probleme macht.
Da ich über ausreichend RAM im Hostrechner verfüge, können auch mehrere virtuelle Maschinen gleichzeitig nebeneinander laufen. Wenn ich also beispielsweise ein virtuelles Gentoo und ein virtuelles Debian laufen habe, erreiche ich von Debian aus sowohl den Apache des Hostrechners wie auch den Apache in Gentoo. Aber der Hostrechner bekommt eben den Apache aus Gentoo nicht - dafür aber kann ein anderer Netzwerkrechner (192.168.0.2) auf ihn zugreifen.
Ohne exaktere Angaben läuft Deine Problembeschreibung auf Rätselraten hinaus.
Wars jetzt exakt genug?
;-)
Grüße aus Berlin
Christoph S.