Routing auf eine VM direkt auf einem Server
Hallo zusammen,
folgendes:
Debian Linux Server mit Kernel 2.6.8-3-686
Feste IP Adresse
Ip_forward=yes
VMWare Virtual Server 1.0.0
Eine VM mit Windows 2003 Web Edition (IP 172.16.43.10)
Netzwerktechnisch gibt es eth0 (fest IP) vmnet1(host only ip 172.16.43.1) und vmnet 8 (nat)
Die VM nutzt vmnet1 da iptables das Nat & Forwarding machen soll.
Hier ein Ausschnitt aus dem Script für iptables
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 8099 -j DNAT --to-destination 172.16.43.10:8099
iptables -A FORWARD -i eth0 -d 172.16.43.10 -p tcp --dport 8099 -j ACCEPT
iptables -A FORWARD -i vmnet1 -s 172.16.43.10 -j ACCEPT
iptables -A FORWARD -o vmnet1 -d 172.16.43.10 -j ACCEPT
Das W2003 System kann ohne Probleme auch aufs Internetzugreifen.
Es soll vom Internet her auf bestimmte Dienste des W2003 Systems zugegriffen werden doch das klappt leider nicht.
Wie oben zu erkennen ist das Prerouting & Forwarding eingetragen nur kann man auf den Dienst nicht zugreifen.
Jemand eine Idee? Hab ich was übersehen? Vielen Dank für eure Hilfe.
folgendes:
Debian Linux Server mit Kernel 2.6.8-3-686
Feste IP Adresse
Ip_forward=yes
VMWare Virtual Server 1.0.0
Eine VM mit Windows 2003 Web Edition (IP 172.16.43.10)
Netzwerktechnisch gibt es eth0 (fest IP) vmnet1(host only ip 172.16.43.1) und vmnet 8 (nat)
Die VM nutzt vmnet1 da iptables das Nat & Forwarding machen soll.
Hier ein Ausschnitt aus dem Script für iptables
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 8099 -j DNAT --to-destination 172.16.43.10:8099
iptables -A FORWARD -i eth0 -d 172.16.43.10 -p tcp --dport 8099 -j ACCEPT
iptables -A FORWARD -i vmnet1 -s 172.16.43.10 -j ACCEPT
iptables -A FORWARD -o vmnet1 -d 172.16.43.10 -j ACCEPT
Das W2003 System kann ohne Probleme auch aufs Internetzugreifen.
Es soll vom Internet her auf bestimmte Dienste des W2003 Systems zugegriffen werden doch das klappt leider nicht.
Wie oben zu erkennen ist das Prerouting & Forwarding eingetragen nur kann man auf den Dienst nicht zugreifen.
Jemand eine Idee? Hab ich was übersehen? Vielen Dank für eure Hilfe.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 34936
Url: https://administrator.de/forum/routing-auf-eine-vm-direkt-auf-einem-server-34936.html
Ausgedruckt am: 24.12.2024 um 12:12 Uhr
4 Kommentare
Neuester Kommentar
Also, ich sehe das so:
Erstmal verstehe ich nicht, wiso du vmnet1 nutzt (host-only).
Host-only bedeutet, der Host kommuniziert mit der VM, die VM jedoch nicht mit dem normalen Netz. Gedacht zum Aufbau eines virtuellen Netzes im Host, ohne Zugang zum normalen Netz. Für Deine Zwecke könntest du VMnet8 nutzen - doch du willst ja nicht das VMWare NAT nutzen, sondern IPTABLES soll NAT machen.
Also würde ich spontan sagen - schliesse eth0 und die VM per VMnet0 zusammen.
Gib der VM eine IP aus dem selben IPBereich in dem sich auch eth0 befindet (z. B. 172.16.43.3). Ändere im IPTABLES script die "vmnet" einträge durch die IP der VM.
Ob das so hinhaut kann ich allerdings nicht sagen, da ich iptables in Verbindung mit VMWare nicht getestet habe. Forwarding müsste ok sein, bzw. notwendig (die VM ist schliesslich nichts anderes als "virtueller PC", auf den der Host forwarden soll.
Könnte mich aber auch irren. '
- du hast eine Netzwerkkarte (eth0)
- du hast virtuelle Switches (vmnet 1-8)
- du machst auf dem Host Rechner NAT um die privaten IPs der VM von aussen erreichen zu können
Erstmal verstehe ich nicht, wiso du vmnet1 nutzt (host-only).
Host-only bedeutet, der Host kommuniziert mit der VM, die VM jedoch nicht mit dem normalen Netz. Gedacht zum Aufbau eines virtuellen Netzes im Host, ohne Zugang zum normalen Netz. Für Deine Zwecke könntest du VMnet8 nutzen - doch du willst ja nicht das VMWare NAT nutzen, sondern IPTABLES soll NAT machen.
Also würde ich spontan sagen - schliesse eth0 und die VM per VMnet0 zusammen.
Gib der VM eine IP aus dem selben IPBereich in dem sich auch eth0 befindet (z. B. 172.16.43.3). Ändere im IPTABLES script die "vmnet" einträge durch die IP der VM.
Ob das so hinhaut kann ich allerdings nicht sagen, da ich iptables in Verbindung mit VMWare nicht getestet habe. Forwarding müsste ok sein, bzw. notwendig (die VM ist schliesslich nichts anderes als "virtueller PC", auf den der Host forwarden soll.
Könnte mich aber auch irren. '