Guten Tag, ich betreibe (privat) einen Laptop auf Windows 7, auf dem unter anderem ein Subversion-Server läuft. Das hat sich einfach so ergeben, da mitlerweile auch der Laptop genügend Festplattenspeicherplatz und Rechenleistung hat, und andererseits der Laptop auch immer dann im lokalen Netzwerk ist, wenn ich auch da bin. Problematisch wird es mit externals in Subversion-Repositories: Auf dem Laptop kann ich sie problemlos mit localhost adressieren. Dann sind sie allerdings, wenn das Repository auf einem anderen Gerät ausgecheckt wird, nicht erreichbar. Ich kann sie mit der IP adressieren. Dann sind sie vom Laptop oder von anderen Geräten im lokalen Netzweil korrekt erreichbar. Will ich allerdings vom Laptop, der das Repository mit sich herumträgt, auf das Repository zugreifen, wenn er nicht im Netzwerk hängt, funktioniert das natürlich nicht - er hat ja seine IP nicht mehr. Auf Anhieb fallen mir zwei Lösungen ein: a) Dem Laptop eine "virtuelle Netzwerkkarte" spendieren und dieser eine feste IP zuweisen. b) Dem Laptop einen irgendwie anders auflösbaren Hostnamen zuweisen. Zu a): Kennt jemand ein Programm, das eine virtuelle Netzwerkkarte bei ansonsten minimalem Einfluß auf das Betriebssystem mitliefert? Oder b): Gibt es eine Möglichkeit, einem Windows-7-PC einen Hostnamen zu spendieren, der im LAN und per localhost per svn:// auflösbar ist?
Domain Network Service schrieb: > Gibt es eine Möglichkeit, einem Windows-7-PC einen Hostnamen zu > spendieren, der im LAN und per localhost per svn:// auflösbar ist? Das hängt letztlich davon ab, wer im jeweiligen Netz die Namensauflösung macht und wie der organisiert ist. Bei uns in der Firma werkelt eine Fritzbox, und diese trägt sehr wohl für die Hostnamen, die man als Client beim DHCP einreicht, dann auch mit dem Erteilen der IP-Adresse einen DNS-Eintrag nach, sodass diese Hosts sowohl vorwärts als auch rückwärts auflösbar sind (mit der Pseuodomain .fritz.box). Fummelig ist es nur, wenn ein Laptop sowohl via Ethernet als auch WiFi eingebucht ist. Wenn du aber in ein anderes Netz kommst, wo die lokale DNS-Autorität nicht so organisiert ist, dann klappt das natürlich nicht mehr. Du kannst dir natürlich deinen eigenen Namen immer noch als weiteren Alias für die 127.0.0.1 in /etc/hosts, ähem, C:\Windows\System32\drivers\etc\hosts ergänzen.
:
Bearbeitet durch Moderator
Jörg W. schrieb: > Das hängt letztlich davon ab, wer im jeweiligen Netz die Namensauflösung > macht und wie der organisiert ist. Hallo Jörg, vielleicht ist das in meiner Anfrage nicht richtig herübergekommen: Die Namensauflösung soll auch dann noch funktionieren, wenn der Laptop nicht mehr in seinem heimischen Netz (sondern z.B. komplett ohne Netz oder im fremden Netz) verfügbar ist. Ich will ja z.B. ein Checkout, das auf dem Laptop liegt, auf Repositories, die ebenfalls auf dem Laptop gespeichert sind, auch dann aus- und einchecken können, wenn kein Heimnetz vorhanden ist.
Hosts-Datei ist ein guter Hinweis. Dann brauche ich nur wieder die niemals-verschwindende IP dazu, womit wir wieder bei Frage a) wären. Ich bin gerade nicht sicher, ob ein Name, der in der hosts eingetragen ist, von anderen Netzwerkgeräten gelesen werden kann. Aber egal: das könnte ich mit dem Router lösen.
Irgendwo müssen ja die svn-Daten liegen. Und diese Stelle muss eben über das Netz erreichbar sein, wen du ein- und auschecken möchtest. Das heißt, wenn dein Laptop bei Tante Emma zu Hause über WLAN im Netz ist, muss er den Weg zum Firmenserver kennen, um auf das svn-Verzeichnis zugreifen zu können. Also muss das svn-Verzeichnis über das Internet erreichbar sein. Oder du richtest auf dem Firmenserver einen VPN-Zugang ein, den du von überall auf der Welt erreichen kannst. Dann musst du nur noch den VPN-Clienten auf dem Laptop installieren, damit du (egal wo du gerade bist) immer das svn-Verzeichnis auf dem Firmenserver erreichen kannst.
Domain Network Service schrieb: > Hosts-Datei ist ein guter Hinweis. Dann brauche ich nur wieder die > niemals-verschwindende IP dazu, womit wir wieder bei Frage a) wären. Diese niemals verschwindende IP-Adresse ist die 127.0.0.1. Daher schrieb ich ja, den eigenen Namen als Alias dazu tragen. Damit löst du das Problem, dass der Computer sein eigenes Repository auch dann erreichen kann, wenn er ansonsten nicht in einem Netz liegt. Allerdings ließe sich dieses Problem auch über eine file:///-URL lösen. D. h. du checkst lokal über file:///path/to/repo aus, remote dagegen über svn://hostname/path/to/repo. > Ich bin gerade nicht sicher, ob ein Name, der in der hosts eingetragen > ist, von anderen Netzwerkgeräten gelesen werden kann. Natürlich nicht. > Aber egal: das > könnte ich mit dem Router lösen. So ist es.
Domain Network Service schrieb: > . Dann brauche ich nur wieder die niemals-verschwindende IP dazu, womit > wir wieder bei Frage a) wären. Und die "niemals-verschwindende IP" hat jeder Rechner ab Werk. Jörg W. schrieb: > Du kannst dir natürlich deinen eigenen Namen immer noch als weiteren > Alias für die 127.0.0.1 in /etc/hosts, ähem, > C:\Windows\System32\drivers\etc\hosts ergänzen. Und genau das ist der Trick. Häng' also diese Zeile an die hosts-Datei an:
1 | 127.0.0.1 meinnotebook |
(statt "meinnotebook" trägst Du natürlich den Namen ein, den Du da sehen willst). Damit wird der Name auf Deinem Notebook immer zur localhost-Adresse aufgelöst, und funktioniert immer, egal, wie die sonstige Netzwerkkonfiguration aussieht.
Geht "localhost" nicht immer, auch ohne aktive Verbindung? Stichwort Loopback Interface. Oder kann Windows das inzwischen auch nicht mehr...
Das geht bei Repositories. Sie dürfen für jeden Client auf einer unterschiedlichen URL liegen. Bei externals muß das zugehörige Repository für jeden Client auf der gleichen URL liegen.
Rufus Τ. F. schrieb: > Häng' also diese Zeile an die hosts-Datei an: 127.0.0.1 > meinnotebook Nee, nicht anhängen. Die linke Seite muss in der hosts-Datei eindeutig sein, darf also nur einmal da sein. Da es schon einen Eintrag für 127.0.0.1 gibt, muss man den erweitern:
1 | 127.0.0.1 localhost meinnotebook |
Domain Network Service schrieb: > Bei externals muß das zugehörige Repository für jeden Client auf der > gleichen URL liegen. Ja, stimmt. Hatte vergessen, dass es dir um Externals geht.
OK, ich habe gerade gefunden: einen "Virtuel Loopback adapter" kann man mittlerweile problemlos ohne irgendwelche Programme mit Bordmitteln installieren. (Womit dann auch der Suchbegriff für andere Leser mit dem selben Problem genannt wäre). Damit ist die Lösung recht einfach: 1. Virtual Loopback-Adapter mit IP im Subnetz des Heimnetzes einrichten. 2. Namen per localhost vergeben 3. Gleichen Namen per Router-DNS vergeben 4. Glücklich sein Insbesondere Punkt 4 sollte man nicht vergessen. Danke für die Ideen!
Hallo Wenns nur um svn externals geht sollte es reichen statt svn://servername/repository ^/repository zu schreiben (oder so ähnlich) ^/ heisst vom gleichen Server...
Jörg W. schrieb: > Nee, nicht anhängen. Die linke Seite muss in der hosts-Datei eindeutig > sein, darf also nur einmal da sein. In der Windows-Variante, in der ich gerade nachgesehen hatte, steht localhost nur in auskommentierter Form drin und der Hinweis, daß das der Netzwerkstack selbst erledigen würde.
Rufus Τ. F. schrieb: > Jörg W. schrieb: >> Nee, nicht anhängen. Die linke Seite muss in der hosts-Datei eindeutig >> sein, darf also nur einmal da sein. > > In der Windows-Variante, in der ich gerade nachgesehen hatte, steht > localhost nur in auskommentierter Form drin und der Hinweis, daß das der > Netzwerkstack selbst erledigen würde. Stimmt. Wobei die Frage ist, auf was er 127.0.0.1 rückwärts auflöst, wenn man nicht "localhost" als ersten Namen reinschreibt. Normalerweise ist der erste Name aus der Liste ja der, der für die Rückwärtsauflösung benutzt wird.
Ach wie lobe ich mir da avahi eine der funktionierenden Implementationen von mDNS (aka Bonjour, Rendezvous, ...) Meine Laptops antworten damit immer unter ihrem Hostname, egal in welchem LAN (solange die anderen auch beim serverlosen mDNS mitspielen). Die -durchaus zusätzlichen- IPs sind dabei aus dem Bereich 169.254/16
Avahi....sagt mir etwas https://www.youtube.com/watch?v=LonYHY3mrrE Im Ernst: Es funktioniert jetzt alles. Punkt 4 ist erreicht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.