我想在C#中创建一个程序,用于将特定端口从路由器移植到计算机。这可能吗?
答案 0 :(得分:1)
可以使用UPNP
(假设您的设备支持该技术)使用NATUPnP 1.0类型库(NATUPNP.DLL)或第三方库(如Mono.Nat)转发端口。
如果你想在没有UPNP的情况下这样做,那么你将需要找到需要发送到设备(路由器)以模拟用户添加端口的消息类型,这将更加困难。
对于Mono.Nat
,您可以在UPNP port forwarding – The easy way找到一个示例
对于NATUPnP
,.NET Framework: Communicate through NAT Router via UPnP (Universal Plug and Play)
答案 1 :(得分:0)
不,不可能
端口转发是网络设备的任务,网络中的所有其他计算机都已连接到该网络设备。一旦数据包离开路由器,它就无法控制它。
此外,除非您从路由器转发端口,否则内部局域网中的计算机无法获取该数据包,并且根本不存在转发问题。