配置R1DHCP ServerR2R4DHCPClientR3为静态IP地址:

R1(config)#int f0/0

R1(config-if)#ip add 172.16.1.1 255.255.255.0

R1(config-if)#no sh

R1(config)#service dhcp

R1(config)#ipdhcp pool DHCP_POOL

R1(config-config)#network172.16.1.0 255.255.255.0

R1(config)#ipdhcp excluded-address 172.16.1.1 172.16.1.1

R1(config)#ipdhcp excluded-address 172.16.1.3 172.16.1.3

R2(config)#intf0/0

R2(config-if)#ip add dhcp

R2(config-if)#nosh

R3(config)#intf0/0

R3(config-if)#ip add 172.16.1.3 255.255.255.0

R3(config-if)#no sh

R4(config)#intf0/0

R4(config-if)#ip add dhcp

R4(config-if)#no sh

SW1(config)#int port-channel 1

SW1(config)#int range f0/11- 12

SW1(config-if)#switchport encapsulation dot1q

SW1(config-if)#switchport mode trunk

SW1(config-if)#channel-group1 mode on

SW2(config)#int port-channel 1

SW2(config)#int range f0/11- 12

SW2(config-if)#switchport encapsulation dot1q

SW2(config-if)#switchport mode trunk

SW2(config-if)#channel-group1 mode on

配置DHCP SNOOPING

SW1(config)#ip dhcp snooping   //启用DHCP监听功能

SW1(config)#ip dhcp snooping vlan 1 //配置SW1监听Vlan 1的DHCP数据包

SW1(config)#ip dhcp snooping information optionallow-untrusted

//配置SW1能从非信任端口接收带Option 82的DHCP报文

SW1(config)#ip dhcp snooping verify mac-address //检测非信任端口CHADDR字段与源MAC是否相同

SW1(config)#ip dhcp snooping databaseflash:dhcp_snooping.db //DHCP监听绑定表保存在Flash中

SW1(config)#ip dhcp snooping database write-delay15 //DHCP监听绑定表更新后等待15秒再保存

SW1(config)#ip dhcp snooping database timeout 15 //DHCP监听绑定表保存失败后,只重新尝试15秒

SW1#ip dhcp snoopingbinding 0023.04e5.b221 vlan 1 172.16.1.3 int f0/3 expiry 4294967295  //手工添加绑定,因为静态IP地址不会自动生成DHCP监听绑定条目,它也是DAI和IPSG的基础

SW1(config)#int f0/1

SW1(config-if)#ip dhcp snooping trust //配置本端口为信任端口

SW1(config)#int range f0/11 - 12

SW1(config-if)#ip dhcp snooping limit rate 20 //限制非信任端口每秒钟能接受的DHCP数据包为20个

SW2(config)#ip dhcp snooping

SW2(config)#ip dhcp snooping vlan 1

SW2(config)#ip dhcp snooping verify mac-address

SW2(config)#ip dhcp snooping database flash:dhcp_snooping.db

SW2(config)#ip dhcp snooping database write-delay15

SW2(config)#ip dhcp snooping database timeout 15

SW1#ip dhcp snooping binding 0023.04e5.b221 vlan 1 172.16.1.3 int f0/3 expiry42967295

SW2(config)#int range f0/11 - 12

SW2(config-if)#ip dhcp snooping trust

SW2(config)#int range f0/3 - 4

SW2(config-if)#ip dhcp snooping limit rate 10

R1(config)#ip dhcp relay information trust-all //配置DHCP Server能接收Option82为0的DHCP报文

实验调试

SW1#show ip dhcp snooping binding //查看监听绑定表

配置DAI

DAI根据DHCP监听绑定表来工作;DAI也分为信任端口和非信任端口,默认所有端口都为非信任端口;DAI检查所有非信任端口请求和响应的ARP数据包,对不符合DHCP监听绑定表要求的ARP数据包丢弃。所以交换机中必须要有所有非信任端口主机的监听绑定条目,否则该主机将不能通信。这将使所有主机都被迫采用DHCP获取IP地址(或管理员指定的IP地址),因为DHCP监听绑定表已经对其进行了绑定,可以有效地防止用户私自更改指定IP地址。

SW1(config)#ip arp inspection vlan 1 //在Vlan1启用DAI

