Connection refused - NetTcp WCF-Dienst von der Arbeit - Client eine Verbindung über VPN
-
12-09-2019 - |
Frage
Hier ist das Szenario: Ein Client-Rechner auf das ‚Arbeitsplatznetzwerk‘ über VPN (Cisco VPN Client) verbunden ist. Die Arbeit Netzwerk beherbergt eine Maschine, die einen WCF-Dienst mit NetTcp Bindung hat. Der Client versucht, auf diesen Dienst und bekommt eine Ausnahme zu verbinden, wie folgt:
Keine Verbindung zu net.tcp: // workMachine: 2010 / Someservice. Der Verbindungsversuch dauerte ein Zeitspanne von 00: 00: 01,3180754. TCP Fehlercode 10061: Es konnte keine Verbindung da der Zielcomputer hergestellt werden aktiv verweigert es workMachine. 2010
Dinge, die ich versucht:
- Changed die Arbeitsgruppe des Clients Maschine zum Arbeits Netzwerk Arbeitsgruppe
- hinzugefügt Domain / Benutzername / Passwort für das Passwort Vault Windows Networking, so dass es verwendet werden kann, um eine Verbindung
- Changed den WCF-Dienst Pfad mit einer IP-Adresse anstelle des workMachine Namen
- Auf Client-Rechner Firewalls und hinzugefügt, um das WCF-Client durch sie erlauben
Alle oben gescheitert und hat nicht funktioniert. Hat jemand ähnliche Probleme aufgetreten?
Die Client-Maschine ist auf Windows 7
Security des WCF-Dienst wird auf NONE gesetzt -. So dass kein Problem sein sollte
Keine Erkenntnisse hilfreich sein
Lösung
Sie müssen möglicherweise Clientanmeldeinformationen explizit über das Proxy-Objekt liefern.
Angenommen, dass das Proxy-Objekt in dem folgenden Code implementiert eine der Client Schnittstellen.
proxy.ClientCredentials.Windows.ClientCredential.UserName = "clientaccount";
proxy.ClientCredentials.Windows.ClientCredential.Password = "S3cr3t1337Pwd";
Andere Tipps
Könnten Sie - nur für Testzwecke - Setzen Sie den gleichen Dienst auf der gleichen Maschine einen HTTP-Endpunkt verwendet wird, und versuchen Sie zu, dass man von Ihrem VPN-Client zu verbinden?
NetTcp ist eine ausgezeichnete Wahl hinter der Unternehmens-Firewall - nur nicht wissen, wie die Cisco-VPN-Client-Probleme verursachen könnte hier, die nicht nach oben könnten zeigen, wenn ein HTTP-basiertes Protokoll. Nur eine wilde Vermutung für jetzt, aber wenn man nichts anderes zu gehen, versuchen Sie es mal!
Marc
Nur einen anderen Gedanken mit Debuggen von dieser Art von Problemen zu unterstützen, mit CMD „netstat -a“ ausführen (Sie können den Schalter -o anhängen und die damit verbundene Prozess-ID auch finden) und sehen, ob der Port in Frage derzeit geöffnet ist wenn es nicht kann ein Problem hat mit dem SMSvcHost.exe ist (dies ist der Windows-Prozess zum Verwalten eines IIS gehostet TCP-Dienstes).
Ich habe dieses Problem hatte, bevor und es behoben, indem die folgenden Dienste neu zu starten (natürlich müssen Sie diese sorgfältig prüfen, ob Sie mit einem Live-Produktionssystem handelt):
NetTcpActivator (Net. TCP-Listening-Adapter) NetTcpPortSharing (Net. TCP-Portfreigabe Service)
und möglicherweise, wenn relevant:
NetMsmqActivator (Net. Rohr Listener-Adapter) NetPipeActivator (Net. Rohr Listener-Adapter)
Hoffe, das hilft jemand!
J.