Linux下对多个IP地址执行telnet连通检查

由于公司要更新框架使用新的服务器,其中要开通对应的IP和port的专线地址端口映射,需要运维同学在新服务中检查相应的服务器和端口号是否能连通。整理如下telnet/ping命令执行成功。

 

先做准备工作,整理一个ip.txt,里面要用到的IP和端口都放进去,IP和端口之间以空格隔开,示例如下:

11.250.1.110 10000
10.255.2.10 7211
192.168.12.100 9080

 运行如下telnet.sh 文件即可查看对应的IP和端口是否连通。(chmod +x telnet.sh , 赋予执行权限)

#!/bin/bash

echo "prod environment"
echo "telnet result"
cat ip.txt|while read line
do ip=`echo $line |awk '{print $1,$2}'`
echo "you will telent this machine: "${ip}
(sleep 1;) | timeout 5 telnet $ip | grep Connected
done

或者用如下命令行也可以查看telnet到对应服务器端口的连通信息

cat ip.txt|while read line;do ip=`echo $line |awk '{print $1,$2}'`;echo -e "服务器和端口号:${ip}";(sleep 1;) | timeout 5 telnet $ip  | grep Connected;done

如果是想要做批量ping的话可以用如下命令行

for ip in $(cat ip.txt |awk '{ print $1 }') ; do echo -e "连接服务器:${ip}"; ping -c 5 -w 1 "${ip}" |grep 'packet loss' |awk -F',' '{print $3,$4}' ; done ;

或者执行如下ping.sh文件(chmod +x ping.sh , 赋予执行权限)

#!/bin/bash

echo "prod environment"

echo "ping result"

for ip in $(cat ip.txt |awk '{ print $1 }') 
do echo -e "you will ping this machine:${ip}"
ping -c 5 -w 1 "${ip}" |grep 'packet loss' |awk -F',' '{print $3}' 
done

如果想把执行结果放在指定的文件内也可以,然后再做一定的查询操作。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章