ping|telnet批量网络疏通测试

bash 复制代码
#!/bin/bash
cur_data=`date +%Y-%m-%d`
log_file="/tmp/$(hostname)_telnet_ $cur_data.log"
add_ping=(10.116.20.11 10.116.20.12)
add_telnet=(10.116.20.13 10.116.20.14)
port_telnet="22"
echo -n "" >$log_file

for i in "${add_ping[@]}"
do
    echo -e "Pinging $i"
    ping -c 3 $i >/dev/null 2>&1
    if [ $? -eq 0 ];then
    echo "server $i SUCCESS" >>log_file
    else
    echo "server $i FAILED" >>log_file
    fi
done

for i in "${add_telnet[@]}"
do
    echo -e "Test connect $i $port_telnet"
    test=`echo quit |timeout --signal=9 3 telnet $i $prot_telnet 2>/dev/null |grep "\^]" |wc -l`
    if [ $test -eq 0 ];then
    echo "server $i $prot_telnet FAILED" >>log_file
    else
    echo "server $i $prot_telnet SUCCESS" >>log_file
    fi
done
  • echo quit:向telnet命令发送"quit"字符串,表示退出telnet连接。
  • timeout --signal=9 3 telnet 192.168.197.10 11522:使用timeout命令来设置telnet命令在3秒内超时。如果telnet命令在3秒内没有完成连接,则会被强制终止(使用信号9 - SIGKILL)。telnet命令尝试连接到IP地址为192.168.197.10的主机的11522端口。
  • 2>/dev/null:重定向标准错误输出到/dev/null,即忽略错误信息。
  • grep "\^]":使用grep命令筛选出包含"]"的行。"]"是telnet交互时输入的字符,表示telnet的控制字符。
  • wc -l:统计匹配行的数量。
相关推荐
非自律懒癌患者27 分钟前
ubuntu 20.04 ping baidu.coom可以通,ping www.baidu.com不通 【DNS出现问题】解决方案
linux·tcp/ip·ubuntu
Xam_d_LM27 分钟前
【Linux】如何清除 Ubuntu 留下的 EFI 分区,Windows 磁盘管理器右键删除卷是灰色
linux·运维·windows·ubuntu·重装系统·磁盘管理器
黄暄1 小时前
Linux项目部署全攻略:从环境搭建到前后端部署实战
java·linux·运维·服务器·前端·后端·持续部署
独行soc1 小时前
2025年渗透测试面试题总结-安恒[实习]安全服务工程师(题目+回答)
linux·数据库·安全·web安全·面试·职场和发展·渗透测试
L汐2 小时前
01 CentOS根分区满了扩容
linux·运维·centos
小峰编程2 小时前
Python函数——万字详解
linux·运维·服务器·开发语言·前端·网络·python
大筒木老辈子2 小时前
Linux笔记---内核态与用户态
linux·运维·笔记
五花肉村长3 小时前
Linux-进程信号
linux·运维·服务器·开发语言·网络·c++
FBI HackerHarry浩3 小时前
Linux云计算训练营笔记day11(Linux CentOS7)
linux·运维·笔记·云计算
行止63 小时前
系统安全及应用
linux·运维·安全