首页 > 所有文章 > 行业 >文章详情

IP获取问题(ip自动获取怎么设置)

时间:2023-10-28 08:31:23 浏览量:18

在PC数量30台以下的小型局域网,如果是较为稳定的办公PC我会推荐用固定IP地址,但是如果PC数量较多的情况下,手动去设置IP地址明显不合适(几百台PC全部手工配IP会疯的),这种情况下就要用到DHCP了,DHCP可以为PC自动分配IP地址,这个节省了很多工作量,因为PC机的获取IP的机制问题,PC会获取最先响应的DHCP所分配的地址,那么这里问题就来了,假设在一个企业网络中,有一个用户私接了一台家用无线路由,大家都知道无线家用路由器是默认开启DHCP服务器的,这个时候有一台PC刚好开机,正好也是自动获取IP地址的,那么这台PC就会发送DHCP请求报文,因为DHCP请求报文是以广播形式发送的,所以无线路由器也会接收到这请求,然后无线路由器率先响应了这台PC,然后这台PC就会使用无线路由器所分配的IP地址了,这种情况最糟糕的就是大面积断网了,而且因为这个路由器是用户私自接入的,同时也增加了排查难度。这种情况我们称之为非法DHCP攻击。

上述的这个局域网如果配置了DHCP Snooping就不会出现这种情况了,那么我们先来了解一下DHCP Snooping是一个怎样的协议。

DHCP Snooping是一种安全特性,是为了保证客户端能够从合法的DHCP服务器上获取到IP地址。

DHCP Snooping最核心的功能就是"信任功能",这个信任功能可能控制DHCP服务器报文的来源,信任功能会把端口分成"信任端口"和"非信任端口"。

信任端口:允许所有的DHCP报文通过。

非信任端口:不允许DHCP服务器响应报文通过,当非信任端口接收到DHCP响应报文后会把这个报文丢弃。

通过信任端口和非信任端口基本上就可以排除非法DHCP了。

下面我们通过 ENSP 模拟软件进行模拟实验。

描述:正常情况下PC1和PC2需要获取到从R1分配到的192.168.1.0 网段的IP地址,但是因为有R2的非法DHCP服务器的存在,PC1和PC2就会有概率获取到R2所分配的非法DHCP地址。

实验拓扑

实验环境一(未配置DHCP Snooping):

R1:

R2:

SW1:

不知道上述的实验配置如何配置的话可以查看一下我前段时间写的这篇文章 《华为交换机DHCP的两种配置方式》

实验结果:

PC1和PC2 成功地被R2所迷惑了,获取的是R2的所非配的非法IP地址。

PC1实验结果

PC2实验结果

实验分析:

以下是wireshark 抓取SW1的eth0/0/4端口和R1的eth0/0/0的DHCP报文,我在PC1上使用"ipconfig / release"释放当前IP,然后再使用"ipconfig / renew"重新获取IP所得出的结果。

我们先来看看R1的eth0/0/0端口的DHCP报文,通过下图,我们都可以看到R1的确是接收到了来自PC1所发送出来的DHCP请求,然后就立刻做出了响应。

R1接收到的报文

然后我们再来看看SW1的eth0/0/4端口的DHCP报文,通过下图我们都可以看到PC1发送的DHCP请求,然后R1和R2都发送了响应报文,但是因为R1的响应报文发的比较快,因为PC获取IP地址的机制问题,所以PC1选择了由R2来为自己分配IP地址。

PC1接收到的报文

看到这里可能有人会问PC所获取到的IP地址是有租约时间限制的,如果租约时间到期后会重新获取别的IP的这就有可能获取到R1所分配的IP地址,如果R2一直运作正常且没有其他干预的话PC1会一直沿用R2分配的IP地址,PC会在IP租约时间过去50%就会提出续租请求,如果没有得到服务器的响应,PC又会在IP租约时间过去75%再次提出续租请求。

然后我们再来做第二个实验

实验环境二(配置DHCP Snooping):

R1:

R2:

SW1:

注意:所有端口都系要开启DHCP Snooping。

实验结果:

PC1和PC2已经正常获取到合法的IP地址了。

PC1实验结果

我们来看看R1的eth0/0/0口的DHCP报文:

R1接收到的报文

我们再来看看R2的eth0/0/0口的DHCP报文,通过下图我们可以看到R2确实是收到了PC1的DHCP请求报文,R2也发送了响应报文。

R2接收到的报文

我们再来看看SW1的eth0/0/4端口的DHCP报文,通过下图我们只能看到来自R1发送的报文了,而R2的已经被过滤掉了。

PC1接收到的报文