DHCP Snooping原理和配置

news/2024/5/5 17:21:04/文章来源:https://blog.csdn.net/qq_50929489/article/details/126982548

DHCP Snooping原理和配置

  • 基本原理
  • 配置

一、基本原理

DHCP Snooping
功能: 使能该技术可以防止非法用户攻击,使得客户端可以从合法的服务器获取IP。
过程:使能了DHCP Snooping的设备将用户(DHCP客户端)的DHCP请求报文通过信任接口发送给合法的DHCP服务器。之后设备根据DHCP服务器回应的DHCP ACK报文信息生成DHCP Snooping绑定表。后续设备再从使能了DHCP Snooping的接口接收用户发来的DHCP报文时,会进行匹配检查,能够有效防范非法用户的攻击。
作用: 在网络中使用DHCP Snooping技术可以控制DHCP服务器应答报文的来源,以防止网络中可能存在的DHCP Server仿冒者为DHCP客户端分配IP地址及其他配置信息。

DHCP Snooping信任功能将接口分为信任接口和非信任接口:
信任接口(trust)正常接收DHCP服务器响应的DHCP ACK、DHCP NAK和DHCP Offer报文。
非信任接口(untrust)在接收到DHCP服务器响应的DHCP ACK、DHCP NAK和DHCP Offer报文后,丢弃该报文。

DHCP Snooping绑定表
使能DHCP Snooping功能的二层接入设备收到DHCP服务器发送的ACK消息的时候,会提取其中的关键字段形成绑定表,包括IP地址、MAC地址、以及客户端和二层接入设备的接口信息(接口编号和VLAN所属)。
DHCP Snooping绑定表根据DHCP租期进行老化或根据用户释放IP地址时发出的DHCP Release报文自动删除对应表项。
由于DHCP Snooping绑定表记录了DHCP客户端IP地址与MAC地址等参数的对应关系,故通过对报文与DHCP Snooping绑定表进行匹配检查,能够有效防范非法用户的攻击。
      为了保证设备在生成DHCP Snooping绑定表时能够获取到用户MAC等参数,DHCP Snooping功能需应用于二层网络中的接入设备或第一个DHCP Relay上
      在DHCP中继使能DHCP Snooping场景中,DHCP Relay设备不需要设置信任接口。因为DHCP Relay收到DHCP请求报文后进行源目的IP、MAC转换处理,然后以单播形式发送给指定的合法DHCP服务器,所以DHCP Relay收到的DHCP ACK报文都是合法的,生成的DHCP Snooping绑定表也是正确的。

DHCP Snooping应用场景
1、防止DHCP Server仿冒者攻击导致用户获取到错误的IP地址和网络参数
2、防止非DHCP用户攻击导致合法用户无法正常使用网络
3、防止DHCP报文泛洪攻击导致设备无法正常工作
4、防止仿冒DHCP报文攻击导致合法用户无法获得IP地址或异常下线
5、防止DHCP Server服务拒绝攻击导致部分用户无法上线

二、配置

特点:
1、DHCP Snooping功能是交换机的基本特性,无需获得License许可即可应用此功能。
2、如果需要上线的用户数目超过了设备支持的DHCP Snooping绑定表规格,超出的用户将无法上线。
3、DHCP Snooping功能不支持在接口的三层模式下配置。
4、VXLAN场景下,不支持DHCPv6 Snooping功能。
5、VRRP场景下,备设备不能同步主设备上的DHCP Snooping绑定表。故VRRP场景下不能配置DHCP Snooping功能,否则会导致主备倒换后原有业务失效.
6、DHCP Snooping最多支持处理带有双层VLAN Tag的DHCP报文。对于带有更多层VLAN Tag的报文建议不要配置DHCP Snooping功能,否则会导致丢包,影响用户的使用体验。
7、如果设备使能了DHCP Snooping功能,不能配置2 to 2的VLAN Mapping功能,否则会导致DHCP用户无法上线。

在这里插入图片描述