SW1(config)#ip arp inspection validatesrc-mac dst-mac ip //检查ARP(请求和响应)报文

中的源MAC地址、目的MAC地址、源IP地址和DHCP Snooping绑定中的信息是否一致

SW1(config)#int f0/1

SW1(config-if)#ip arp inspection trust //配置本接口为信任接口

SW1(config)#int range f0/11 - 12

SW1(config-if)#ip arp inspection limit none //取消ARP包的限制,默认15个包/秒

SW2(config)#ip arp inspection vlan 1

SW2(config)#ip arp inspection validate src-macdst-mac ip

SW2(config)#int range f0/11 - 12

SW2(config-if)#ip arp inspection trust

SW2(config)#int range f0/3 - 4

SW2(config-if)#ip arp inspection limit 10

实验调试

SW1#show ip arp inspection //查看DAI信息

SW1#show ip arp inspection interfaces //查看DAI接口状态和ARP包的数量限制

配置IPSG

默认时,IPSG不检查所有接口的数据包,因此IPSG只需要在不信任接口上进行配置即可。

SW1(config)#int f0/2

SW1(config-if)#ip verify source port-security //在本接口启用IPSG功能

SW2(config)#int range f0/3 - 4

SW2(config-if)#ip verify source port-security

SW2#ip source binding 0023.04e5.b221 vlan1 172.16.1.3 int f0/3 //手工在IP源绑定表中添加静态IP地址记录

说明:使用“ip dhcp snooping binding”命令手工创建DHCP监听绑定条目时,会自动在IP源绑定表中创建记录;然而使用“ip souce binding”命令手工创建IP源绑定条目时,则不会在DHCP监听绑定表中创建记录。

配置端口安全特性:

由于试验中开启了“源IP地址和源MAC过滤”,所以同时要配置端口安全功能。

SW1(config)#int f0/2

SW1(config-if)#switchport mode access

SW1(config-if)#switchport port-security

SW1(config-if)#switchport port-security max-mac-address 1

SW1(config-if)#switchport port-security mac-addresssticky

SW1(config-if)#switchport port-security violationshutdown

SW2(config)#int range f0/3 - 4

SW2(config-if)#switchport mode access

SW2(config-if)#switchport port-security

SW2(config-if)#switchport port-security max-mac-address 1

SW2(config-if)#switchport port-security mac-addresssticky

SW2(config-if)#switchport port-security violationshutdown

IPSG的2种过滤类型:

1.源IP地址过滤:根据源IP地址对IP流量进行过滤,只有当源IP地址与源绑定条目匹配时IP流量才允许通过。

①接口下“ip verify source”命令,表示只开启“源IP地址过滤”模式;

②当交换机只使用“源IP地址过滤”时,IP源防护功能与端口安全功能是相互独立的关系。

2.源IP和源MAC地址过滤:根据源IP地址和源MAC地址对IP流量进行过滤,只有当源IP地址和源MAC地址都与IP源绑

定条目匹配时IP流量才允许通过。

①接口下“ip verify source port-security”命令,表示开启“源IP地址和源MAC过滤”模式;

②当交换机使用“源IP地址和源MAC地址过滤”时,IP源防护功能与端口安全功能是“集成”关系,即需要同

时开启端口安全功能才能完成源IP地址和源MAC地址过滤;

③当以源IP和源MAC地址作为过滤时,为了确保DHCP协议能够正常的工作,还必须启用DHCP监听选项82功能。

对于没有选项82的数据,交换机不能确定用于转发DHCP服务器响应的客户端主机端口,DHCP服务器响应将被丢弃,客户端也不能获得IP地址。

实验调试

SW1#show ip verify source

SW1#show ip source binding //查看IP源绑定表

转载于:https://blog.51cto.com/baigp/1302051

