cat testnew.sh
#!/bin/bash

catch_ip (){
Ip=`sudo nmap -sP 192.168.1.0/24 |grep -i -B2 $mac|grep Nmap |cut -d " " -f5,6|cut -d " " -f2`
echo "$Ip"
}

echo ""
echo "***********if there is a DHCPREQUEST,this shell will continue ******** "
echo ""
mac=`sudo tcpdump port 67 -c 1 |grep -v "^$" | sed -n '1'p |cut -f9 -d" "`
echo ""
if [ -z $mac ] ;then
mac="mac is null,do you forget the sudo,please retry by:sudo $0"
exit 1
fi
clear
echo "***********MAC:$mac wait the IP ************** "
echo ""

#sleep 7
#sleep 1
#echo 7
#sleep 1
###Time=`cat macip.txt|grep done|cut -d " " -f11`
catch_ip

if [ -z $Ip ]
then
echo "do the second nmap "
catch_ip
fi
if [ -z $Ip ]
then
echo "do the third nmap "
catch_ip
fi
if [ -z $Ip ]
then
echo "do the 5 nmap "
catch_ip
fi
if [ -z $Ip ]
then
echo "do the 6 nmap "
catch_ip
fi
if [ -z $Ip ]
then
echo "do the 7 nmap "
catch_ip
fi
if [ -z $Ip ];then
Ip="********sorry,nmap cannot find the MAC,maybe IP address has a conflict,please have a retry,or you can have a retry by : sudo nmap -sP 192.168.1.0/24 |grep -i -B2 $mac|grep Nmap |cut -d \" \" -f5,6|cut -d \" \" -f2 *******************"
echo "four times"
echo "$Ip "
fi
echo "all is done"
exit 0

抓DHCP客户端ip脚本的更多相关文章

  1. 电脑无法上网,DHCP客户端不能正确获取IP地址

    问题特征:DHCP服务器更新[保留]配置信息后,给一客户端绑定了新的IP地址;但客户端IP地址并未正确更新; 处理: 一.检查DHCP服务器配置; 1.MAC地址.IP地址均正确;并已“添加到筛选器” ...

  2. DHCP获取IP地址过程中捕获的报文—三级网络总结(二)

    上一篇文章主要说了一下知识点中的IP地址的考点,这一篇我打算说说DHCP获取IP地址过程中捕获的报文的这个考点,都是自己的理解,有错误欢迎指正. DHCP是应用层协议,UDP是传输层协议,IP是网络层 ...

  3. (五)Cisco dhcp snooping实例3-多交换机环境(DHCP服务器和DHCP客户端位于同VLAN)

    试验拓扑 环境:dhcp server和dhcp客户端属于同vlan,但是客户端属于不同的交换机,在L2和L3交换机开启dhcp snooping后得出如下结论 L3交换机的配置 ip dhcp po ...

  4. C#服务器获取客户端IP地址以及归属地探秘

    背景:博主本是一位Windows桌面应用程序开发工程师,对网络通信一知半解.一日老婆逛完某宝,问:"为什么他们知道我的地址呢,他们是怎么获取我的地址的呢?" 顺着这个问题我们的探秘 ...

  5. ASP.NET获取真正的客户端IP地址的6种方法

    Request.ServerVariables("REMOTE_ADDR") 来取得客户端的IP地址,但如果客户端是使用代理服务器来访问,那取到的就是代理服务器的IP地址,而不是真 ...

  6. PXE DHCP获取IP与传统DHCP获取IP地址的区别

    正常的DHCP获取IP的流程(Discover-Offer-Request-Ack): (Discovery)主机端在LAN中发布MAC地址为FF:FF:FF:FF:FF:FF的广播来寻找DHCP服务 ...

  7. c#中获取服务器IP,客户端IP以及Request.ServerVariables详细说明

    客户端ip: Request.ServerVariables.Get("Remote_Addr").ToString();  客户端主机名: Request.ServerVaria ...

  8. .net通过获取客户端IP地址反查出用户的计算机名

    这个功能看似很少用到,但又非常实用,看似简单,但又在其中存在很多未知因素造成让人悲痛莫名的负能量... 这是公司内部最近在使用的功能,因为是DHCP,所以有时会根据计算机名做一些统计和权限的设置. 也 ...

  9. JS获取客户端IP地址、MAC和主机名七种方法

    一.使用JS获取客户端IP的几个方法方法一(只针对IE且客户端的IE允许AcitiveX运行,通过平台:XP,SERVER03,2000).获取客户端IP代码:<HTML><HEAD ...

随机推荐

  1. vue - 动态绑定 class

    <template>   <div class="todo-item" :class="{'is-complete':todo.completed}&q ...

  2. 腾讯X5内核使用详解(X5内核播放器使用如何去除控制栏全屏播放)以及一些注意事项

    例子下载地址 https://www.lanzous.com/i2zsv5g      GIT就不用了麻烦的不行 本人安卓刚学 就上X5内核弄了老长时间由于对maven 和idea不熟悉刚开始导包都是 ...

  3. 《机学五》KNN算法及实例

    一.概述 [定义]如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别. 二.距离计算公式 两个样本的距离可以通过如下公式计算,又叫[欧式距 ...

  4. 吴裕雄--天生自然java开发常用类库学习笔记:国际化程序

    import java.util.ResourceBundle ; public class InterDemo01{ public static void main(String args[]){ ...

  5. 吴裕雄--天生自然java开发常用类库学习笔记:SortedSet接口

    import java.util.SortedSet ; import java.util.TreeSet ; public class TreeSetDemo05{ public static vo ...

  6. 从0开始自己配置一个vps虚拟服务器(3)

    安装数据库mysql,因为这个服务器比较烂,我只能装低版本的数据库.尝试了很多遍,终于装上去了,高版本应该没那么麻烦. 我安装了很多遍,下载的安装包,都没有安装成功. mysql各版本安装地址: (我 ...

  7. 在各浏览器和各分辨率下如何让div内的table垂直水平居中?

    本文主要针对需要全屏显示的系统页面内,因为系统经常会用到表格table布局,偶尔的table需要显示在div的正中间,所以鄙人特此总结下div内table的万千姿态. <!DOCTYPE htm ...

  8. Docker Ubuntu 例子

    版权所有,未经许可,禁止转载 章节 Docker 介绍 Docker 和虚拟机的区别 Docker 安装 Docker Hub Docker 镜像(image) Docker 容器(container ...

  9. vue作用域插槽实践

    引言 我在练手的时候发现后端返回的数据可以通过两种方式渲染 (自己遇到的 可能你都会 哈哈哈) 后端传过来的数据函数 from django.http import JsonResponse def ...

  10. RobotFramwork中实现oracle数据库的连接(终于解决cx_oracle问题)

    RobotFramework连接数据库有java实现,也有python实现的,现在研究的python实现的,java还没尝试.有兴趣的参考后面的转载文章.     步骤(也转载了别人的文章,因为写的比 ...