洞悉Linux服务器间的监听状态(linux监听状态)
Linux服务器间的监听状态一般用netstat命令来洞悉,netstat有很多参数说明,下面列出的主要参数说明如下:
-a 显示所有连接和端口情况。
-l 显示所有监听端口情况,它必须和 -a 结合使用。
-t 显示TCP端口情况。
-u 显示UDP端口情况。
-n 不将端口号转换为服务类型名。
针对Linux服务器间的监听状态,主要有以下几种情况:
1.当某个服务已开启,但是没有客户端连接时,netstat -atn 基本不会显示关于这个服务的任何信息。
2.当某个服务在listening状态,但是没有客户端连接时,netstat -ant 会显示服务所在端口运行在listening状态,但没有连接的客户。
3.当某个服务已经建立连接后,就可以看到它端口的成功连接,netstat -atn 就会显示正在连接的客户和服务的地址端口号等信息。
4. 如果有防火墙等设备存在,就可以利用netstat -t -u –n查看状态为ESTABLISHED,FIN_WAIT等状态的端口,以判断是否有外部访问。
举个例子,如果要查看本机的TCP监听情况,可以用如下命令:
“`bash
netstat -atn
结果如下:
```bashProto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN
这样我们就可以清楚的知道本机TCP的服务监听的状态以及端口是多少啦。同理,如果我们要查询UDP服务监听状态,可以用如下命令:
“`bash
netstat -autn
结果如下:
```bashProto Recv-Q Send-Q Local Address Foreign Address State
udp 0 0 0.0.0.0:123 0.0.0.0:* udp 0 0 192.168.1.103:123 0.0.0.0:*
udp 0 0 0.0.0.0:519 0.0.0.0:* udp 0 0 0.0.0.0:5353 0.0.0.0:*
以上是通过netstat查询Linux服务器间的监听状态的一个简单的示例,例子中的参数用的是-a,-t,-u,-n,这意味着netstat同时查询所有连接,并且显示TCP、UDP和未解析的端口,可以根据不同的需求变更这些参数,从而查看Linux服务器间的监听状态。