Linux下利用nc命令来监控检测服务器的端口使用情况

检测端口还在用telnet?太落伍把

有没有批量检测的方法?有的。我们用nc就可以快速检测端口的开放性。

nc检测端口的用法

nc -z  -w 10  %IP%    %PORT%

-z表示检测或者扫描端口
-w表示超时时间
-u表示使用UDP协议

 

我们知道检测UDP端口是否开启可以使用linux下的nc命令.

例子:

1
2
[root@lvs-proxy2-1 ~] # nc -zu -w 1 10.0.0.193 443
Connection to 10.0.0.193 443 port [udp /https ] succeeded!

-u UDP模式
-z 如果端口无回应的时候加上;如果有回应-z参数需去掉(扫描端口是否打开用)
-w 如果端口有回应数据,那么必须加上-w参数,设为1秒,nc则1秒后断开连接

我们可以通过grep succeeded字段来判断UDP端口是否开启.那么检测脚本就可以写了:

1
2
3
4
[root@lvs-proxy2-1 ~] # cat /usr/local/scripts/keepalived/UDP_CHECK.sh
#!/bin/bash
/usr/bin/nc -uz -w1 $1 $2 | grep succeeded > /dev/null
exit $?

 

你可能感兴趣的:(Linux下利用nc命令来监控检测服务器的端口使用情况)