ping端口_干货分享:shell脚本批量telnet ip 端口

问1:亲,请教个问题,我这边有200台服务器,怎么看它是否在线呢?

答:简单,下载个PingInfoView直接批量ping下,能ping通的就在线,反之离线。

问2:那怎么看我这200台服务器哪些是msql或者oracle数据库服务器呢?

答:一台一台telnet端口检查,3306通的是mysql,1521通的是oracl数据库;也可以去找工具试试,不过我暂时没发现。

经过不断的寻找和测试,发现一个shell脚本可以批量telnet服务器端口,本篇文章,小编和大家分享一下。

06fd9cb037fc16677aa2068a6d886750.gif

e07539f9754e81723c5410990ffd568a.gif

shell脚本如下:

1190b4c0b6b6059afd0db33a9b21892c.png

PORT=XXXX

count=0

for i in $(cat ip_list.txt)

do

     ((count++))

     echo "count=$count"

         # 关键代码,1s自动结束telnet

     (sleep 1;) | telnet $i $PORT >> telnet_result.txt

done

# 根据结果判断出正常可以ping通的ip

cat telnet_result.txt | grep -B 1 \] | grep [0-9] | awk '{print $3}' | cut -d '.' -f 1,2,3,4 > telnet_alive.txt

# 差集,得到ping不同的ip

cat ip_list.txt telnet_alive.txt | sort | uniq -u > telnet_die.txt

d0d5177946cb308f3d67526dce1742fc.png

执行步骤:

1、在Linux环境中运行,首先建文件夹如cheng,然后vim创建telnet.sh文件将上述代码复制进去,修改XXXX为实际端口号例如linux的远程端口22,保存退出。

87d1738fa8c3d915d2a235e78f1ff061.png

2、在cheng文件夹中创建ip_list.txt的文件,并输入要检查的服务器IP地址,每行一个地址。

cb747cf62f7acb4b2f73e251cdf2e51e.png

3、执行telnet.sh文件,等待结果。

b99f0faedd21cdba37e050ae99abd6ac.png

4、cheng文件夹目录文件介绍

shell文件夹中会新出现3个新的文件,如下:

telnet_alive.txt #端口通的地址集合

telnet_die.txt  #端口不通的地址集合

telnet_result.txt #所有地址检查结果

ace0a572935afb2c92d909a9b1449424.png

5、查看脚本执行结果,一般我们查看telnet_alive.txt文件即可。

7895e9600326cbad3d5bb073b19eb422.png

d775eb5ec49dd24e9f029acfb3fd90d2.png


版权声明:本文为weixin_39793420原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。