c# – 如何允许远程连接到我的.net应用程序?
我正在编写一个包含桌面和移动应用程序组件的应用程序.桌面应用程序是用c#编写的,我希望能够将其打开以充当移动应用程序的服务器(类似于AirVideo所做的).如何在不要求用户配置防火墙和/或路由器的情况下完成此操作?
理想情况下,我想在桌面应用程序中自行托管一个安静的wcf服务.我已经尝试过了,但防火墙的自动配置不允许远程连接到wcf服务,因为它似乎由系统进程托管.这种行为有解决方法吗? 编辑:我已经通过使用NATUPnP COM库尽可能地解决了路由器问题(http://pietschsoft.com/post/2009/02/05/NET-Framework-Communicate-through-NAT-Router-通UPnP.aspx).我仍然需要知道如何允许通过防火墙远程连接到自托管WCF服务而无需任何手动配置防火墙(我可以通过用户提示在应用程序启动后允许连接). 解决方法
在路由器中设置指定路由到服务器地址的特定端口,
因此,如果您的路由器真正的IP是a.b.c.d,您应该设置与a.b.c.d:port#的所有通信都被路由到您的服务器本地地址. (a.b.c.d:port# – > serverIP) 可以通过路由器配置实现此设置. 在您无法修改路由器设置/防火墙设置的情况下: > S – >打开端口以侦听传入连接. 通过这种方式,S可以作为粘合双方通信的代理. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |