fragen stichworte

Hosten eines WCF-Dienstes auf IIS in einem LAN ohne Internetverbindung

Dies ist wahrscheinlich eine sehr einfache Lösung, aber ich kann nicht herausfinden, was falsch ist. Ich habe zwei Computer, die mit den LAN-Anschlüssen eines D-Link-WLAN-Routers verbunden sind. Ich habe keine Internetverbindung. Der WLAN-Router weist beiden Computern wie erwartet IP-Adressen zu. Auf einem Computer verwende ich Webmatrix und hoste einen WCF-Dienst. Ich habe die Anweisungen hier zur korrekten Einrichtung befolgt. Wenn ich vom zweiten Computer zum WCF-Dienst navigiere, kann er den Dienst nicht finden. Wenn ich jedoch den WLAN-Router mit dem Internet verbinde, funktioniert das einwandfrei.

Ich habe auch versucht, einen Eintrag in die hosts-Datei einzufügen, aber ich kann es immer noch nicht schaffen, dass der Router mit dem Internet verbunden ist. Gibt es eine Möglichkeit, dies ohne Internet-Zugang zum Router zu erreichen?

BEARBEITEN: Dies funktioniert, wenn ich die IP-Adresse verwende. Wie kann ich es erreichen, dass es nur mit dem Computernamen funktioniert?

antworten

Es scheint also so, als würden Ihre Hosts andere Namen abfragen, als Sie denken, und warten, bis die DNS-Server antworten.

Die richtige Lösung wäre, zu bestimmen, welche Abfragen gesendet werden (ausgehende Kommunikation über udp/53 oder tcp/53 über den Sysinternals-Netzwerkmonitor oder über tcpdump oder über Wireshark). Dann fügen Sie genau diese Namen in "hosts" -Dateien ein. Die Verwirrung kann sein, dass ein Host versucht, "hostA.subdomainB" abzufragen. oder "hostA.subdomainB.domainC." oder es führt eine umgekehrte Auflösung mit "1.2.3.4.in-addr.arpa" für seine eigene IP durch. Es kann auch sein, dass Ihre "hosts" -Datei aus irgendeinem Grund nicht korrekt analysiert wird.

Eine zweite Lösung besteht darin, (1) einen internen DNS-Server zu haben, der (2) eine lokale DNS-Domäne (z. B. .local) bereitstellt. Siehe eine ähnliche Frage und Antwort https://superuser.com/questions/368861/can-i-use-dir-655-für-internal-dns. Der Router ist nicht der beste Ort, um einen internen DNS-Server zu betreiben, da bei der Installation und Wartung einige Probleme auftreten, selbst bei einer fortgeschritteneren Firmware (wie DD-WRT oder einer ähnlichen benutzerdefinierten Firmware). Die D-Link-Router unterstützen in ihrer Standard-Firmware keine mir bekannten DNS-Server. Sie verfügen über einen DNS-Forwarder (DNS-Relay) oder einen DynamicDNS-Client, aber das ist nicht das, was Sie brauchen. Also könnte es auf einer anderen Box liegen (Linux mit bind?).