HCNP Routing&Switching之IP安全
前文我们了解了DHCP安全相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16637627.html;今天我们来聊一聊IP安全相关话题;
技术背景
随着网络规模越来越大,通过伪造源IP地址实施的网络攻击(IP地址欺骗攻击)也逐渐增多;所谓源IP地址欺骗攻击是指攻击者伪造合法用户的ip地址获取网络访问权限,非法访问网络;甚至造成合法用户无法正常访问网络,或者信息泄露;
提示:如上图所示,非法主机修改自己的ip地址为合法主机的ip地址和网关通信;如果我们没有在相关接口或vlan里开启源ip地址检查,那么对应非法用户就可以正常上网;简单讲就是非法主机利用合法主机的ip地址信息,冒充合法主机进行上网;
IPSG概述
IPSG是IP Source Guard的缩写,翻译成中文就是IP源保护,或者IP源防攻击;它是基于二层接口的源ip地址过滤技术;主要作用是防止恶意主机伪造合法主机的IP地址来仿冒合法主机;确保非授权主机不能通过自己指定的IP地址的方式来访问网络或攻击网络;
IPSG工作原理
IPSG的工作原理很简单,就是利用绑定表(该表主要字段有源IP地址、源MAC地址、所属VLAN、接口)去匹配检查二层接口上收到的IP报文,只有匹配绑定表的报文才允许通过,否则对应报文会被丢弃;
提示:绑定表生成后,IPSG基于绑定表系那个指定的接口或VLAN下发ACL,由ACL来匹配检查所有IP报文;
提示:此时如果非法主机再次冒充使用合法主机ip地址,对应报文被交换机收到以后,检查对应的绑定表信息,发现对应报文ip地址等信息和绑定表中的信息不匹配,就直接丢弃了,所以此时非法主机的报文就不能被转发,从而阻止了非法主机的冒充和攻击;
绑定表分类
提示:绑定表分静态和动态两种类型;静态绑定表就是管理员手动添加的而形成的条目,主要适用于主机较少的,对应主机使用静态IP地址的场景中;动态绑定表有3种情况,第一种是利用DHCP snooping生成的绑定表,这种动态绑定表主要用于主机较多,对应主机是从DHCP服务器获取的ip地址的场景;第二种动态绑定表示是利用802.1x用户认证过程中,设备根据认证用户信息生成的绑定表;这种方式主要应用主机较多,主机使用了静态ip地址,并在网络中部署了1x认证;第三种动态绑定表是IPV6的ND Snooping,(IPV6它没有广播,它可以使用NS来自动获取ip地址,当然也可以使用ipv6的dhcp来获取地址)该表是通过侦听用户用于重复地址检测到NS报文建立;主要应用场景是针对IPV6主机,且主机较多的场景;
IPSG接口角色
提示:IPSG的接口角色、作用和DHCP Snooping接口角色、作用一样,分信任接口和非信任接口;配置信任接口,对应接口收到的ip报文就不会再检查;和DHCP Snooping一样只对非信任接口进行检查,仅支持在二层物理即可或者VLAN上应用;
IPSG应用场景
1、在接入用户侧的接口上使用IPSG
提示:在某个接口上使用IPSG,作用范围只是单个接口;
2、在接入用户侧的VLAN上使用IPSG
提示:在对应vlan上配置IPSG,作用范围是对应VLAN下所有接口;
3、在某个网段的上联接口上使用IPSG
提示:在上联的接口上使用IPSG,作用访问是通过对上联口的所有IP流量;通常这种场景使用信任接口来避免检查;一般IPSG或DHCP Snooping越靠近用户接入层配置,就越精准;效果就越理想;
IPSG配置
如上拓扑配置IPSG
dhcp-server的配置
sys
sys dhcp-server
dhcp en
int vlan 1
ip add 192.168.100.254 24
dhcp sel int
在sw1上配置dhcp snooping 生成绑定表
sys
sys sw1
dhcp en
dhcp sn en
vlan 1
dhcp sn en
int g0/0/3
dhcp sn tr
pc1和pc2拿ip地址,看看对应sw1是否正常生成绑定表?
提示:可以看到pc1和pc2设置为dhcp以后,对应交换机上的用户绑定表就生成了;
验证:将pc1关机,看看对应交换机上的绑定表条目是否会随之被删除?
提示:可以看到pc1关机,对应绑定表中的条目并没有被删除,这是因为主机关机没有发送release消息,所以对应条目也不会被交换机删除;
将pc2的ip地址修改成静态192.168.100.200,看看对应用户绑定表中对应条目是否会被删除?
提示:可以看到pc2将ip地址修改为静态192.168.100.200以后,对应交换机上的用户绑定表中的条目就被删除了;我们通过抓包可以看到,pc2修改为静态ip地址以后,对应发送了一条dhcp release的包,对应交换机收到release的包,就会将对应地址给释放掉,当然释放ip地址,随之用户绑定表中的条目也会被随之删除;
现在pc2pingdhcp-server看看是否会通?
提示:这里能通是模拟器bug,正常情况下,我们在交换机上开启了dhcp snooping以后,对应交换机用户绑定表中没有对应pc条目信息,对应pc发包会被交换机丢弃的;像这种接入交换机开启了dhcp snooping,对应终端不支持dhcp的情况下,我们要想让终端能够正常和服务器通信,我们就必须在交换机上添加对应的绑定条目;
静态添加pc2的信息到绑定表
提示:我们手动添加用户绑定条目,可以只关联ip地址,或者mac地址;也可以同时关联ip地址和mac地址以及接口和vlan;这种静态添加绑定表条目,一般用于终端不希望动态获取ip地址信息的场景;比如打印机,服务器等需要固定ip地址;
在接口g0/0/2下配置 IPSG
提示:如果在接口模式下开启ipsg,需要将对应接口的DHCP snooping开启;如果在vlan模式下开启ipsg,我们就需要进入对应vlan下,开启dhcp snooping ;这样配置以后,对应主机ip地址信息如果被其他非法用户冒充,交换机通过检查用户绑定表,对应接口下的用户信息,就可以将非法用户的报文直接丢弃;从而实现保护合法主机的目的;
开启IPSG告警以及告警阀值的配置
提示:默认阀值为100,表示被丢弃的报文个数超过100,就发送告警信息(前提是开启了告警,默认关闭);上述命令表示开启ipsg告警,同时如果丢弃报文超过10个就告警(针对该接口);如果在vlan模式下配置告警阀值,对应生效是整个vlan,如果在vlan和接口模式下都配置了告警阀值,对应生效优先级是接口模式优先vlan;
HCNP Routing&Switching之IP安全的更多相关文章
- HCNP Routing&Switching之IS-IS报文结构和类型
前文我们了解了IS-IS动态路由协议基础相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15249328.html:今天我们来聊一聊IS-IS动态路由协 ...
- HCNP Routing&Switching之组播技术-组播协议IGMP
前文我们了解了组播地址相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15616740.html:今天我们来聊一聊组播协议中IGMP协议相关话题: 组播 ...
- HCNP Routing&Switching之OSPF网络类型
前文我们了解了PPPoE协议相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15182512.html:今天我们聊聊一聊OSPF中的网络类型相关话题: ...
- HCNP Routing&Switching之OSPF虚连接
前文我们了解了OSPF的网络类型.帧中继交换机映射以及路由器帧中继映射相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15195762.html:今天我 ...
- HCNP Routing&Switching之OSPF LSA类型
前文我们了解了OSPF中的虚连接相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15202348.html:今天我们来聊一聊OSPF数据包中LSA类型相 ...
- HCNP Routing&Switching之OSPF LSA类型(二)
前文我们了解了OSPF的一类.二类.三类LSA,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15209829.html:今天我们来聊一聊OSPF的四类和五类L ...
- HCNP Routing&Switching之OSPF外部路由类型以及forwarding address
前文我们了解了OSPF的4类.5类LSA,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15222969.html:今天我们来聊一聊外部路由类型和forward ...
- HCNP Routing&Switching之OSPF LSA更新规则和路由汇总
前文我们了解了OSPF外部路由类型以及forwarding address字段的作用,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15225673.html: ...
- HCNP Routing&Switching之OSPF特殊区域
前文我们了解了OSPF LSA更新规则以及路由汇总相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15231880.html:今天我们来聊一聊OSPF的 ...
随机推荐
- 关于Vue 移动端适配 (px2rem 插件将px转为rem)
一.安装 npm install px2rem-loader lib-flexible --save 二.入口文件main.js加上 import 'lib-flexible/flexible.js' ...
- 二:动手实操SpringBoot-使用Spring Initializr创建项目
使用 Spring Initializr 初始化 Spring Boot 项目 Spring Initializr 从本质上说就是一个Web应用程序,它能为你构建Spring Boot项目结构. 虽然 ...
- Linux文件的特殊属性
文件的特殊属性 作用:文件的权限不能显示root用户,为了防止root用户的误操作,所以需要特殊属性来防止root用户的误操作. chattr工具: 可以给文件添加特殊的属性 +i:对这个文件不能修改 ...
- rhel修改系统语言
修改系统语言的三种方式 1.yum install system-config-language //挂载本地源,然后安装 system-config-language 2. ...
- MySql字段增删改语句
新增表字段:alter table 表名 需要添加的字段信息; ALTER TABLE nation add seq VARCHAR(20) COMMENT '顺序' 字段名的修改:alter tab ...
- 在mybatis中使用sum函数返回对象为Null
首先大家看一下我的XML中的SQL .DAO 和实体对象 XML DAO PO 乍一看 没毛病. 但是在Mybatis中使用sum函数,如果返回值是0(就是你在Navicat中运行的的sql正常,结 ...
- Docker部署jar包运行
1.上传jar包到服务器 2.在该目录下创建Dockerfile 文件 vi Dockerfile 3.然后将下面的内容复制到Dockerfile文件中 FROM java:8 MAINTAINER ...
- pytest多进程/多线程执行测试用例
前言: 实际项目中的用例数量会非常多,几百上千:如果采用单进程串行执行的话会非常耗费时间.假设每条用例耗时2s,1000条就需要2000s $\approx$ 33min:还要加上用例加载.测试前/后 ...
- .NET(C#)发送邮件的实现方法
.NET(C#)发送邮件的实现方法 微软已经为我们准备好了现成的工具类供我们调用: MailMessage //邮件信息类 SmtpClient //邮件发送类 首先需要在项目的类文件中引用以下命名空 ...
- JAVA解压.Z及.ZIP文件
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-compress --> <dependency ...