试验拓扑

环境:dhcp server和dhcp客户端属于同vlan,但是客户端属于不同的交换机,在L2和L3交换机开启dhcp snooping后得出如下结论

L3交换机的配置

ip dhcp pool vlan27
network 172.28.27.0 255.255.255.0
default-router 172.28.27.254
dns-server 172.28.28.15
!
!
ip dhcp snooping vlan 27
ip dhcp snooping information option allow-untrusted //必须加此命令,因为L3交换机也开启了dhcp snooping,具体解释如下
ip dhcp snooping

interface GigabitEthernet0/0
switchport trunk encapsulation dot1q
switchport mode trunk
media-type rj45
speed 1000
duplex full
no negotiation auto
ip dhcp snooping limit rate 720

L2交换机配置

ip dhcp snooping vlan 27
ip dhcp snooping
!
interface GigabitEthernet0/0
switchport trunk encapsulation dot1q
switchport mode trunk
media-type rj45
speed 1000
duplex full
no negotiation auto
ip dhcp snooping trust

说明:

 1、从L2交换机过来的DHCP请求报文是已经被插入了选项82信息,如果将L3的Gi0/0设置为信任端口,那么插入了82选项的DHCP请求报文是允许通过的,但不会为其建立DHCP监听绑定表。即L3上只有win10的绑定条目,而没

   有win11的绑定条目。如果此时同时部署DAI,IPSG,由于L2交换机不支持这两项功能,对于L3交换机来说,从L2交换机上过来的数据可能存在IP欺骗和ARP欺骗等攻击,是不安全的。另一方面,由于L3交换机没有PC2的绑定

  条目,而DAI和IPSG必须依赖DHCP监听绑定表。因此如果需要在L3交换机上再部署DAI或者IPSG,就不能将L3交换机的Gi0/0设置为信任端口。但是将Gi0/0口设置为非信任端口以后,默认情况下,非信任端口将会丢弃收到的插

  入了82选项的DHCP请求报文。而从L2交换机过来的DHCP请求报文又正好是被插入了选项82信息的。因此必须配置ip dhcp snooping information option allow-untrusted(全局)命令,否则L3交换机将丢弃这些DHCP请求

  报文,接在L2交换机上的win11将得不到IP地址。只有配置了该命令以后,L3交换机才会接收从L2交换机发送的插入了选项82的DHCP报文,并为这些信息建立绑定条目。

  当然上面如果遇到交换机不支持ip dhcp snooping information option allow-untrusted命令可以有以下两种解决办法:

    ①在不支持的交换机的int vlan 内使用 ip dhcp relay information trusted(vlan内) 命令

    ②在接入层交换机上面关闭插入option82的功能 no ip dhcp snooping information option

 2、由于思科交换机在开启dhcp snooping后默认会打开 ip dhcp snooping limit rate 15  功能,上述试验里面 L2交换机如果接满了客户端,但是L3连接L2的接口是非信任接口就存在limit rate 15的功能,同理L2的每个非信任接口

    都是如此,想象一种场景,某时刻48个客户端 同时发起dhcp request请求报文,由于L3的下行口默认是限速15个包,这样将导致大部分客户端的dhcp request报文被丢弃,所以为了避免此情况应该在L3的下行接口适当调整

  limit rate速度,计算如下:

      假设2960为48口,因此简单的设置限速为48*15=720

注意:只有当启用了dhcp snooping的汇聚交换机或者核心才需要设置  ip dhcp snooping limit rate。如果一个核心或者汇聚交换机下面的接入层交换机众多,那么这个限速设置就需要注意了,因为端口最大的limit rate是2048,所以

   需要调整接入层端口的limit rate,使其变小  但是需要调整为一个合理的数值,因为太小了会导致IP地址获取慢

延伸:

当不开启L3交换机的ip dhcp snooping information option allow-untrusted时,在L3上面使用debug抓ip dhcp snoong信息会看到不断有来自L2的报文被丢弃,因为报文携带giaddr字段并且是非法的

