2013-07-18 260 views
1

我正在为即将用于游戏服务器的UPnP库搞乱。我来到了必须让我的addPortMapping函数以某种方式失败的地步,但由于我没有直接访问路由器,我无法关闭UPnP以使其失败。无法删除UPnP端口映射

为了使功能失效(最终不是),我尝试了尝试向端口-1添加一个端口映射。

现在我有一个端口映射不能从端口映射到端口-1我的电脑... 因为端口不能< 1,这使我困惑。

这是一个已知的问题?

+0

我猜你想让它失败以进行测试?如果是这样,你如何测试?单元测试,集成测试,用户测试?你用什么测试工具? –

+0

@stonedsquirrel正如我已经指出的那样,问题是我无法从externalIP:1移除端口映射到internalIP:-1。 – JohnWO

+0

是的,但是您为什么要删除端口映射,以便库调用失败?可能还有其他方法可以达到同样的效果。描述你想要达到的目标。请参阅http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem –

回答

1

WANIPConnection:2规范将externalPort和internalPort定义为“ui2”,因此它们是无符号整数0-65535(internalPort也不能为0,它用作externalPort的通配符)。如果一个实现接受-1就会破坏:所以这不是已知的问题,而是你的路由器中的一个错误。 Buggy UPnP-IGD路由器一般的一个已知问题,所以这并不意外。

+0

感谢您提供简短而简洁的答案! – JohnWO