lordgurke
Goto Top

Hamachi Routing

Hallo zusammen,

ich stehe gerade vor folgendem Problem:
Wir wollen mehrere Rechner über Hamachi zu einem privaten Netz zusammenschließen*. Das funktioniert ja, allerdings gibt es hier mehrere Rechner in einem lokalen Netz, von dem aus jeder auf einen bestimmten Hamachi-Client zugreifen soll, ohne dass ich hier auf jedem Rechner Hamachi installieren muss - mit den Lizenzen würde das nämlich irgendwie doch ziemlich ins Geld gehen.
Dafür wollte ich eine Lösung schaffen: Da die Kommunikation über Hamachi zu 99% nach Client-Server-Prinzip abläuft, dachte ich mir, könnte man sich ja einen Windows-Server nehmen, auf dem der Routing-Dienst ausgeführt wird, dort Hamachi installieren und dann an jedem Rechner statische Routen anlegen, die alle Pakete, die ins Netz 5.0.0.0/8 gehen über den Win-Server laufen lassen.
Soviel zur Theorie, die Praxis sieht so aus, dass es nicht funktioniert:
Der Server ist im Hamachi-Netz, kann auch alle anpingen, aber auf dem Client kann ich nur eine einzige Hamachi-IP anpingen: Nämlich die des Servers.
Alle anderen gehen nicht, und ein Traceroute bricht am Win-Server ab.
Der Server wurde so eingerichtet, dass er ausschließlich LAN-Routing macht, ich vermute jetzt mal, dass da der Fehler liegt. Wenn ich allerdings NAT auf der lokalen Schnittstelle aktiviere wird es auch nicht besser.
Vermutlich habe ich irgendeinen doofen Denkfehler (bei 35°C Raumtemperatur kein Wunder...) face-wink

Danke schonmal
Max


*=Hamachi deshalb, weil es mit "normalen" VPN-Verbindungen ziemliche Bandbreitenprobleme gegeben hätte, denn im Gegensatz zur klassischen VPN läuft die Kommunikation bei Hamachi Peer-To-Peer ab.


EDIT: Bin wirklich etwas drömmelig, vielleicht hätte ich auf dem Hamachi-Adapter NAT aktivieren sollen...

Content-Key: 91052

Url: https://administrator.de/contentid/91052

Printed on: April 25, 2024 at 03:04 o'clock

Member: jogiman2k
jogiman2k Aug 23, 2008 at 19:38:06 (UTC)
Goto Top
Hallo!

ich habe genau dasgleiche Problem.. Nur leider steht mir kein Windows Server zur Verfügung.
funktioniert das ganze auch mit XP? Wenn ja was müsste man da einstellen? Wie ist das gemeint mit "..hätte ich auf dem Hamachi-Adapter NAT aktivieren sollen.." ?

Grüße
Member: LordGurke
LordGurke Aug 23, 2008 at 22:10:09 (UTC)
Goto Top
Unter XP funktioniert das (eventuell), wenn du in den Netzwerkverbindungen mit rechts auf den Hamachi-Adapter klickst, die Eigenschaften aufrufst und unter "Erweitert" das Häkchen bei "Anderen Benutzern im Netzwerk gestatten, die Internetverbindung dieses Computers zu verwenden" und wählst im Feld darunter deine Netzwerkkarte aus, mit der du dich in deinem lokalen Netz befindest.
Das Häkchen bei "Anderen Benutzern gestatten, die gemeinsame Nutzung der Internetverbindung zu steuern..." solltest du entfernen, das macht in diesem Fall keinen Sinn und könnte zu Problemen führen.
Doofer Nebeneffekt: Windows zwingt dich dazu, auf deiner Netzwerkkarte die IP-Adresse 192.168.0.1 zu nutzen, was natürlich noch fataler ist, wenn bereits dein Router diese IP nutzt (in dem Fall solltest du vorher die IP-Adresse deines Routers ändern!).
Dadurch verlierst du natürlich auch alle Einstellungen hinsichtlich des Gateways und der DNS-Server auf dieser Karte und müsstest diese von Hand erneut vornehmen.
Die richtigen Werte solltest du dir von einem anderen Rechner im Netzwerk besorgen (Status der Netzwerkverbindung anzeigen, dann auf "Netzwerkunterstützung" und "Details" klicken).
Selbstverständlich nur Gateway und DNS-Server ändern, die IP so lassen wie sie ist face-wink

Um nun mit anderen Rechner auf in Hamachi verbundene Netzwerke zugreifen zu können, müsstest du an jedem Rechner, der das können soll, über Start -> Ausführen "cmd" aufrufen und folgendes eintippen: (Jedes ? ist ein Leerzeichen)
route?add?5.0.0.0?netmask?255.0.0.0?192.168.0.1?-p

Sollte Hamachi bereits auf diesem Rechner installiert sein, deaktiviere bitte auch den Netzwerkadapter von Hamachi in den Netzwerkverbindungen.
Mit diesem Befehl weist du den Rechner an, alle Daten, die an eine IP gehen, die mit 5.xxxxx anfängt, nicht wie alle anderen Pakete über deinen Internetrouter, sondern über den dafür eingerichteten Rechner mit der IP 192.168.0.1 zu routen. Das "-p" gibt an, dass dieser Routeneintrag auch nach einem Reboot des Rechners erhalten bleibt.
Um diese Route aufzuheben - beispielsweise, wenn auf einem der Clients doch ein eigenständiges Hamachi installiert werden soll - tippst du folgenden Befehl ein:

route?delete?5.0.0.0