L3#debug ip dhcp snooping event
DHCP Snooping Event debugging is on
*May 25 11:05:44.102: %DHCP_SNOOPING-5-DHCP_SNOOPING_NONZERO_GIADDR: DHCP_SNOOPING drop message with non-zero giaddr or option82 value on untrusted port, message type: DHCPDISCOVER, MAC sa: 5000.000b.0000

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

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

    试验拓扑 环境:dhcp server和客户端处于不同网段的情况 dhcp server的配置 no ip routing ip dhcp pool vlan27 network 172.28.27. ...

  2. (三)Cisco dhcp snooping实例1-单交换机(DHCP服务器和DHCP客户端位于同一VLAN)

    环境:cisco dhcp server和客户端都属于vlan27,dhcp server 接在交换机G0/1,客户端接在交换机的G0/2 cisco dhcp server相关配置 ip dhcp ...

  3. Cisco DHCP Snooping + IPSG 功能实现

    什么是DHCP? DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,前身是BOOTP协议, 使用UDP协议工作,常用的2个端口 ...

  4. (二)Cisco dhcp snooping配置解释

    #配置dhcp snooping相关命令 Switch(config)#ip dhcp snooping  //打开DHCP Snooping功能Switch(config)#ip dhcp snoo ...

  5. DHCP snooping

    DHCP snooping 技术介绍   DHCP监听(DHCP Snooping)是一种DHCP安全特性.Cisco交换机支持在每个VLAN基础上启用DHCP监听特性.通过这种特性,交换机能够拦截第 ...

  6. dhcp snooping、ARP防护、

    应用场景 无线客户端流动性很大和不确定,比如在外来人员比较多的地方:广场.大厅.会议室和接待室等等.使用该方案可以有效地避免因为无线端出现私设IP地址导致地址冲突或者客户端中ARP病毒发起ARP攻击的 ...

  7. DHCP、DHCP Snooping及DHCP relay工作原理入门及实践(转)

    原文https://blog.51cto.com/5167020/2312718 序:DHCP服务相对简单,写本文的目的是为了讲一些DHCP安全方面的技术. 1.DHCP基础 DHCP 全称动态主机配 ...

  8. (一)Cisco DHCP Snooping原理(转载)

    采用DHCP服务的常见问题架设DHCP服务器可以为客户端自动分配IP地址.掩码.默认网关.DNS服务器等网络参数,简化了网络配置,提高了管理效率.但在DHCP服务的管理上存在一些问题,常见的有: ●D ...

  9. 网络拓扑实例之交换机处于同一网络作为DHCP中继与服务器(八)

    组网图形 DHCP中继简介 DHCP中继用于在DHCP服务器和客户端之间转发DHCP报文.当DHCP服务器与客户端不在同一个网段时,需要配置DHCP中继.对于DHCP客户端来说,DHCP中继就是DHC ...

随机推荐

  1. Microsoft Project项目管理工具

    下载 网址 安装 要注意以前安装的32位的Office或者Visio时这里会检测到,这里也要装32位的.不能根据系统位数来了.下载前先看清你用的Microsoft的软件是什么版本. 使用 新建空白项目 ...

  2. Java 之 Request 对象

    一.Request 对象和 Response 对象原理 request和response对象是由服务器创建的,供我们使用的. request对象是来获取请求消息,response对象是来设置响应消息. ...

  3. Requests库详细的用法

    介绍 对了解一些爬虫的基本理念,掌握爬虫爬取的流程有所帮助.入门之后,我们就需要学习一些更加高级的内容和工具来方便我们的爬取.那么简单介绍一下 requests 库的基本用法 安装 利用 pip 安装 ...

  4. iframe页面script交互

    主页面: <html> <tr> <td> <div id=RightViewDiv> <iframe name=SubSeekFrame sty ...

  5. .net core中使用Quartz任务调度

    使用xml配置Quartz任务调度程序 1.Nuget Install-Package Quartz Install-Package Quartz.Plugins 2.站点根目录下加入文件quartz ...

  6. ETL 的一些概念

    1. What is a logical data mapping and what does it mean to the ETL team? 什么是逻辑数据映射?它对ETL项目组的作用是什么? 答 ...

  7. Android开发之常用Intent.Action【转】

    1.从google搜索内容 Intent intent = new Intent(); intent.setAction(Intent.ACTION_WEB_SEARCH); intent.putEx ...

  8. windows 任务计划

    我的需求是每天定时访问网站的某一个控制器去刷新库存 流程如下(我自己的理解) 进入任务计划页面 上图指定的bat文件内容就是访问指定的网站路径 dingshi.bat文件内容如下(这个是网上找的,可能 ...

  9. 【转】高性能网络编程7--tcp连接的内存使用

    当服务器的并发TCP连接数以十万计时,我们就会对一个TCP连接在操作系统内核上消耗的内存多少感兴趣.socket编程方法提供了SO_SNDBUF.SO_RCVBUF这样的接口来设置连接的读写缓存,li ...

  10. yum升级curl支持http2测试

    首先,先为你的服务器获取最新匹配的源:http://mirror.city-fan.org/ftp/contrib/yum-repo/ 方法1,rpm方式安装city-fan.org的yum源 # 安 ...