在Linux中获取TCP/UDP表

Get TCP/UDP Tables in Linux

本文关键字:UDP TCP 获取 Linux      更新时间:2023-10-16

是否有一种方法可以获取与之关联的TCP,UDP连接和过程的列表?

我在Windows中使用" getextendedTcptable()"answers" getExtendedDudptable()"在Windows中进行了此操作,我想在Linux中实现同一件事。

有人可以帮忙吗?

谢谢。

您可以做这样的事情:

#include <fstream>
#include <iostream>
int main()
{
    std::ifstream tcp("/proc/net/tcp");
    std::string line;
    while(std::getline(tcp, line))
        std::cout << line << 'n';
}

要发现其他可用的名称,请在命令行中尝试以下操作:

ls -l /proc/net/

不确定将进程ID(PID)与套接字关联的最佳方法,但是您可以交叉参考/proc/<pid>/fd,其中<pid>是实际号码,与/proc/net/tcp