与 netstat 关联的外部地址

与 netstat 关联的外部地址

如果我运行并发现正在运行的进程与每个开放端口相关联,我将使用 netstat 以及以下标志:

netstat -tulpn

该程序列出以下输出:

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN      1199/dnsmasq    
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      1004/cupsd      
tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN      1157/postgres   
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      1121/mysqld     
tcp6       0      0 ::1:631                 :::*                    LISTEN      1004/cupsd      
udp        0      0 127.0.0.1:53            0.0.0.0:*                           1199/dnsmasq    
udp        0      0 0.0.0.0:68              0.0.0.0:*                           1070/dhclient   
udp        0      0 0.0.0.0:39617           0.0.0.0:*                           990/avahi-daemon: r
udp        0      0 0.0.0.0:5353            0.0.0.0:*                           990/avahi-daemon: r
udp6       0      0 :::57021                :::*                                990/avahi-daemon: r
udp6       0      0 :::5353                 :::*                                990/avahi-daemon: r

因此,我可以看到 mysqld 服务器进程正在监听端口 3306,postgresql 服务器进程正在监听端口 5432,而我的 dns 服务器正在监听端口 53,等等。换句话说,当我使用我的 IP 和指定的端口创建网络连接时,我可以访问这些服务器进程。但是,有一个字段显示“外部地址”。这应该代表外部 IP 地址(另一台计算机或网络设备)。但这没有意义,因为没有其他计算机或网络设备与这些进程相关联。那么这个 0.0.0:* 是什么意思呢?

答案1

其含义正如您所说:没有其他计算机与该进程相关联。如果您连接到服务上的另一台计算机,则该计算机的 IP 地址和用于连接的端口将显示在外部地址列下。

相关内容