OS X löst keine Hostnamen für SSH / HTTP auf


0

Ich habe einen Debian-Server neptunemit einer statischen IP von 192.168.1.10 die SMB-, Intranet- und SSH-Dienste bereitstellt. Auf meinem Windows-Computer wird das Problem gut gelöst, aber auf meinem Mac erscheint es unter "Shared" mit seinem Hostnamen und ich kann es verwenden. Ich kann den Hostnamen jedoch nicht für SSH verwenden und auch nicht über den Hostnamen in meinem Browser darauf zugreifen. Ich habe versucht, meinen Mac neu zu starten und seine IP-Adresse zu erneuern, aber er war nicht erfolgreich.


Prüfen serverfault.com/questions/578952/… - Es kann dasselbe Problem sein, dass der Mac IPv6 versucht, das nicht auflösbar ist.
Jenny D

Antworten:


2

Ihnen fehlen grundlegende Fähigkeiten in Netzwerken. Um eine Verbindung zu einem Namen mit dessen Namen herzustellen, benötigen Sie einen DNS-Server und registrierte IP-Adressen in diesem DNS-Server.

Was Sie sehen, ist nichts anderes als ein Durcheinander von Protokollen, die in Ihrem Netzwerk mit unterschiedlichen Namen und Domänennamen übertragen werden.

Im allgemeinen Sinne fehlt Ihnen vielleicht die lokale Domäne. Ja. Versuchen Sie, sich mit dem gewünschten Hostnamen mit einer Endung .local zu verbinden. Zum Beispiel: Wenn Ihr Hostname machine ist, versuchen Sie ssh mit machine.local.

Warum denke ich das ist das Problem? Da Sie sagten, dass Sie einen Debian-Server mit SMB und zusätzlichen Diensten haben, könnte Avahi installiert sein und Avahi überträgt normalerweise eine .local-Domäne. Für weitere Informationen schauen Sie hier: http://avahi.org/wiki/AvahiAndUnicastDotLocal

BEARBEITEN: Da Sie einen DNS-Server betreiben, müssen Sie Ihren DNS mit Datensätzen aus Ihrem Netzwerk füllen. Ich weiß nicht, welche DNS-Domänenzone Sie definiert haben, aber Sie müssen auf diese Weise einen Eintrag erstellen, wenn Sie BIND ausführen:

192.168.1.10        IN        A        neptune

Überprüfen Sie anschließend nach, ob alle Ihre Computer Ihren DNS-Server verwenden. Auf den Windows- und OS X-Computern befindet es sich in den Netzwerkeinstellungen. Setzen Sie einfach Ihren DNS-Server als primären und einen weiteren, üblicherweise von Ihrem Internetdienstanbieter, als Failover-DNS ein.

Dann sollten Sie versuchen, eine Verbindung herzustellen neptune.yourdomain.com und sehen, ob Sie die erwarteten Ergebnisse erhalten.

Wenn nicht, starten Sie die Debugging-Prozesse mit nslookup und dig Werkzeuge. Eine häufige Sache, die beim Scheitern der DNS-Auflösung auftritt, sind schlechte Caches. Dies geschieht häufig auf OS X-Computern. Dies geschieht sogar auf meinem Computer. Daher gebe ich ständig diesen Befehl auf dem Terminal aus, um die Caches zu bereinigen:

sudo killall mDNSResponder

Mal sehen, ob dein Problem jetzt gelöst ist.


Ich habe DNS richtig eingerichtet und Avahi nicht installiert. Wie gesagt, es funktioniert perfekt unter Windows und ich kann über meinen Hostnamen auf SMB auf meinem Mac zugreifen.
svbnet

Nun, Sie haben dies nicht in Ihrer Frage angegeben und durch die Art, wie Sie geschrieben haben, scheint es, als hätten Sie sie nicht installiert. Ich werde meine Antwort aktualisieren.
Vinícius Ferrão

@Bug Kannst du klarstellen "Ich habe DNS richtig eingerichtet"? Meinen Sie damit, Sie betreiben einen eigenen DNS-Server (mit einem Eintrag für neptune.something orother?), Oder dass Ihre Computer einige externe DNS-Server ordnungsgemäß abfragen oder
Gordon Davisson

0

Soweit ich weiß, ist dies ein normales Verhalten. Wenn Sie möchten, dass es funktioniert, können Sie einen eigenen DNS-Server einrichten oder Ihrem DNS-Server einen Eintrag hinzufügen hosts Datei. Die letztere Option ist die einfachste. Sie müssen lediglich Folgendes hinzufügen /private/etc/hosts.

192.168.1.10  neptune

Sie sollten es mit dem Befehl bearbeiten können sudo nano /private/etc/hosts


0

Ich war zuvor (vor kurzem, seit dem letzten Start) in der Lage, ssh auf den Mac (von meiner Ubuntu-Box) zu übertragen.

Ich würde die IP auf dem Mac erhalten über:

ifconfig -a | grep -iw inet

"Normalerweise" würde ich eine gültige IP-Adresse erhalten, die mit der in der "Freigabe" -Systemeinstellung für die Fernanmeldung angegebenen übereinstimmt.

Diesmal bekam ich jedoch nur 127.0.0.1 (d. h. localhost) und die Systemeinstellung listete nur einen Hostnamen auf, den ich nicht erreichen konnte.

Nach einem Neustart konnte ich eine brauchbare IP-Adresse erhalten. Ich konnte dann zur verwendbaren IP-Adresse ssh. (auch zum hostnamen :-).

Ich hätte mir zwar schon gerne Skripte durch Routing von Tabellen und Firewalls gesandt und vielleicht den OS X-Kernel debuggt, doch schließlich scp'd ich die Datei einfach.

In diesem Fall habe ich die Linie gezeichnet, indem ich scp anstelle eines USB-Sticks verwendete. Ich habe meinen Stolz (:-).

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.