1、执行命令dhcp snooping enable [ ipv4 | ipv6 ],全局使能DHCP Snooping功能。
缺省情况下,设备全局未使能DHCP Snooping功能。
也可在VLAN接口下使能dhcp snooping
2、使能后,配置信任接口,这样才能 生成DHCP Snooping绑定表。
进入接口模式下: dhcp snooping trusted   默认接口是untrust
或者直接使用  dhcp snooping trusted interface g0/0/1.
VLAN视图下:执行命令vlan vlan-id,进入VLAN视图。执行命令dhcp snooping trusted interface interface-type interface-number ,配置接口为“信任”接口。缺省情况下,接口的状态为“非信任”状态。在VLAN视图下执行此命令,则命令功能仅对加入该VLAN的接口收到的属于此VLAN的DHCP报文生效;在接口下执行该 命令,则命令功能对该接口接收到的所有DHCP报文生效。
3、查看配置信息。
display dhcp snooping configuration [ vlan vlan-id | interface interface-type interface-number查看DHCP Snooping绑定表相关信息。
执行命令display dhcp snooping user-bind 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_11830.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++开发笔试真题

文章目录单选1关于斐波那契数列的这段代码时间复杂度?(O(n))2关于Linux系统,描述错误的是?3❓输出正确的结果 94在编译系统中,语法分析程序输出的是—语法分析树5❓网段地址154.27.0.0的网络,若不做子网划分&#xff0…

C_plus_侯捷课件笔记

大气的编程 文章目录大气的编程complex例子创建一个类需要注意:标准库(#include)头文件标准形式:声明(类定义)构造函数class template (类模板):操作符重载:reference(引用&#xff…

2W 行 | 深入理解「设计模式」

你好,我是悟空。 如何将设计模式运用到项目中?如何理解设计模式的妙用?如何提高代码质量?如何做好重构? 这些问题值得我们每个软件工程师去深入思考和总结。 今天推荐一本书:《设计模式之美》&#xff0…

【附源码】从0到1项目搭建-框架搭建(上)

前言 大家好,本文是基于 SpringBoot 从0搭建一个企业级开发项目,基于SpringBoot 的项目,并集成MyBatis-Plus、Druid、Logback 等主流技术。希望对大家有所帮助~ 目录前言一、概述二、创建统一的依赖管理2.1、统一的依赖管理工程创建2.2、Mave…

Java深入数组

Java深入数组 1、数组概念 数组就是存储数据长度固定的容器,保证多个数据的数据类型要一致。 2、数组的初始化 Java语言中数组必须先初始化才能使用,所谓初始化就是为数组的数组元素分配内存空间,并为每个数组元素赋初始值。一旦数组的初…

ELK优雅开启密码登录认证

ELK登录认证 当我们安装好ELK后,默认是可以直接访问到kibana的,可以直接查看收集到的信息,这样很不安全。 很多人采用的是Nginx代理来做登录验证功能,这也是一种实现方式,但是我们还有另一种更加优雅的方式&#xff0c…

Vue2.0 —— Vue.nextTick(this.$nextTick)源码探秘

Vue2.0 —— Vue.nextTick(this.$nextTick)源码探秘 《工欲善其事,必先利其器》 一、知识储备 在学习这个 API 之前,我们需要进行一定量的知识储备,并且是从最基础的开始: nextTick,译为&…

激光雷达物体检测(二):点视图检测算法

综述: 1.点视图: PointNet/PointNet,Point-RCNN,3D SSD 2.俯视图: VoxelNet,SECOND,PIXOR,AFDet 3.前视图: LaserNet,RangeDet 4.多视图融合: 俯视图…

谷粒商城 高级篇 (十九) --------- 消息队列

目录一、概述二、应用三、RabbitMQ 概念四、安装 RabbitMQ五、RabbitMQ 运行机制Exchange 类型六、RabbitMQ 整合七、RabbitMQ 消息确认机制1. ConfirmCallback2. ReturnCallback3. Ack 消息确认机制一、概述 大多应用中,可通过消息服务中间件来提升系统异步通信、…

python实现图像添加噪声、噪声处理、滤波器代码实现

目录 加载图像添加噪声 图像傅里叶变换和反变换并可视化 图像处理---高通滤波、低通滤波、带通滤波 低通滤波器---Butterworth低通滤波器、理想低通滤波器、高斯低通滤波器 加载图像添加噪声 高斯噪声是指它的概率密度函数服从高斯分布(即正态分布)…

Linux设置开机自启动Java程序--三种方式

Linux设置开机自启动Java脚本程序 缘起 公司内部的服务器中有个SpringCloud项目需要运行,之前都是通过nohup java-jar .. &的命令来执行的,但是这个cloud项目服务太多,手动启动太麻烦而且容易出错,干脆写个执行java的脚本好…

C++内存管理(每日更新)

文章目录0 概述0.1 四个层面的基本用法1 Primitives1.1 new expression1.2 delete expression1.3 调用构造函数与析构函数1.4 array new & array delete1.4.1 array new0 概述 C应用程序malloc非常重要 可以看出,C内存管理主要是有四个层面 0.1 四个层面的基本…

NFT重构票务系统

什么是NFT? NFT是运行在区块链上的一种不可分割的凭证(Non-Fungible Token),或者称为非同质化代币。NFT目前主要用在数字艺术品的铸造、拍卖、流转,因为一个NFT能唯一地确定它的所有者,并可在链上跟踪每一…

自然语言语义分析研究进展_笔记

自然语言语义分析研究进展_笔记 词语语义分析:确定词语意义,衡量两个词之间的语义相似度或相关度; 句子语义分析:研究包含句义分析和句义相似度分析两方面; 文本语义分析:识别文本的意义、主题、类别等语义信息的过程&#xff…

使用@JsonFormat并进一步了解:格式化java.util.Date对象

Java 8 Spring Boot 2.7.3 jackson 2.13.3 -- ben发布于博客园 0、前言 开发过程中遇到问题: 前端调用接口得到的时间对象(java.util.Date)总是存在这样那样的问题。 调查后发现,可以使用 @JsonFormat注解(来自jackson依赖包)解决相关问题。 ben发布于博客园 新建spring …

区块链分叉带来的安全挑战

区块链分叉分为软分叉和硬分叉。本文主要探讨的是硬分叉,一种不支持向后兼容的软件升级方式。硬分叉是共识的分裂或者改变,共识就是区块链系统中各节点达成数据一致性的算法,正常情况下每个节点需要运行相同规则的算法,例如比特币…

计算机毕业设计之java+javaweb的影院管理系统-电影院管理系统

计算机毕业设计之javajavaweb的影院管理系统-电影院管理系统 项目介绍 影院的需求和管理上的不断提升,影院管理的潜力将无限扩大,影院管理系统在业界被广泛关注,本网站及对此进行总体分析,将影院信息管理的发展提供参考。影院管理系统对影院发展有着明显的带动效应,尤其对当地影…

【ManageEngine】OpManager 2022用户体验报告

关于SoftwareViews SoftwareReviews是Info-Tech Research Group的一个部门,是一家世界级的技术研究和咨询公司,拥有超过20年的基于研究的IT建议和技术实施。 SoftwareViews务实的工具和详细的客户洞察力帮助软件购买者在技术决策中取得最大成功。 Sof…

Java并发编程解析 | 基于JDK源码解析Java领域中ReentrantLock锁的设计思想与实现原理 (一)

苍穹之边,浩瀚之挚,眰恦之美; 悟心悟性,善始善终,惟善惟道! —— 朝槿《朝槿兮年说》写在开头在并发编程领域,有两大核心问题:一个是互斥,即同一时刻只允许一个线程访问共享资源;另一个是同步,即线程之间如何通信、协作。主要原因是,对于多线程实现实现并发,一直以…

全能赛道、热门方向、稀缺数据,“嬴彻-清华AIR杯”自动驾驶技术大赛火热开赛中

如果你关注自动驾驶,那有这样一个算法大赛,值得参与。由卡车自动驾驶领导者嬴彻科技与清华大学智能产业研究院(AIR)精心打造的“嬴彻-清华AIR杯”自动驾驶技术挑战赛正火热开赛中。这是国内首个同时覆盖干线物流和城市道路双赛道的大赛。决策规划是自动驾驶当下的热门方向和技术…