检查端口连通性
我们可以使用多种工具来检查基于端口的连接以确保目标端口可用
${_PORT}=22 ${_HOST}=192.168.100.10 timeout 5 bash -c "</dev/tcp/$_HOST/${_PORT}"
或者
在使用 netcat rpm 的发行版上
# netcat -w 5 ${_HOST} ${_PORT} _RETCODE=$? if [ $_RETCODE -ne "0" ];then echo "Port 22 not available" fi
由于 ssh 连接可能会失败,可能有多种情况,其中一些可能是
- 网络问题
- 密码错误
- 密码不正确
下面是检测ssh连接的方法
测试 ssh 连接
在这里,我们将尝试进行快速 ssh 并验证返回码
ssh -q -o BatchMode=yes -o StrictHostKeyChecking=no -i /export/home/sufuser/.ssh/id_rsa $_HOST 'exit 0' _RCODE=$? if [ $_RCODE -ne 0 ] then log_and_print_red "unable to ssh, host is not accessible" continue fi
ping测试
_HOST=192.168.100.10 ping -q -W 5 -c 1 $_HOST >/dev/null 2>&1
执行超时 5 秒的 ping 测试,并将向目标主机发送一个数据包,以确保客户端和服务器之间的网络正常。
日期:2020-06-02 22:18:34 来源:oir作者:oir