示例:配置 IPv6 源保护和邻居发现检查以保护交换机免受 IPv6 地址欺骗
此示例使用的 Junos OS 支持增强型第 2 层软件 (ELS) 配置样式。如果您的交换机运行的软件不支持 ELS,请参阅 示例:防范 ARP 欺骗攻击。有关 ELS 的详细信息,请参阅 使用增强型第 2 层软件 CLI。
此示例介绍如何在指定 VLAN 上启用 IPv6 源保护和邻居发现检查,以保护交换机免受 IPv6 地址欺骗攻击。启用 IPv6 源保护或邻居发现检查时,将自动在同一 VLAN 上启用 DHCPv6 侦听。
要求
此示例使用以下硬件和软件组件:
此示例同样适用于 QFX5100、QFX5110 和 QFX5200 交换机。
一台支持增强型第 2 层软件配置样式的 EX 系列交换机。
适用于 EX 系列交换机的 Junos OS 13.2X51-D20 或更高版本
DHCPv6 服务器,用于为交换机上的网络设备提供 IPv6 地址
在配置 IPv6 源保护和邻居发现检查以防止 IPv6 地址欺骗攻击之前,请确保您已:
已将DHCPv6服务器连接到交换机。
已配置要向其添加 DHCPv6 安全功能的 VLAN。请参阅描述为交换机设置基本桥接和 VLAN 的文档。
概述和拓扑
以太网 LAN 交换机容易受到涉及欺骗(伪造)源 MAC 地址或源 IPv6 地址的安全攻击。这些欺骗性数据包是从连接到交换机上不受信任接入接口的主机发送的。有关 IPv6 地址欺骗攻击的详细信息,请参阅 IPv6 邻居发现检查。
通过使用 DHCPv6 侦听表(也称为绑定表),IPv6 源保护和邻居发现检查可降低 IPv6 欺骗攻击的风险。DHCPv6 侦听表包含与该 VLAN 关联的每台主机的 IP 地址、MAC 地址、VLAN 和接口 ID。当数据包从连接到交换机上不受信任接入接口的主机发送时,IPv6 源保护会根据 DHCPv6 侦听表中的条目进行检查。如果表中没有匹配项,交换机不会转发数据包,也就是说,数据包将被丢弃。邻居发现检查会根据 DHCPv6 侦听表验证同一网络链路上的 IPv6 节点之间发送的邻居发现消息,如果未找到匹配项,还会丢弃数据包。
此示例说明如何在连接到 DHCPv6 服务器的交换机上配置这些重要的端口安全功能。此示例的设置包括交换机上的 VLAN 销售情况。 图 1 说明了此示例的拓扑结构。
默认情况下,连接到 DHCPv6 服务器接口的中继接口是受信任端口。
拓扑学
此示例的拓扑组件如 表 1 所示。
属性 | 设置 |
---|---|
交换机硬件 |
一台支持增强型第 2 层软件配置样式的 EX 系列交换机。 |
VLAN 名称和 ID |
销售, 标签 |
VLAN 子网 |
192.0.2.16/28 192.0.2.17 到 192.0.2.30 192.0.2.31 是子网的广播地址 |
中的接口 |
|
连接到 DHCPv6 服务器的接口 |
|
在此示例中,交换机已配置如下:
所有接入端口都是不受信任的,这是默认设置。
中继端口 (ge-0/0/8) 受信任,这是默认设置。
VLAN(销售)已配置为包括指定的接口。
配置
程序
CLI 快速配置
要快速配置 IPv6 源保护和邻居发现检测(从而自动配置 DHCPv6 侦听),请复制以下命令并将其粘贴到交换机终端窗口中:
[edit] set vlans sales forwarding-options dhcp-security ipv6-source-guard set vlans sales forwarding-options dhcp-security neighbor-discovery-inspection
分步过程
在 VLAN 上配置 IPv6 源保护和邻居发现检测(从而自动配置 DHCPv6 侦听):
在 VLAN 上配置 IPv6 源保护:
[edit vlans sales forwarding-options dhcp-security] user@switch# set ipv6-source-guard
在 VLAN 上启用邻接方发现检测:
[edit vlans sales forwarding-options dhcp-security] user@switch# set neighbor-discovery-inspection
结果
检查配置结果:
user@switch> show vlans sales forwarding-options dhcp-security { neighbor-discovery-inspection; ipv6-source-guard; } }
验证
确认配置工作正常。
验证 DHCPv6 侦听在交换机上是否正常工作
目的
验证 DHCPv6 侦听是否在交换机上工作。
行动
从连接到交换机的网络设备(在本例中为 DHCPv6 客户端)发送 DHCPv6 请求。
当 DHCPv6 服务器连接到交换机的端口受信任时,显示 DHCPv6 侦听信息。当从 MAC 地址发送请求并且服务器已提供 IPv6 地址和租约时,将产生以下输出:
user@switch> show dhcp-security ipv6 binding IPv6 address MAC address Vlan Expires State Interface 2001:db8:fe10:: 00:10:94:00:55:0b vlan20 3456 BOUND ge-0/0/1.0 fe80::210:94ff:fe00:1 00:10:94:00:55:0b vlan20 3456 BOUND ge-0/0/1.0 2001:db8:fe12:: 00:10:94:00:00:34 vlan20 3456 BOUND ge-0/0/2.0 fe80::210:94ff:fe00:2 00:10:94:00:00:34 vlan20 3456 BOUND ge-0/0/2.0 2001:db8:fe14:: 00:10:94:00:00:55 vlan20 3456 BOUND ge-0/0/3.0 fe80::210:94ff:fe00:3 00:10:94:00:00:55 vlan20 3456 BOUND ge-0/0/3.0
意义
输出显示分配的 IPv6 地址、MAC 地址、VLAN 名称以及租约到期前剩余时间(以秒为单位)。由于 IPv6 主机通常会为其启用 IPv6 的每个网络接口分配多个 IPv6 地址,因此将为每个客户端添加两个条目:一个条目具有链路本地 IPv6 地址(客户端用于 DHCP 事务),另一个条目具有服务器分配的 IPv6 地址。链路本地地址始终具有前缀 fe80::/10
。
验证邻居发现检查在交换机上是否正常工作
目的
验证交换机上的邻居发现检查是否正常工作。
行动
从连接到交换机的网络设备发送邻居发现数据包。
显示邻居发现信息:
user@switch> show dhcp-security neighbor-discovery-inspection statistics ND inspection statistics: Interface ND Packets received ND inspection pass ND inspection failed ge-0/0/1.0 7 5 2 ge-0/0/2.0 10 10 0 ge-0/0/3.0 12 12 0
意义
示例输出显示每个接口接收和检查的邻居发现数据包数,以及每个接口上通过的数据包数和未通过检测的数据包数的列表。交换机会将邻居发现请求和回复与 DHCPv6 侦听数据库中的条目进行比较。如果邻居发现数据包中的 MAC 地址或 IPv6 地址与数据库中的有效条目不匹配,则会丢弃该数据包。