Wie erreiche ich den lokalen Computer über den Computernamen anstelle der IP-Adresse?

20

Entwickler hier Prototyping einer mobilen App, etwas neu für mobile:

  • Ich habe einen einfachen HTTP-Dienst, der (derzeit) auf meinem Haupt-Laptop mit dem Computernamen ausgeführt wird latitude.
  • Ein anderer Laptop mit dem Namen vaio, der dasselbe WiFi-Netzwerk teilt, kann über diesen Dienst zugreifen. Mit http://latitude:8080anderen Worten, er kann auf einfache Weise die (aktuelle) IP 192.168.xy (oder die derzeitige dynamische IP) von latitudeirgendwie auflösen .
  • Jetzt können meine HTC Android-Telefone, die mit demselben WiFi-Netzwerk verbunden sind, die IP-Adresse von erreichen, latitudeso dass das Öffnen in ihrem Browser http://192.168.x.y:8080funktioniert.
  • Aber ich möchte auch hier den Computernamen verwenden, zum Beispiel, wenn ich vom HTTP-Dienst aus auf den HTTP-Dienst zugreife, indem ich vaioeinfach tippe http://latitude:8080und das Telefon die aktuelle dynamische IP von auflösen lasse latitude. Dies funktioniert nicht, es wird nur die Standard-Browser-Fehlerseite "Webseite nicht verfügbar" angezeigt .

Gibt es eine DNS-Einstellung in Android, die ich anpassen muss? Ich habe nichts gefunden, als ich mit den Einstellungen rumgespielt habe, und eine Frage wie diese ist bekanntermaßen auch schwer zu googeln ...

Das One V verfügt über Android 4.0 und das One M7 über Android 4.2, falls dies einen Unterschied macht.

(Beachten Sie, dass dies auch dann funktionieren sollte, wenn Android nicht über USB mit meinen Computern verbunden ist und nicht als WLAN-Hotspot fungiert - offensichtlich, da es ohnehin mein Haupt-WLAN-Netzwerk beansprucht.)

Metaleap
quelle

Antworten:

4

Unabhängig davon, ob Sie über WLAN mit Ihrem lokalen Netzwerk verbunden sind und DHCP verwendet wird, scheint Android seine DNS-Einträge immer mithilfe der Google-Server zu überschreiben. Es ist etwas versteckt, aber leicht zu ändern - vorausgesetzt, Sie haben Ihr eigenes DNS (viele Router bieten das bereits an).

Gehen Sie dazu zu Ihrer Liste der WLAN-Netzwerke in den Einstellungen , drücken Sie lange auf den Eintrag Ihres WLANs und wählen Sie ihn aus, um ihn zu bearbeiten. Aktivieren Sie die erweiterten Einstellungen. Jetzt können Sie die DNS-Einträge bearbeiten. Ersetzen Sie einfach den ersten Eintrag durch die IP-Adresse Ihres eigenen DNS-Servers und lassen Sie den zweiten Eintrag (DNS 2) für den Fallback unberührt.

Wenn Ihr eigener DNS die Computer Ihres lokalen Netzwerks auflösen kann, sollten Sie in der Lage sein, deren Hostnamen zu verwenden, um sie zu erreichen. Kein Root und keine Bearbeitung der hostsDatei erforderlich (könnte eine Alternative sein, wenn kein eigener DNS-Dienst ausgeführt wird). Funktioniert hier hervorragend mit mir und meinem Netzwerk;)

