用shell统计局域网内的IP+MAC地址,还有没有使用的IP地址

简介:
有的时候需要给服务器或者什么的配置一个静态IP地址又不知道那个IP地址没有被占用,这个时候使用这个脚本就很方便了。
#cat arping
#!/bin/bash
IPaddr=192.168.0.
ETHX=eth0
IPFILE=/root/arping.txt
UPIPaddr=/tmp/ipup.txt
DOWNIPaddr=/tmp/ipdown.txt
>$IPFILE
touch $DOWNIPaddr
touch $UPIPaddr
touch $IPFILE
for IP in {1..254}
do
arping  -I $ETHX -c 1 $IPaddr$IP >>$IPFILE
done
echo UPIPADDR
echo "  IPADDR            MAC ";  cat $IPFILE  |grep reply |awk '{print $4"    "$5}' |awk -F"[" '{print $1" "$2}' | awk -F"]" '{print $1"  "$2}' | column -t >$UPIPaddr
echo DOWNIPADDR
IPTMP=/tmp/ip.txt
IPTMP2=/tmp/ip2.txt
grep -v ^'[S|R]' $IPFILE |awk -FARPING '{print $2}'|awk -Ffrom '{print $1}' |column -t >$IPTMP
grep -v ^'[S|R]' $IPFILE |awk -F"Unicast reply from" '{print $2}'|awk '{print $1}'|uniq -c |awk '{print $2}' |uniq -c |awk '{print $2}'|column -t >$IPTMP2
cat $IPTMP $IPTMP2 |sort -t "." -k4,4n |uniq -u  >$DOWNIPaddr
VL=`wc -l $UPIPaddr |awk '{print $1}'`
VL2=`wc -l $DOWNIPaddr |awk '{print $1}'`
cat $UPIPaddr
echo 目前有$VL台主机为活动状态
cat $DOWNIPaddr |paste -s
echo 目前有$VL2个可用IP地址
 
请好用的,直接将已经开着的主机将IP地址与MAC地址对应列出来,并将没有使用的IP地址打印出来,有时候用的话时非常方便的。
 
 
 
NETIP=192.168.0.0/24
echo IPaddr"      " status; nmap -sP $NETIP |grep up |awk '{print $3}' |awk -F"(" '{print $2}'|awk -F")" '{print $1"   up" }' |column -t 
 

本文转自zhaoyun00 51CTO博客,原文链接:http://blog.51cto.com/zhaoyun/618076

相关文章
|
3月前
|
Shell
Shell遍历HDFS路径统计层级目录大小
Shell遍历HDFS路径统计层级目录大小
|
5月前
Mac下查看公网以及内网IP地址
Mac下查看公网以及内网IP地址
267 0
|
1天前
|
运维 Shell
Shell脚本判断IP是否合法性(多种方法)
Shell脚本判断IP是否合法性(多种方法)
|
7天前
|
运维 监控 Shell
利用Shell脚本编写局域网监控软件:实时监测主机连接情况
本文介绍了如何使用Shell脚本创建一个局域网监控工具,以实时检查主机连接状态。脚本包括扫描IP地址范围检测主机可达性及使用`netstat`监控ESTABLISHED连接。此外,还展示了如何每60秒将连接数数据自动提交到指定网站API,以便实时跟踪网络活动。这个自动化监控系统有助于提升网络安全性和故障排查效率。
31 0
|
24天前
|
Shell
Shell一键检测本地存活ip是否存活
Shell一键检测本地存活ip是否存活
10 0
|
2月前
|
存储 缓存 网络协议
计算机网络:思科实验【2-MAC地址、IP地址、ARP协议及总线型以太网的特性】
计算机网络:思科实验【2-MAC地址、IP地址、ARP协议及总线型以太网的特性】
|
3月前
|
网络协议 Shell Linux
系统初始化shell,包括:挂载镜像、搭建yum、设置主机名及IP地址和主机名映射、配置动态IP、关闭防火墙和selinux
系统初始化shell,包括:挂载镜像、搭建yum、设置主机名及IP地址和主机名映射、配置动态IP、关闭防火墙和selinux
37 2
|
3月前
|
Python
pytho3 urllib urllib3 获取本地ip地址和mac地址发送post到指定http服务器
pytho3 urllib urllib3 获取本地ip地址和mac地址发送post到指定http服务器
32 0
|
3月前
|
Python
pytho2 urllib urllib2 获取本地ip地址和mac地址发送post到指定http服务器
pytho2 urllib urllib2 获取本地ip地址和mac地址发送post到指定http服务器
19 0
|
3月前
|
Linux 开发工具
Linux配置静态ip及克隆出现Mac相同问题
Linux配置静态ip及克隆出现Mac相同问题
31 0
Linux配置静态ip及克隆出现Mac相同问题