jjzjj

wildSocket

全部标签

java - 通过使用 UPnP 发送广播数据包来发现路由器不起作用

我正在尝试实现一个简单的库,如果应用程序在NAT环境中运行,它可以通过UPnP协议(protocol)发现路由器。我尝试了两种方式,多播和数据报,将发现数据包发送到路由器,并尝试监听端口1901以获取路由器的响应。但是,我在代码方面遇到了一些问题。我尝试了以下三种方式,只有第三种方式能正确接收到路由器的响应。我不知道为什么它在第一种和第二种方式上不起作用。第一种:发送多播包,监听1901端口响应。代码:publicvoiddiscovery()throwsIOException{//SSDPportfinalintSSDP_PORT=1900;finalintSSDP_SEARCH_P