Izzy
quelle
Vielen Dank! Hier ist die seltsame Sache, wenn ich das tue, dann ist mein Router (Gateway) auch schon als DNS1 eingetragen (und Googles oder 8.8.4.4 als DNS2). Nun, ich gehe mit diesen Standardeinstellungen und wende sie an, NetBIOS und SMB sind auf dem Windows-Computer aktiviert, aber es gibt noch keine Namensauflösung ...
Metaleap
2
Ich habe keine Pläne mit Windows. In meinem Fall handelt es sich um eine Linux-basierte Umgebung, und auf dem Router (AVM Fritz! Box) läuft ein Nameserver. Funktioniert reibungslos.
Izzy
Dies sollte allenfalls (wenn überhaupt) nur für alte Android-Versionen gelten. Meine erste DNS ist meine lokale, während der Fallback die 8.8.8.8 von Google ist. Nachgeschlagen mit getprop | grep -i dnsSiehe auch android.stackexchange.com/a/32278/15713
ce4
Firefox verhält sich anders und zeigt dieses Verhalten nicht. Ich denke, es ist die Omnibox (kombiniertes Such- / URI-Eingabefeld) von Chrome, die dies tut
ce4 29.10.13
Firefox verwendet keine eigenen DNS-Server (zumindest würde ich mich fragen, ob). Die gesamte Software fragt normalerweise das System nach diesen Informationen, sodass der Browser hier keine Rolle spielen sollte. @ce4: Ja, so habe ich es manuell auf meinem Gerät konfiguriert : Gleiches Fallback, aber das primäre musste ich manuell von 4.4.4.4 auf meinen lokalen DNS-Server umstellen. Ich weiß, dass mein DHCP-Server diese Informationen sendet, habe aber kein einziges Android-Gerät gesehen, das dies berücksichtigt.
Izzy
1

Wenn ich einen Maschinennamen anstelle einer IP möchte, bearbeite ich die HOSTS-Datei. Versuchen Sie, die Geräte und ihre IP-Adressen dort hinzuzufügen. Eine Google-Suche nach der Hosts-Datei für Ihr Betriebssystem sollte einfach sein.

Schatten
quelle
2
Das Bearbeiten von HOSTS ist nur sinnvoll, wenn die IP-Adresse des Laptops immer statisch / gleich bleibt. Dies wird nicht der Fall sein, da ich unterwegs arbeite, verschiedene WiFi-Netzwerke, dynamische IP-Adressen. Für die Bearbeitung von HOSTS ist ein verwurzeltes Android-Gerät erforderlich, das jedoch nicht gewurzelt und weitgehend ungeschwächt sein muss, damit es unter "normalen Telefonbedingungen"
getestet werden
0

Fügen Sie /etc/hostsmit ES Explorer zwei Zeilen am Ende der Datei hosts file ( ) Ihres Geräts hinzu (erfordert ein gerootetes Gerät).

Vorlage:

your_host_machine's_IP_address  domain_name   

Beispiel von sein domain_namekann localhost.

Beispiel:

::1  domain_name 

Es funktioniert gut, wenn Sie die localhostURL-Leiste anstelle der IP-Adresse eingeben .

Mohamed Hasan
quelle
Ich korrigierte \etc\hostszu /etc/hostsund einige Änderungen in der Formatierung gemacht. Ich habe versucht, die Absicht nicht zu ändern, sondern sie besser aussehen zu lassen. Lassen Sie mich wissen, ob ich irgendwo etwas falsch gemacht habe.
Firelord
0

In meinem Fall hat das vorübergehende Deaktivieren der Windows-Firewall unter Windows 10 das Surfen http://latitude:8080ermöglicht.

Längerfristig habe ich eine Regel erstellt, um diese Art von Verbindungen durch die Firewall zu lassen ...

  • {Windows}> Start> "Firewall"> Windows Defender-Firewall mit erweiterter Sicherheit. Eingehende Regeln> Neue Regel ...

    • Allgemeines
      • Name: TCP-Webverbindungen vom LAN
      • Erlaube die Verbindung, wenn sie sicher ist ...
      • Wählen Sie: "Verbindung zulassen, wenn sie authentifiziert und integritätsgeschützt ist"
    • Protokolle und Ports
      • Protokolltyp: TCP
      • Lokaler Hafen: 80, 880
    • Fortgeschritten
      • Geben Sie Profile an, für die diese Regel gilt: Privat
  • {Android}. Testen Sie mit Firefox oder Chrome, nicht mit Dolphin

John Bentley
quelle