前文我们了解了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安全的更多相关文章

  1. HCNP Routing&Switching之IS-IS报文结构和类型

    前文我们了解了IS-IS动态路由协议基础相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15249328.html:今天我们来聊一聊IS-IS动态路由协 ...

  2. HCNP Routing&Switching之组播技术-组播协议IGMP

    前文我们了解了组播地址相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15616740.html:今天我们来聊一聊组播协议中IGMP协议相关话题: 组播 ...

  3. HCNP Routing&Switching之OSPF网络类型

    前文我们了解了PPPoE协议相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15182512.html:今天我们聊聊一聊OSPF中的网络类型相关话题: ...

  4. HCNP Routing&Switching之OSPF虚连接

    前文我们了解了OSPF的网络类型.帧中继交换机映射以及路由器帧中继映射相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15195762.html:今天我 ...

  5. HCNP Routing&Switching之OSPF LSA类型

    前文我们了解了OSPF中的虚连接相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15202348.html:今天我们来聊一聊OSPF数据包中LSA类型相 ...

  6. HCNP Routing&Switching之OSPF LSA类型(二)

    前文我们了解了OSPF的一类.二类.三类LSA,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15209829.html:今天我们来聊一聊OSPF的四类和五类L ...

  7. HCNP Routing&Switching之OSPF外部路由类型以及forwarding address

    前文我们了解了OSPF的4类.5类LSA,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15222969.html:今天我们来聊一聊外部路由类型和forward ...

  8. HCNP Routing&Switching之OSPF LSA更新规则和路由汇总

    前文我们了解了OSPF外部路由类型以及forwarding address字段的作用,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15225673.html: ...

  9. HCNP Routing&Switching之OSPF特殊区域

    前文我们了解了OSPF LSA更新规则以及路由汇总相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15231880.html:今天我们来聊一聊OSPF的 ...

随机推荐

  1. 对vue响应式的理解

    1.所谓数据响应式就是能够使数据变化可以被检测并对这种变化做出响应的机制. 2.MVVM框架要解决的一个核心问题是连接数据层和视图层,通过数据驱动应用,数据变化,视图更新,要做到这点的就需要对数据做响 ...

  2. 封装环形加载进度条(Vue插件版和原生js版)

    1.效果预览 2.用到的知识 主要利用SVG的stroke-dasharray和stroke-dashoffset这两个属性. 在看下面文章之前,你需要了解 <!DOCTYPE html> ...

  3. 从位图到布隆过滤器,C#实现

    前言 本文将以 C# 语言来实现一个简单的布隆过滤器,为简化说明,设计得很简单,仅供学习使用. 感谢@时总百忙之中的指导. 布隆过滤器简介 布隆过滤器(Bloom filter)是一种特殊的 Hash ...

  4. 文本处理工具-vim编辑器的常见用法

    文本编辑工具分类: (1)全屏编辑器: nano(字符编辑器).vi.vim (2)行编辑器: sed:可以逐行改文件 vi编辑器 全名:Visual editor,linux系统自带的文本编辑工具 ...

  5. 利用kubernetes资源锁完成自己的HA应用

    Backgroud 前一章中,对kubernetes的选举原理进行了深度剖析,下面就通过一个example来实现一个,利用kubernetes提供的选举机制完成的高可用应用. 对于此章需要提前对一些概 ...

  6. NC50038 kotori和糖果

    NC50038 kotori和糖果 题目 题目描述 kotori共有 \(n\) 块糖果,每块糖果的初始状态是分散的,她想把这些糖果聚在一堆.但她每次只能把两堆糖果合并成一堆. 已知把两堆数量为 \( ...

  7. Codeforces Round #791 (Div. 2) A-C

    Codeforces Round #791 (Div. 2) A-C A 题目 https://codeforces.com/contest/1679/problem/A 题解 思路 知识点:数学,暴 ...

  8. CentOS7下bash升级

    [1.查看系统版本][root@web ~]# uname -aLinux web 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 ...

  9. 栈(Stack)和队列

    栈(Stack)和队列 栈是一个后进先出的线性表,它要求只在表尾进行删除和插入操作. 所谓的栈,其实就是一个特殊的线性表.表尾称为栈顶(Top),相应的表头称为栈底(Bottom). 栈的插入(Pus ...

  10. java-Stream的总结

    JAVA中的Stream 01.什么是Stream Stream是JDK8中引入,Stream是一个来自数据源的元素序列并支持聚合操作.可以让你以一种声明的方式处理数据,Stream 使用一种类似用 ...