我目前正在使用java编写的服务器开发java PC / Android应用程序。当我开发PC客户端时,我在localhost:12345上启动服务器,客户端可以毫无问题地连接到此服务器(使用相同的主机名和端口)。昨天我尝试使用Android设备连接时出现问题。我使用手机开发应用程序,作为主机地址,我输入路由器的公共IP 89.xx.xx.xxx和PC客户端(12345)中的相同端口。当然我在我的路由器上设置了端口转发(对于端口12344到12346),我在windows defender的端口12345上为任何连接类型创建了规则。但仍然没有成功。这很奇怪,因为在我开发其他应用程序和所有工作之前大约8个月。奇怪的是,当我第一次启动服务器和PC客户端时,没有Windows提示窗口(赢得后卫提示允许我的应用程序连接到互联网)。我认为路由器的转发有问题(因为在localhost上它正常工作),但我不知道我还能做什么。我在转发时打开了UPnP。我的路由器是THOMSON TWG850-4U。几秒钟后,我的Android应用程序中出现了超时异常
答案 0 :(得分:0)
您确定您的服务器绑定0.0.0.0(接受任何接口上的传入连接)而不是127.0.0.1(仅接受localhost连接)?
答案 1 :(得分:0)
如果您已绑定到0.0.0.0,请尝试将路由器设置为DMZ您的PC IP地址,并查看是否允许连接。