【问题标题】:Socket connections being dropped套接字连接被丢弃
【发布时间】:2020-03-16 23:27:05
【问题描述】:

我创建了一个具有多线程的端口扫描器,它扫描端口,从 1 开始,数量不断增加。 它在我的局域网上运行良好,但如果我尝试扫描局域网外的 IP,它会说所有端口都已关闭,我认为这是因为防火墙阻止了连接?

有什么方法可以检查端口是否在我的 LAN 之外的 IP 地址上打开?这是我得到的代码

for (int port = startPort; port < 65535; port+=PortScanner.count) 
        {
            Socket socket;
                try 
                {
                    socket = new Socket();
                    socket.connect(new InetSocketAddress(host, port ), 500);

                    openPorts.add(port);

                    foundPort = true;
                    String temp = "Port " + port + " is open.\n";
                    System.out.write(temp.getBytes());

                    socket.close();
                }
                catch (IOException ioEx) 
                {
                    System.out.println("Port " + port + " is closed");
                }
         }
         Thread.yield();

【问题讨论】:

  • 也许您只是做出了错误的假设:如果您使用的 IP 地址未被任何系统使用或您的系统无法访问,它也会声称所有端口都已关闭。跨度>
  • 我扫描了一个朋友的 IP,他向我展示了一些打开的端口,但扫描仪说是关闭的,所以可能是防火墙或类似的问题。
  • 鉴于缺乏细节:我猜您的好友系统位于典型的 Soo 路由器后面,您要么尝试扫描您甚至无法访问的内部 IP 地址,要么尝试扫描路由器的公共 IP 地址也没有显示任何开放端口,因为没有安装到内部系统的端口转发。端口扫描器首先需要连接到远程系统,否则它将无法扫描那里的任何端口。
  • 你朋友的IP是公网地址吗?港口是否对公众开放?如果您尝试使用端口 80 的网络服务器(如 www.google.com)会发生什么?您的程序是否将其报告为开放?
  • 我扫描了我朋友的公共 IP 地址,但它说所有端口都已关闭,但是当我扫描“www.google.com”时,它说端口 80 已打开。

标签: java sockets port


【解决方案1】:
  1. 不是扫描一个主机的所有端口,而是检查多个主机上的一个端口,如果要扫描多个主机,然后检查另一个端口...
  2. 您可以只考虑众所周知的端口[1],而不是对端口进行全面扫描。
  3. 在您的代码中设置睡眠,增加绕过防火墙的机会,但增加您的扫描时间。
  4. 您可以使用一些代理服务来更改每个请求的 IP [2]。
  5. 请参阅“使用 Java 扫描端口的最快方法”[3]

[1]https://www.webopedia.com/quick_ref/portnumbers.asp
[2]https://luminati.io/proxy-networks/residential-ips
[3]Fastest way to scan ports with Java

【讨论】:

    【解决方案2】:

    在测试和实际运行扫描仪时,我建议您使用代理服务,以便您了解问题发生的地点和时间(如果问题仍然存在)。您可以找到许多在这种情况下有用的代理提供程序,但我建议您检查一下:

    这些提供了很多功能,工作速度快,在测试各种程序、机器人、扫描仪、工具等方面非常出色。

    【讨论】:

      猜你喜欢
      • 2021-12-22
      • 1970-01-01
      • 2018-02-14
      • 2011-07-07
      • 2018-08-29
      • 2016-11-28
      • 1970-01-01
      • 2013-10-12
      • 2011-05-19
      相关资源
      最近更新 更多