Java服务器套接字:查找未被防火墙阻止的开放端口

Java服务器套接字:查找未被防火墙阻止的开放端口,java,sockets,port,firewall,Java,Sockets,Port,Firewall,我有一个问题类似于之前提出的这个问题,但我的问题不同。我需要能够看到,如果端口是开放的,而不是防火墙自动阻止。我找到的所有示例都只是查找服务器可以绑定到的端口,但没有检查端口是否被防火墙阻止。如果被防火墙阻止,则不在LAN上的客户端无法连接到服务器。有没有人有什么方法可以自动做到这一点?我知道您可以在Windows中使用CMD手动检查端口,但我需要自动执行此操作。感谢并抱歉给您带来任何困惑。这不是手册,但有点脱离Java,但您可以运行NMAP,然后将结果读入Java。这将帮助您了解哪些端口是打开

我有一个问题类似于之前提出的这个问题,但我的问题不同。我需要能够看到,如果端口是开放的,而不是防火墙自动阻止。我找到的所有示例都只是查找服务器可以绑定到的端口,但没有检查端口是否被防火墙阻止。如果被防火墙阻止,则不在LAN上的客户端无法连接到服务器。有没有人有什么方法可以自动做到这一点?我知道您可以在Windows中使用CMD手动检查端口,但我需要自动执行此操作。感谢并抱歉给您带来任何困惑。

这不是手册,但有点脱离Java,但您可以运行NMAP,然后将结果读入Java。这将帮助您了解哪些端口是打开的。

这不是手册,而是Java之外的内容,但是您可以运行NMAP,然后将结果读入Java。这将帮助您了解哪些端口是开放的。

如果您想使用Java和Nmap,您可以使用nmap4j.sourceforge.net,它是一个用于运行Nmap的Java API,并为您将结果解析为Java对象。

如果您想使用Java和Nmap,您可以使用nmap4j.sourceforge.net,这是一个Java API,用于运行Nmap,并将结果解析为Java对象。

我是如何得到a-1的?我在过去的一个小时里对此进行了研究,但没有人找到任何解决方案。请询问配置/管理防火墙的人员。如果不深入了解细节,就很难从机器本身实现这一点,无论您认为windows中的CMD做什么。。没有。您还可以使用在远程主机上运行的端口扫描程序(或可以重新路由数据包的端口扫描程序)。。。虽然有人可能会注意到这一点,但这通常是不可能的,除非你能让防火墙另一端的客户端配合你进行测试。询问防火墙管理员会更快。防火墙通常不会自动告诉您它们的设置。您可以使用端口扫描程序查找打开的端口。但是,确定端口是否会被防火墙阻止取决于平台和防火墙。如果这很容易做到,那么防火墙一开始不是毫无意义吗?我是如何得到a-1的?我在过去的一个小时里对此进行了研究,但没有人找到任何解决方案。请询问配置/管理防火墙的人员。如果不深入了解细节,就很难从机器本身实现这一点,无论您认为windows中的CMD做什么。。没有。您还可以使用在远程主机上运行的端口扫描程序(或可以重新路由数据包的端口扫描程序)。。。虽然有人可能会注意到这一点,但这通常是不可能的,除非你能让防火墙另一端的客户端配合你进行测试。询问防火墙管理员会更快。防火墙通常不会自动告诉您它们的设置。您可以使用端口扫描程序查找打开的端口。但是,确定端口是否会被防火墙阻止取决于平台和防火墙。如果这很容易做到,那么防火墙一开始就没有意义了吗?有用的提示,但我甚至不知道如何做到这一点。。。我想我会让人们手动完成。感谢您研究一下如何在java中运行系统命令,然后只需阅读nmap上的文档。实际上这很简单。试一试。有用的提示,但我甚至不知道如何做到这一点。。。我想我会让人们手动完成。感谢您研究一下如何在java中运行系统命令,然后只需阅读nmap上的文档。实际上这很简单。试试看。