如何知道Linux系统中的端口是否打开

How to know if a port is open or not in Linux system

本文关键字:是否 何知道 Linux 系统      更新时间:2023-10-16

我需要查找是否在Linux系统上打开了端口Ex.端口8080。我正在寻找一个C或C++API调用,当给定端口号时,它将返回true或false或等效值。这只需要在本地运行。我不想知道是否有进程在端口上侦听,只是它没有被防火墙阻止。

我想做类似的事情

 if( ! IsPortOpen(8080))
     cout << "please request IT to open port 8080 before running this tool";
     exit(1);
 }

我假设您正在本地机器上寻找打开的端口。有很多工具可以做到这一点。

是一种更容易使用和理解的方法

lsof -i

对于远程机器,请尝试nmap或更简单、更基本的netcat。例如

netcat targetHost 8080