DHCP_SNOOPING_ DAI_IPSG实验相关推荐

  1. 合肥工业大学—SQL Server数据库实验四:数据库的分离和附加

    数据库的分离和附加 1. 数据库分离 2. 数据库附加 1. 数据库分离 当SQL Server服务器运行时,该服务器上所有的数据库自动处于运行状态,而运行中的数据库文件是无法进行数据库文件的拷贝的. ...

  2. 解读模拟摇杆原理及实验

    解读模拟摇杆原理及实验 Interpreting Analog Sticks 当游戏支持控制器时,玩家可能会一直使用模拟摇杆.在整个体验过程中,钉住输入处理可能会对质量产生重大影响.让来看一些核心概念 ...

  3. legend位置 pyecharts_实验|pyecharts数据可视化分析-1

    1. 实验介绍 本实验主要介绍pyecharts基本特点与属性. 1.1. 实验目的 了解pyecharts功能.特点.与安装方式. 1.2. 知识点 pyecharts特点 pyecharts图表 ...

  4. 2019春第二次课程设计实验报告

    2019春第二次课程设计实验报告 一.实验项目名称: 贪吃蛇游戏编写: 二.实验项目功能描述: 这个实验主要是实现游戏的正常运行,实现的目标是对小蛇移动的控制, 同时对小蛇数据的保存,如何实现转弯的效 ...

  5. 汇编语言程序设计 实验九

    实验内容 实验一: 补全程序t1.asm,完成在屏幕上输出内存单元中的十进制两位数 ; 在屏幕上输出内存单元中的十进制两位数 assume cs:code, ds:data data segmentd ...

  6. 20172324 2018-2019-1《程序设计与数据结构》实验2报告

    20172324 2018-2019-1<程序设计与数据结构>实验2报告 课程:<程序设计与数据结构> 班级: 1723 姓名: 曾程 学号:20172324 实验教师:王志强 ...

  7. JAVA第二次验证设计性实验报告

    [实验任务一]:素数输出 (3)实验报告中要求包括程序设计思想.程序流程图.源代码.运行结果截图.编译错误分析等内容. 1.   实验内容 (1)计算并输出3~100之间的素数. (2)编程满足下列要 ...

  8. 20172329 2017-2018-2 《程序设计与数据结构》实验五报告

    这是这学期最后一次实验了,也是学到了很多东西,希望自己可以可以善始善终,加油! 让我们开始这一篇博客吧! 20172329 2017-2018-2 <程序设计与数据结构>实验五报告 课程: ...

  9. 计算机网络实验报告建立校园网,计算机网络实验报告

    设计性实验报告 一.实验目的 通过对网络设备的连通和对拓扑的分析,加深对常见典型局域网拓扑的理解:通过路由建立起网络之间的连接,熟悉交换机.路由器的基本操作命令,了解网络路由的设计与配置. 二.背景描 ...

最新文章

  1. oauth最后的确认按钮_spring-oauth集成cas单点登录,登陆完成进入授权页面后,按回退按钮进入404页面的问题...
  2. oracle按时间导出,如何为Oracle导出文件加上时间戳
  3. linux ftp做yum源,在RedHat5下架设yum源服务器(FTP)
  4. linux系统下用GCC、JAVA和Python编程
  5. EF Core 2.0使用MsSql/Mysql实现DB First和Code First
  6. php注册页面模板,选项卡式WordPress登陆注册模板
  7. System Verilog Assertion for debug
  8. CKEditor 4 编辑器已与 Vue.js 集成
  9. P1181 数列分段Section I
  10. MicropPython的学习,如何从0到1?
  11. python函数代码,这个python函数代码如何工作?
  12. mysql 约束 和索引_Mysql中索引和约束的示例语句
  13. mysql根据外键多条件查询_MySQL练习-主外键多表查询
  14. NYOJ--106--背包问题
  15. MySQL/InnoDB中,对于锁的认识
  16. hdu 1423(LCS+LIS)
  17. springboot和springframework以及jdk版本的对应关系
  18. MySQL的连接字符串 concat、concat_ws、group_concat、repeat()函数用法
  19. 过年了JAVA类编写烟花爆竹——学习分享下笔者的经验
  20. cf 1677A - Tokitsukaze and Strange Inequality

热门文章

  1. 在安装sql server时出现“以前的某个程序安装已在安装计算机上创建挂起的文件操作。运行安装程序之前必须重新启动计算机”错误。...
  2. expect监控 雏形 scp用法
  3. 微信小程序最新开发资源汇总,对学习微信小程序的新手有一定帮助
  4. 数据 格式化 format
  5. linux(八)__yum工具
  6. 关于JSON的简介及取值以及常见面试题
  7. DataSet用法详细
  8. cocos2dx中的背景图层CCLayerColor和渐变图层CCLayerGradient
  9. 颜色表及html代码
  10. vue - 父子组件通信之$emit传多个参数