美文网首页Linux系统管理程序员
nc批量测试端口连通性

nc批量测试端口连通性

作者: 咖啡大象不含咖啡 | 来源:发表于2018-02-28 23:12 被阅读650次

将以下2个脚本放在同一路径下,测试时只需要运行Run_network_test.sh

  • Run_network_test.sh
#!/bin/bash

for ip in `cat hosts | awk '{print $1}'`   #hosts为需要测试的主机列表
do
        echo "                   "
        echo "                   " >> final_result
        echo '-------------------'
        echo '-------------------' >> final_result
    echo $ip 
    echo $ip >> final_result

    sshpass -p "password"  ssh -o StrictHostKeyChecking=no user@$ip bash -s < test_network.sh 

    sshpass -p "password"  ssh -o StrictHostKeyChecking=no user@$ip "cat /tmp_result" >>final_result

    sshpass -p "password"  ssh -o StrictHostKeyChecking=no user@$ip "rm -f /tmp_result" >>final_result
done
  • test_network.sh
#!/bin/bash

#目的主机IP列表
list="192.168.119.117 192.168.119.119"

for ip in $list

do
        nc -z $ip 3066 >/dev/null  #将命令执行结果全部丢弃,无论 nc -z $ip 3066测试结果成功与否,都不影响$?的值。

        if [ $? -eq 0 ];then
                echo "`hostname -i `  -->   $ip is ok "  >>/tmp_result
        else

                echo "`hostname -i `  -->   $ip is bad "  >>/tmp_result
        fi      
done

测试示例

同样的,nc可换成telnet、traceroute等命令。

相关文章

网友评论

    本文标题:nc批量测试端口连通性

    本文链接:https://www.haomeiwen.com/subject/ysrwxftx.html