我已经编写了 ac# 代码,通过 Upnp 将端口映射到我的路由器,以使 WCF 服务可以访问互联网
upnp 脚本在这里
object[] loObj = new object[] { "", port, "TCP", port, adresse_ip, true, "Custom Mapping", 0 };
lsService.InvokeAction("AddPortMapping", loObj);
入港是 87,出港也是 87
映射在我的 Netgear DGN1000 上成功注册(我可以在 upnp 表中看到它)
Actif Protocole Port Interne Port Externe Adresse IP
YES TCP 87 87 192.168.0.12
我可以通过 localhst:87/servicemodelsamples/service 和 192.168.0.12:87/servicemodelsamples/service 访问我的网络服务
但是您无法通过 MY_PUBLIC_IP:87/servicemodelsamples/service 访问。
我已停用 Windows 8 防火墙
当我使用我在路由器中创建的手动规则时,我可以工作,但是通过 upnp 神经网络
谢谢您的帮助