局域网IP地址扫描

扫描局域网IP空闲地址
#!/bin/sh
#encoding:utf-8
ip="192.168.0."
for i in `seq 1 254`
do
ping -c 2 $ip$i | grep -q 'ttl=' && echo "$ip$i yes" >> all.txt || echo "$ip$i ping不通" >> all.txt
done
 
=================================================================本地测试后再用
扫描局域网IP地址。
1.先定义一个命令pong。
[root@localhost Desktop]# vim /bin/pong
#!/bin/bash
[ ! -f /bin/ping ] && echo "not found ping" && exit 1
PING=/bin/ping
 
$PING -c1 $1 &> /dev/null
 
if [ $? -eq 0 ];then
        echo "$1 is active !"
else
        echo "$1 is down !"
fi
 
2.用pong遍历循环。
[root@localhost Desktop]# vim saomiao.sh
#!/bin/bash
for IP in `seq 1 254`
      do
              pong 192.168.18.$IP &
done
 
 
 
=================================================================测试 ip_list.txt里的地址是否都通
#!/bin/bash
# 读取 txt 文件中的 IP 地址
while IFS= read -r ip
do
# 使用 ping 命令检测 IP 地址是否可通
ping -c 1 -W 1 $ip > /dev/null
# 检查 ping 命令的返回值,判断是否可通
if [ $? -eq 0 ]
then
echo "$ip is reachable" >> up.txt
else
echo "$ip is unreachable" >> down.txt
fi
done < ip_list.txt
 
 
 
posted @ 2025-07-28 11:10  榆812  阅读(23)  评论(0)    收藏  举报