Die ganze Sache hat jetzt noch einen Haken:
Falls dein gesamtes Netzwerk nicht bereits mit IPs nach dem Muster 192.168.0.xxx arbeitet, bedeutet das für dich, dass du die IP-Adresse deines Internetrouters ändern müsstest, und zwar in eine 192.168.0.xxx-Adresse - idealerweise würde sich hier 192.168.0.2 oder so anbieten.
Die Rechner sollten - wenn sie auf DHCP resp. automatischen Bezug der Adresse eingerichtet sind - spätestens nach einem Reboot eine passende IP bekommen.
Arbeitest du mit statischen Adressen, wird es ein wenig fummeliger, denn dann müsstest du auch die Adressen der Clients von Hand ändern.


Zu deiner Frage wegen meiner Bemerkung über NAT:
NAT bedeutet Network Address Translation und beschreibt ein Verfahren, mit dem IP-Adressen übersetzt werden können.
Nehmen wir einen normalen Internetrouter zu Hause als Beispiel:
Du hast eine einzige öffentliche IP, allerdings hat jeder deiner (sagen wir mal) 5 Rechner zu Hause eine eigene private IP.
Die privaten IPs (192.168.xxxx) heißen deswegen so, weil sie im Internet streng genommen nicht existieren, denn sie sind nur für den internen Einsatz innerhalb eines privaten Netzwerks gedacht. Damit aber jeder Rechner mit nur einer einzigen nach außen hin existenten IP kommunizieren kann, müssen die Adressen durch deinen Router zu Hause übersetzt werden.
Der merkt sich zum Beispiel: 192.168.0.7 hat gerade ein Paket an 82.149.225.22 geschickt.
Wenn da jetzt eine Antwort zurückkommt, weiß der Router genau "Aaah, das war nicht 192.168.0.3, sondern 192.168.0.7, der kriegt das Paket zurück!".
Das ist auch der Grund, warum ein Rechner hinter einem NAT-Router so gegen ziemlich jede Attacke aus dem Internet geschützt ist, denn bekommt der Router ein Paket von einer IP-Adresse aus entgegengeballert, zu der er sich nicht gemerkt hat, wer es angefordert haben könnte (weil es nunmal keiner angefordert hat), verwirft er es, weil er nicht weiß, wem es weitergeleitet werden muss.
Das war auch der Grund, warum ich auf dem Hamachi-Adapter NAT aktivieren musste, denn über Hamachi habe ich nur eine einzige öffentliche IP, in dem loaklen Netz deutlich mehr, also muss der Server die Adressen fein säuberlich übersetzen.
Diese Einstellung kann nur explizit über Windows Server vorgenommen werden, bei XP wird sie automatisch aktiviert.
Deshalb solltest du beachten, dass du nicht mehr alles über Hamachi machen kannst.
Willst du zum Beispiel spielen, kann nur der eine Rechner, auf dem Hamachi läuft, als Server arbeiten (wenn überhaupt, hab es wie gesagt nicht probiert), spielen selbst solltest du aber problemlos können.


Ich hoffe, ich konnte dir weiterhelfen face-smile
Member: jogiman2k
jogiman2k Aug 23, 2008 at 22:28:17 (UTC)
Goto Top
Hallo!

Danke für deine extrem lange und detaillierte Antwort!

Also in meinem Fall ist es natürlich so, dass es eben nicht das 192.168.0.* Netz ist, und dass die Ip des Router nich geändert werden kann.

Mein Lösungsansatz sieht momentan so aus: Der VPN Client trägt in seiner Hamachi Verbindung den Hamachi Server (5.x.x.x ) als Gateway ein. Die Cients im lokalen Netz tragen alle die route -p add 5.0.0.0 netmask 255.0.0.0 5.x.x.x.
Der Registry wert HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters habe ich auf 1 gesetzt.
Das funktioniert aber leider so nicht. Kein Ping kommt durch...

So und was noch zu sagen ist: Wir wollen tatsächlich spielen und zwar C&C generals. Das Problem bei diesem Spiel ist aber, das alle Computer direkten Zugriff auf alle andern haben müssen.

Vlt hast du ja noch ne Idee
Also danke nochmal und gute Nacht
Grüße
Member: LordGurke
LordGurke Aug 24, 2008 at 14:48:16 (UTC)
Goto Top
Da ist jetzt das Problem: Ohne NAT funktioniert die ganze Sache leider nicht, denn es muss ja auf jeden Fall eine IP auf mehrere IPs aufgeteilt werden.

Warum das mit der VPN nicht funktioniert kann ich dir leider nicht sagen, vermutlich ist das aber wieder mal eine Limitierung in Windows XP, mit der kein Routing zwischen VPN und restlichem Netz möglich ist.
Eine Lösung wäre, dass du irgendwo einen alten Rechner abstellst, auf diesem Linux installierst (Debian bietet sich hier an, weil ich da einmal eine Anleitung zu gefunden habe face-smile ), auch dort Hamachi installierst und dann diesen als Router verwendest.
Eine Anleitung gibt es hier, funktioniert auch mit Hamachi, wenn man das dort erwähnte eth3 durch ham0 ersetzt (ham0 its zu 99% der Name des Hamachi-Adapters, lässt sich mit ifconfig aber herausbekommen).
http://loktonium.blogsport.de/2008/02/05/debian-als-nat-router-ip-forwa ...

Vielleicht müssten die Firewall-Regeln etwas angepasst werden, damit Spielen möglich ist - ich denke aber mal, dass NAT nicht das ganz große Problem sein dürfte - falls es doch nicht funktioniert, müsstest du auf jedem Rechner einen Hamachi-Client installieren, eine andere Möglichkeit fällt mir da gerade leider nicht ein, sorry.