Ich habe einen Mac mit meinem eigenen Router verbunden, der wiederum mit dem Router/Modem meines ISPs verbunden ist, und zwar mit den folgenden Konfigurationen:
Der Mac verbindet sich über DHCP mit dem Router 192.168.1.1.
Der Mac-DNS ist auf 192.168.1.1 eingestellt .
Auf meinem eigenen Router kann ich eine Reihe verbundener Geräte sehen:
rpi-Knoten-4 192.168.1.4
rpi-Knoten-1 192.168.1.5
Ich kann per IP eine SSH-Verbindung zu 192.168.1.4 herstellen, aber wenn ich es per Hostnamen versuche, wird dieser nicht erkannt:
ssh: Hostname rpi-node-4 konnte nicht aufgelöst werden: weder Knotenname noch Servername angegeben oder nicht bekannt
Da der Router die Hostnamen kennt und dem Mac gesagt wird, er solle 192.168.1.1 (den Router) als DNS verwenden, habe ich erwartet, dass der Mac die Hostnamen auflösen kann, aber das funktioniert nicht.
Beachten Sie, dass ich die Datei auf dem Mac nicht manuell bearbeiten möchte /etc/hosts
(da ich mehrere Maschinen habe und dynamische IPs verwende und daher nicht bei jeder Neuzuweisung von IPs 3–4 Hostdateien aktualisieren möchte).
Kann mir bitte jemand sagen, wo ich einen Fehler gemacht habe?
Antwort1
Ihr Router kennt wahrscheinlich nur die Namen dieser RPi, da dies die Namen sind, die er bei DHCP-Anfragen verwendet hat, und Ihr Router ist wahrscheinlich der DHCP-Server Ihres Netzwerks.
Einige Home-Gateway-Router bieten die Möglichkeit, Hostnamen für jede private LAN-IP-Adresse einzugeben. Der Router fungiert dann als DNSInhaltServer statt nur einem DNS-Relay. Prüfen Sie, ob Ihr Server diese Funktion hat, und richten Sie sie ggf. ein.
Wenn diese Funktion nicht vorhanden ist, können Sie mDNS und DNS-SD (auch bekannt als IETF ZeroConf, Apple Bonjour) verwenden, um eine .local
Domäne einzurichten, sodass Sie sich über den Namen mit Ihren RPis verbinden können. Ich glaube, dass Raspbian standardmäßig keine mDNS-Implementierung aktiviert hat, daher müssen Sie möglicherweise etwas tun, sudo apt-get install avahi-daemon
um Avahi zu besorgen, eine beliebte Open-Source-mDNS-Implementierung.
Antwort2
Möglicherweise wurde Ihre Suchdomäne beim Einrichten der DHCP-Einstellungen Ihres Routers übersehen. Jetzt weiß Ihr Mac-Computer nicht, wo er nach lokalen Hostnamen zu IPs suchen soll.
So beheben Sie das Problem:
- Gehen Sie zu Systemeinstellungen -> Netzwerk
- Wählen Sie Ihren aktiven Netzwerkadapter aus der linken Spalte
- Klicken Sie unten rechts auf „Erweitert“
- Wählen Sie oben die Registerkarte DNS
- Geben Sie unter „Domänen suchen“ Ihre Suchdomäne ein (meine ist attlocal.net, da ich AT&T verwende. Möglicherweise müssen Sie eine Suche durchführen, um Ihre zu finden).
- Klicken Sie auf Übernehmen. Sie sollten jetzt auf {hostname}.local zugreifen können.