乐趣区

关于运维:Linux-Centos7-nc探测端口命令并实时探测

一. centos7 零碎应用 nc 探测端口

1.1 装置 nc 工具

yum install nc -y

1.2 端口探测

  • TCP 端口探测

应用办法:

nc -w 1   IP 地址    端口 < /dev/null && echo "tcp port ok"

举例

 对方 tcp 端口可连贯:# nc  -w 1 192.168.21.17 34567 < /dev/null && echo "tcp port ok"
tcp port ok

对方 tcp 端口不可连贯:# nc  -w 1 192.168.21.17 34567 < /dev/null && echo "tcp port ok"
Ncat: Connection refused.
  • UDP 端口探测

应用办法:

nc -u -w 1  IP 地址    端口  < /dev/null && echo "udp port ok"

举例

 对方 tcp 端口可连贯:# nc -u -w 1 192.168.21.17 34567 < /dev/null && echo -e "udp port ok"
udp port ok

二.nc 工具实时探测端口

如果咱们须要每秒执行一次端口检测,则应用以下办法

2.1 编写 shell 脚本

# vim /opt/scripts/tcp/detection.sh 
#!/bin/bash

while [true]; do
/bin/sleep 1
ttime=`date "+%F %T"`
log=`nc  -w 1 192.168.21.17 34567 < /dev/null && echo -e "\033[32m tcp port ok \033[0m"`
echo "$ttime $log" >> /opt/scripts/tcp/tcp.log
done

2.2 后盾运行

  • 后盾运行脚本

    screen -S nc-tcp /bin/bash /opt/scripts/tcp/detection.sh

    留神:如果咱们须要退出 screen,但放弃过程后盾运行,须要应用 Ctrl 键 +a+d 进行退出

  • 确认每秒是否执行

    # tail -f /opt/scripts/tcp/tcp.log
    2021-07-02 14:46:54  tcp port ok 
    2021-07-02 14:46:55  tcp port ok 
    2021-07-02 14:46:56  tcp port ok 
    2021-07-02 14:46:57  tcp port ok 
    2021-07-02 14:46:58  tcp port ok 
    2021-07-02 14:46:59  tcp port ok 

    2.3 screen 其它应用

  • 查看以后有哪些后台任务

    # screen -ls
    There are screens on:
      17829.nc-tcp    (Detached)

    分割状态(Attached):有人在操作,只能退出

差遣状态(Detached):后盾主动运行,以后无人参加,能够退出、还原

  • 从新进入 screen 会话

    # screen -r nc-tcp
  • 敞开 screen 会话

     快捷键:Ctrl+c
    
    会提醒:[screen is terminating],示意曾经胜利退出 screen 会话。
退出移动版