局域网内存在多个DHCP服务器
如果有三层交换的话,开启DHCP-snopping就可以解决这个问题
如果没有的话有几种方法:
1用任意一种抓包工具抓包,看哪台机器发出的DHCP包最多
2在获取到10xx的电脑上看一下DHCP server是哪个IP,看能否进入DHCP Server,如果可以进去那就进去管理界面,关掉DHCP Server(也可以通过查看路由的MAC地址把他封杀掉,很快就能找到谁装了这个路由)
3如果有多个交换机,逐个关闭即可慢慢发现。
存在多个dhcp
这样工作的
如果有域
域下面的主控dhcp会启动优先给域的成员分配ip
域外dhcp会不予工作
没有域
计算机会发出一个请求
所有的dhcp服务器都可以接收
并返回确认信息
由于网络中路径不同
有的dhcp反应会快点
优先到达
于是计算机选择第一台dhcp作为服务器
并给予回应
其他的dhcp就会放弃
是这样的
根据路由器说明中提供的IP打开路由器设置页面,其中有一项是"DHCP服务"
把其中的自动分配IP地址打开,剩下的就是你去设定起始IP和终止IP了子网掩码、DNS和网关在根据提示设置就可以了
让我说就是直接建立新的连接
后果就是两个网关 然后各个客户机若都没有固定IP 而是通过DHCP来获得地址 获得网关 然后一片大乱 当然了 除非你的两个DHCP服务器都可以接通外网且两个DHCP服务器的IP地址都不一样。这样客户机就随便获得其中一个服务器的DHCP 都可以接通外网。还有很多无法预知的问题 你可以试试在一个成熟的局域网里面 把其中一个端口接入到一个不通外网的路由器的LAN口上。然后这个路由器不通外网 其他客服机设置为自动获得地址 。。然后就都不通了。。
由于
DHCP
协议是二层的,无法找到网络中DHCP
服务器的源、目的
IP
地址
只能通过采取用
tcpdump
抓包的方法,来判断对方的
MAC,如果有了
MAC
就好办了
普通情况下,tcpdump
抓到的包都是
3
层的,只能看到
IP
头和其他
4
层头(比如
TCP/UDP)
tcpdump
下面有个
-e
参数
-e
the
link-level
header
on
each
dump
line
这个是关键,还有一个关键部分就是
port,因为
dhcp
协议会用到
UDP/67,知道这两点就好办了,抓包看看
MAC
就可以了
有了
MAC
就好办了,再用
arp
-n
就能看到其
IP
抓包举列:
代码:
[root@platinum
root]#
tcpdump
-e
-i
eth1
-nn
port
67
-c
3
2>&1|awk
/bootp/{print
"
-->
"}
0:0c:85:ad:e5:af
-->
ff:ff:ff:ff:ff:ff
e7:0a:19:80:03:09
-->
0:0c:85:ad:e5:af
0:0c:85:ad:e5:af
-->
e7:0a:19:80:03:09
[root@platinum
root]#
忘了说,tcpdump是LINUX下的命令,WINDOWS的话你去下个软件siniff
pro
0条评论