我的java应用程序如何检测它是否被防火墙阻止

时间:2013-05-04 14:07:44

标签: java windows sockets networking

我使用JAVA创建了一个桌面应用程序,它像服务器一样工作,并使用ServerSocket接受传入连接。该软件通过LAN工作,需要防火墙允许。如何从应用程序中检查是否被PC的防火墙阻止了?

2 个答案:

答案 0 :(得分:1)

您可以尝试使用

连接到可靠的站点,例如stackoverflow.com
   try {
        new Socket("stackoverflow.com", 80);
    } catch (IOException e) {
        // something is wrong, not necessarily firewall problem
        ... 
    }

    // no firewall 

答案 1 :(得分:-1)

如果在创建服务器套接字时遇到异常,那么您可以安全地无法监听该端口,这里是代码示例:

try {
        socket = new ServerSocket(_port);
    } catch (IOException e) {
        System.out.println("Port in use");
    }
}