测局域网内ip的脚本。

sh/bash/dash/ksh/zsh等Shell脚本
回复
gmslinux
帖子: 24
注册时间: 2007-02-03 21:58
送出感谢: 0
接收感谢: 0

测局域网内ip的脚本。

#1

帖子 gmslinux » 2007-02-26 15:39

想得到局域网内哪个IP是在使用的,哪个IP未被使用。比如从10.0.0.1-10.0.0.254 之间哪个使用哪个未用。
我想用ping命令来写,加上一个循环,只是具体细节还不是很清楚。哪个大虾帮忙写一下。

代码: 全选

#!/bin/bash

ip ="192.0.0"
subip=1

while((subip<255));do
	#测试  ip.subip 是否通,如果通,则echo
	#subip = subip+1

done

gmslinux
帖子: 24
注册时间: 2007-02-03 21:58
送出感谢: 0
接收感谢: 0

#2

帖子 gmslinux » 2007-02-26 17:37

代码: 全选

for((i=1;i<255;i++));do ping 10.0.0.$i -c 2;done
刚刚得到的。现在就是不知道如何得到ping的返回值;得到之后就可以判断了。
aBiNg
帖子: 1331
注册时间: 2006-07-09 12:22
来自: 南京
送出感谢: 0
接收感谢: 2 次

#3

帖子 aBiNg » 2007-02-28 11:15

代码: 全选

num=`ping $ip -c 2 -q | sed -n -e '4p' | sed -e 's/.* \([0-9]*\)%.*/\1/'`;\
[ $num -eq 0 ] && echo $ip
gmslinux
帖子: 24
注册时间: 2007-02-03 21:58
送出感谢: 0
接收感谢: 0

#4

帖子 gmslinux » 2007-03-01 9:03

搞定!

代码: 全选

#!/bin/bash

echo "start"

for((i=1;i<255;i++));do
        echo -n .
        a=192.9.200.$i
        (ping -c2 $a  > /dev/null 2>&1) && echo $a is used >>ips.txt|| echo $a is unused>>ips.txt
done

echo "succeed!"
头像
Stupid kid
帖子: 417
注册时间: 2006-10-18 12:57
送出感谢: 0
接收感谢: 0

#5

帖子 Stupid kid » 2008-08-22 15:51

代码: 全选

sudo nmap -sP 192.168.0.1-254
http://twitter.com/nothining
Mail: bjdfzster@gmail.com
南京的开源活动几乎是0,希望能有人组织下(也可以拉我入伙^_^)
最近在从零开始学习Linux程序设计,加油……
回复

回到 “Shell脚本”