gpt4 book ai didi

java - 如何找到给定远程机器上特定进程使用的 TCP/UDP 端口

转载 作者:行者123 更新时间:2023-11-30 10:34:28 25 4
gpt4 key购买 nike

我有一个我无法解决的问题。

我所知道的:

  • 有关我正在寻找的进程的一些信息:这是一个 java 进程,但如果我可以访问类似于 ps -ef | 中的信息grep java,然后我可以找到它的PID。
  • 运行 Linux 版本 3.16.7-35-desktop (SUSE Linux) 的远程计算机的 IP 地址

我想找到该机器上该进程使用的端口,但有一些限制:

  • 必须在 java 中以编程方式完成
  • 必须在 Windows 和 Linux 上工作(如果需要,java 代码可以分别处理这两种情况)
  • 不需要安装任何其他应用程序(既不在调用方机器上,也不在远程机器上)

我也知道端口应该在 10000 到 20000 之间。我可以通过网络访问远程机器(两台机器都在同一子网中)。

你会怎么做?

注意:我找到了this ,但它古老而不遥远。

最佳答案

这是标准的黑客要求。你可以做 nmap 做的事。

依次连接到该范围内的每个端口,并尝试根据您在连接时从该服务获得的数据来确定该服务正在监听或响应该端口。它非常慢,如果你有任何工具来检测它,它看起来就像一个 hack,但它是一种已经使用了很长时间的技术,因为它是在没有服务告诉你什么是什么的情况下做到这一点的唯一方法在那台机器上运行。

更好的方法是在某个地方设置一个服务发现流程,其中包含您可以联系的所有服务,最好带有它们的状态,这样您就可以轻松找到一个可供您的客户使用的服务。

关于java - 如何找到给定远程机器上特定进程使用的 TCP/UDP 端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41648815/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com