12-IP Source Guard配置
本章节下载: 12-IP Source Guard配置 (273.61 KB)
1.6.2 与DHCP Snooping配合的IPv4动态绑定功能配置举例
1.6.3 与DHCP中继配合的IPv4动态绑定功能配置举例
1.6.5 与DHCPv6 Snooping配合的IPv6动态绑定表项配置举例
IP Source Guard功能用于对接口收到的报文进行过滤控制,通常配置在接入用户侧的接口上,以防止非法用户报文通过,从而限制了对网络资源的非法使用(比如非法主机仿冒合法用户IP接入网络),提高了接口的安全性。
如图1-1所示,配置了IP Source Guard功能的接口接收到用户报文后,首先查找与该接口绑定的表项(简称为绑定表项),如果报文的信息与某绑定表项匹配,则转发该报文;若匹配失败,则查看是否配置了全局静态绑定表项,如果配置了此类表项,且报文的信息与表项匹配,则转发该报文;否则丢弃该报文。IP Source Guard可以根据报文的源IP地址、源MAC地址对报文进行过滤。报文的这些特征项可单独或组合起来与接口进行绑定,形成如下几类绑定表项:
· IP绑定表项
· MAC绑定表项
· IP+MAC绑定表项
· IP+VLAN绑定表项
· MAC+VLAN绑定表项
· IP+MAC+VLAN绑定表项
全局IP Source Guard绑定功能仅支持IP+MAC的静态绑定表项。全局静态绑定表项的介绍,请参见1.1.2 静态配置绑定表项。
IP Source Guard绑定表项可以通过手工配置和动态获取两种方式生成。
图1-1 IP Source Guard功能示意图
IP Source Guard的绑定功能是针对接口的,一个接口配置了绑定功能后,仅对该接口接收的报文进行限制,其它接口不受影响。
静态配置绑定表项是指通过命令行手工配置绑定表项,该方式适用于局域网络中主机数较少且主机使用静态配置IP地址的情况,比如在接入某重要服务器的接口上配置绑定表项,仅允许该接口接收与该服务器通信的报文。
IPv4静态绑定表项用于过滤接口收到的IPv4报文,或者与ARP Detection功能配合使用检查接入用户的合法性;IPv6静态绑定表项用于过滤接口收到的IPv6报文。
ARP Detection功能的详细介绍请参见“安全配置指导”中的“ARP攻击防御”。
静态绑定表项又包括全局静态绑定表项和接口静态绑定表项两种类型,这两种绑定表项的作用范围不同。
全局静态绑定表项是在系统视图下配置的绑定了IP地址和MAC地址的表项,这类表项在设备的所有接口上生效,允许接口正常转发IP地址和MAC地址均与全局静态绑定表项匹配的报文。全局静态绑定表项适用于防御主机仿冒攻击,可有效过滤攻击者通过仿冒合法用户主机的IP地址或者MAC地址向设备发送的伪造IP报文。
接口静态绑定是在接口上配置的绑定了IP地址、MAC地址以及相关组合的表项,这类表项仅在当前接口上生效。只有接口收到的报文的IP地址、MAC地址与接口上配置的绑定表项的各参数完全匹配时,报文才可以在该接口被正常转发,其它报文都不能被转发,该表项适用于检查接口上接入用户的合法性。
动态获取绑定表项是指通过获取其它模块生成的用户信息来生成绑定表项。目前,可为IP Source Guard提供表项信息的模块包括DHCP Snooping、DHCPv6 Snooping、DHCP中继和DHCP服务器模块。
这种动态获取绑定表项的方式,通常适用于局域网络中主机较多,且主机使用DHCP动态获取IP地址的情况。其原理是每当局域网内的主机通过DHCP服务器获取到IP地址时,作为DHCP Snooping或DHCP中继的设备上就会生成一条DHCP Snooping表项或DHCP中继表项,并相应地增加一条IP Source Guard绑定表项以允许该用户访问网络。如果某个用户私自设置IP地址,则不会触发设备生成相应的DHCP表项,IP Source Guard也不会增加相应的绑定表项,因此该用户的报文将会被丢弃。
在配置了IPv4动态绑定功能的接口上,IP Source Guard通过与不同的模块配合动态生成绑定表项:
· 在二层以太网端口上,IP Source Guard可与DHCP Snooping配合,通过主机动态获取IP地址时产生的DHCP Snooping表项来生成动态绑定表项,并用于过滤报文。
· 在VLAN接口上,IP Source Guard可与DHCP中继配合,通过主机跨网段获取IP地址时产生的DHCP中继表项来生成动态绑定表项,并用于过滤报文。
· 在VLAN接口上,IP Source Guard可与DHCP服务器配合,通过DHCP 服务器为主机动态分配IP地址时记录的用户信息来生成动态绑定表项,用于配合其它模块(例如ARP Detection)提供相关的安全服务,而不直接用于过滤报文。
DHCP Snooping功能的详细介绍请参见“三层技术-IP业务配置指导”中的“DHCP Snooping”。DHCP中继功能的详细介绍请参见“三层技术-IP业务配置指导”中的“DHCP中继”。DHCP服务器功能的详细介绍请参见“三层技术-IP业务配置指导”中的“DHCP服务器”。
在配置了IPv6动态绑定功能的接口上,IP Source Guard通过与DHCPv6 Snooping模块配合,通过主机动态获取IPv6地址时产生的DHCPv6 Snooping表项来生成动态绑定表项,并用于过滤报文。
DHCPv6 Snooping功能的详细介绍请参见“三层技术-IP业务配置指导”的“DHCPv6 Snooping”。
表1-1 IPv4绑定功能配置任务简介
配置IPv4接口绑定功能 |
||
配置IPv4静态绑定表项 |
表1-2 IPv6绑定功能配置任务简介
配置IPv6接口绑定功能 |
||
配置IPv6静态绑定表项 |
配置了IPv4接口绑定功能的接口,将打开根据绑定表项过滤报文的开关,并利用配置的IPv4静态绑定表项和从其它模块获取的IPv4动态绑定表项对接口转发的报文进行过滤或者配合其它模块提供相关的安全服务。
(1) IPv4静态绑定表项中指定的信息均用于IP Source Guard过滤接口收到的报文,具体配置请参考“1.3.2 配置IPv4静态绑定表项”。
(2) IPv4动态绑定表项中可能包含的内容有:MAC地址、IP地址、VLAN信息、入接口信息及表项类型(DHCP Snooping、DHCP中继等)。IP Source Guard依据该表项中的哪些信息过滤接口收到的报文,由IPv4接口绑定配置决定:
· 若接口上配置动态绑定功能时绑定了源IP地址和MAC地址,则只有接口上收到的报文的源IPv4地址和源MAC地址都与某动态绑定表项匹配,该报文才能被正常转发,否则将被丢弃;
· 若接口上配置动态绑定功能时仅绑定了源IP地址,则只有该接口收到的报文的源IPv4地址与某动态绑定表项匹配,该报文才会被正常转发,否则将被丢弃;
· 若接口上配置动态绑定功能时仅绑定了源MAC地址,则只有该接口收到的报文的源MAC地址与某动态绑定表项匹配,该报文才会被正常转发,否则将被丢弃。
要实现IPv4动态绑定功能,请保证网络中的DHCP Snooping或者DHCP中继配置有效且工作正常。
表1-3 配置IPv4接口绑定功能
配置IPv4接口绑定功能 |
ip verify source { ip-address | ip-address mac-address | mac-address } |
缺省情况下,接口的IPv4接口绑定功能处于关闭状态 IPv4接口绑定功能可多次配置,最后一次的配置生效 |
IPv4静态绑定表项包括全局的IPv4静态绑定表项和接口的IPv4静态绑定表项。
接口的IPv4静态绑定表项和动态绑定表项的优先级高于全局的IPv4静态绑定表项,即接口优先使用本接口上的静态或动态绑定表项对收到的报文进行匹配,若匹配失败,再与全局的静态绑定表项进行匹配。
全局的IPv4静态绑定表项中定义了接口允许转发的报文的IP地址和MAC地址,对设备的所有接口都生效。
表1-4 配置全局的IPv4静态绑定表项
配置全局的IPv4静态绑定表项 |
ip source binding ip-address ip-address mac-address mac-address |
缺省情况下,设备上无全局的IPv4静态绑定表项 |
表1-5 配置接口的IPv4静态绑定表项
配置接口的IPv4静态绑定表项 |
缺省情况下,接口上无IPv4静态绑定表项 vlan vlan-id参数仅在二层以太网接口视图下支持 在与ARP Detection功能配合时,绑定表项中必须指定VLAN参数,且该VLAN为使能ARP Detection功能的VLAN,否则ARP报文将无法通过接口的IPv4静态绑定表项的检查。 |
配置了IPv6接口绑定功能的接口,将打开根据绑定表项过滤报文的开关,并利用配置的IPv6静态绑定表项和从DHCPv6 Snooping模块获取的IPv6动态绑定表项对接口转发的报文进行过滤。
(1) IPv6静态绑定表项中指定的信息均用于IP Source Guard过滤接口收到的报文,具体配置请参考“1.4.2 配置IPv6静态绑定表项”。
(2) IPv6动态绑定表项中可能包含的信息有:MAC地址、IP地址、VLAN信息、入接口信息及表项类型(DHCPv6 Snooping)。IP Source Guard依据该表项中的哪些信息过滤接口收到的报文,由IPv4接口绑定配置决定:
· 若接口上配置动态绑定功能时绑定了源IP地址和MAC地址,则只有接口上收到的报文的源IPv6地址和源MAC地址都与某动态绑定表项匹配,该报文才能被正常转发,否则将被丢弃;
· 若接口上配置动态绑定功能时仅绑定了源IP地址,则只有该接口收到的报文的源IPv6地址与某动态绑定表项匹配,该报文才会被正常转发,否则将被丢弃;
· 若接口上配置动态绑定功能时仅绑定了源MAC地址,则只有该接口收到的报文的源MAC地址与某动态绑定表项匹配,该报文才会被正常转发,否则将被丢弃。
要实现IPv6动态绑定功能,请保证网络中的DHCPv6 Snooping配置有效且工作正常。
表1-6 配置IPv6接口绑定功能
配置IPv6接口绑定功能 |
ipv6 verify source { ip-address | ip-address mac-address | mac-address } |
缺省情况下,接口的IPv6接口绑定功能处于关闭状态 IPv6接口绑定功能可多次配置,最后一次的配置生效。 |
IPv6静态绑定功能包括全局的IPv6静态绑定功能和接口的IPv6静态绑定功能。
接口的IPv6静态绑定表项和IPv6动态绑定表项的优先级高于全局的IPv6静态绑定表项,即接口优先使用本接口上的IPv6静态或动态绑定表项对收到的报文进行匹配,若匹配失败,再与全局的IPv6静态绑定表项进行匹配。
全局的IPv6静态绑定表项中定义了接口允许转发的报文的IPv6地址和MAC地址,对设备的所有接口都生效。
表1-7 配置全局的IPv6静态绑定表项
配置全局的IPv6静态绑定表项 |
ipv6 source binding ip-address ipv6-address mac-address mac-address |
缺省情况下,设备上无全局的IPv6静态绑定表项 |
表1-8 配置接口的IPv6静态绑定表项
配置接口的IPv6静态绑定表项 |
缺省情况下,接口上无IPv6静态绑定表项 vlan vlan-id参数仅在二层以太网接口视图下支持 |
在完成上述配置后,在任意视图下执行display命令可以显示配置后IP Source Guard的运行情况,通过查看显示信息验证配置的效果。
表1-9 IP Source Guard显示和维护(IPv4)
显示IPv4绑定表项信息 |
表1-10 IP Source Guard显示和维护(IPv6)
显示IPv6绑定表项信息 |
如图1-2所示,Host A、Host B分别与Switch B的接口Ten-GigabitEthernet1/0/2、Ten-GigabitEthernet1/0/1相连;Host C与Switch A的接口Ten-GigabitEthernet1/0/2相连。Switch B接到Switch A的接口Ten-GigabitEthernet1/0/1上。各主机均使用静态配置的IP地址。
要求通过在Switch A和Switch B上配置IPv4静态绑定表项,满足以下各项应用需求:
· Switch A的接口Ten-GigabitEthernet1/0/2上只允许Host C发送的IP报文通过。
· Switch A的接口Ten-GigabitEthernet1/0/1上只允许Host A发送的IP报文通过。
· Switch B上的所有接口都允许Host A发送的IP报文通过。
· Switch B的接口Ten-GigabitEthernet1/0/1上允许Host B发送的IP报文通过。
(1) 配置Switch A
# 配置各接口的IP地址(略)。
# 在接口Ten-GigabitEthernet1/0/2上配置IPv4接口绑定功能,绑定源IP地址和MAC地址。
[SwitchA] interface ten-gigabitethernet 1/0/2
[SwitchA-Ten-GigabitEthernet1/0/2] ip verify source ip-address mac-address
# 配置IPv4静态绑定表项,在Switch A的Ten-GigabitEthernet1/0/2上只允许MAC地址为0001-0203-0405、IP地址为192.168.0.3的数据终端Host C发送的IP报文通过。
[SwitchA-Ten-GigabitEthernet1/0/2] quit
# 在接口Ten-GigabitEthernet1/0/1上配置IPv4接口绑定功能,绑定源IP地址和MAC地址。
[SwitchA] interface ten-gigabitethernet 1/0/1
[SwitchA-Ten-GigabitEthernet1/0/1] ip verify source ip-address mac-address
# 配置在Switch A的Ten-GigabitEthernet1/0/1上只允许MAC地址为0001-0203-0406、IP地址为192.168.0.1的数据终端Host A发送的IP报文通过。
[SwitchA-Ten-GigabitEthernet1/0/1] quit
# 配置各接口的IP地址(略)。
# 在接口Ten-GigabitEthernet1/0/2上配置IPv4接口绑定功能,绑定源IP地址和MAC地址。
[SwitchB] interface ten-gigabitethernet 1/0/2
[SwitchB-Ten-GigabitEthernet1/0/2] ip verify source ip-address mac-address
[SwitchB-Ten-GigabitEthernet1/0/2] quit
# 配置IPv4静态绑定表项,在Switch B上的所有接口都允许MAC地址为0001-0203-0406、IP地址为192.168.0.1的数据终端Host A发送的IP报文通过。
[SwitchB] ip source binding ip-address 192.168.0.1 mac-address 0001-0203-0406
# 在接口Ten-GigabitEthernet1/0/1上配置IPv4接口绑定功能,绑定源IP地址和MAC地址。
[SwitchB] interface ten-gigabitethernet 1/0/1
[SwitchB-Ten-GigabitEthernet1/0/1] ip verify source ip-address mac-address
# 配置IPv4静态绑定表项,在Switch B的Ten-GigabitEthernet1/0/1上只允许MAC地址为0001-0203-0407的数据终端Host B发送的IP报文通过。
[SwitchB-Ten-GigabitEthernet1/0/1] ip source binding mac-address 0001-0203-0407
[SwitchB-Ten-GigabitEthernet1/0/1] quit
# 在Switch A上显示IPv4静态绑定表项,可以看出以上配置成功。
<SwitchA> display ip source binding static
Total entries found: 2
IP Address MAC Address Interface VLAN Type
192.168.0.1 0001-0203-0405 XGE1/0/2 N/A Static
192.168.0.3 0001-0203-0406 XGE1/0/1 N/A Static
# 在Switch B上显示IPv4静态绑定表项,可以看出以上配置成功。
<SwitchB> display ip source binding static
Total entries found: 2
IP Address MAC Address Interface VLAN Type
192.168.0.1 0001-0203-0406 N/A N/A Static
N/A 0001-0203-0407 XGE1/0/1 N/A Static
DHCP客户端通过Switch的接口Ten-GigabitEthernet1/0/1接入网络,通过DHCP服务器获取IPv4地址。
· Switch上使能DHCP Snooping功能,保证客户端从合法的服务器获取IP地址,且记录客户端IPv4地址及MAC地址的绑定关系。
· 在接口Ten-GigabitEthernet1/0/1上启用IPv4动态绑定功能,利用动态生成的DHCP Snooping表项过滤接口接收的报文,只允许通过DHCP服务器动态获取IP地址的客户端接入网络。DHCP服务器的具体配置请参见“三层技术-IP业务配置指导”中的“DHCP服务器”。
图1-3 配置与DHCP Snooping配合的IPv4动态绑定功能组网图
(1) 配置DHCP Snooping
# 配置各接口的IP地址(略)。
# 开启DHCP Snooping功能。
[Switch] dhcp snooping enable
# 设置与DHCP服务器相连的接口Ten-GigabitEthernet1/0/2为信任接口。
[Switch] interface ten-gigabitethernet 1/0/2
[Switch-Ten-GigabitEthernet1/0/2] dhcp snooping trust
[Switch-Ten-GigabitEthernet1/0/2] quit
(2) 配置IPv4接口绑定功能
# 配置接口Ten-GigabitEthernet1/0/1的IPv4接口绑定功能,绑定源IP地址和MAC地址,并启用接口的DHCP Snooping 表项记录功能。
[Switch] interface ten-gigabitethernet 1/0/1
[Switch-Ten-GigabitEthernet1/0/1] ip verify source ip-address mac-address
[Switch-Ten-GigabitEthernet1/0/1] dhcp snooping binding record
[Switch-Ten-GigabitEthernet1/0/1] quit
# 显示接口Ten-GigabitEthernet1/0/1从DHCP Snooping获取的动态表项。
[Switch] display ip source binding dhcp-snooping
Total entries found: 1
IP Address MAC Address Interface VLAN Type
192.168.0.1 0001-0203-0406 XGE1/0/1 1 DHCP snooping
从以上显示信息可以看出,接口Ten-GigabitEthernet1/0/1在配置IPv4接口绑定功能之后根据DHCP Snooping表项产生了动态绑定表项。
Switch通过接口Vlan-interface100和Vlan-interface200分别与客户端Host和DHCP服务器相连。Switch上使能DHCP中继功能。
· Host通过DHCP中继从DHCP服务器上获取IP地址。
· 在接口Vlan-interface100上启用IPv4动态绑定功能,利用Switch上生成的DHCP中继表项,过滤接口接收的报文。
(1) 配置IPv4动态绑定功能
# 配置各接口的IP地址(略)。
# 在接口Vlan-interface100上配置IPv4接口绑定功能,绑定源IP地址和MAC地址。
[Switch] interface vlan-interface 100
[Switch-Vlan-interface100] ip verify source ip-address mac-address
[Switch-Vlan-interface100] quit
# 开启DHCP服务。
# 开启DHCP中继用户地址表项记录功能。
[Switch] dhcp relay client-information record
# 配置接口Vlan-interface100工作在DHCP中继模式。
[Switch] interface vlan-interface 100
[Switch-Vlan-interface100] dhcp select relay
# 指定DHCP服务器的地址。
[Switch-Vlan-interface100] dhcp relay server-address 10.1.1.1
[Switch-Vlan-interface100] quit
# 显示生成的IPv4动态绑定表项信息。
[Switch] display ip source binding dhcp-relay
Total entries found: 1
IP Address MAC Address Interface VLAN Type
192.168.0.1 0001-0203-0406 Vlan100 100 DHCP relay
IPv6客户端通过Switch的接口Ten-GigabitEthernet1/0/1接入网络。要求在Switch上配置IPv6静态绑定表项,使得接口Ten-GigabitEthernet1/0/1上只允许Host(MAC地址为0001-0202-0202、IPv6地址为2001::1)发送的IPv6报文通过。
图1-5 配置IPv6静态绑定表项组网图
# 在接口Ten-GigabitEthernet1/0/1上配置IPv6接口绑定功能,绑定源IP地址和MAC地址。
[Switch] interface ten-gigabitethernet 1/0/1
[Switch-Ten-GigabitEthernet1/0/1] ipv6 verify source ip-address mac-address
# 在接口Ten-GigabitEthernet1/0/1上配置IPv6静态绑定表项,绑定源IP地址和MAC地址,只允许IPv6地址为2001::1且MAC地址为00-01-02-02-02-02的IPv6报文通过。
[Switch-Ten-GigabitEthernet1/0/1] ipv6 source binding ip-address 2001::1 mac-address 0001-0202-0202
[Switch-Ten-GigabitEthernet1/0/1] quit
# 在Switch上显示IPv6静态绑定表项,可以看出以上配置成功。
[Switch] display ipv6 source binding static
Total entries found: 1
IPv6 Address MAC Address Interface VLAN Type
2001::1 0001-0202-0202 XGE1/0/1 N/A Static
DHCPv6客户端通过Switch的接口Ten-GigabitEthernet1/0/1接入网络,通过DHCPv6服务器获取IPv6地址。
· Switch上使能DHCPv6 Snooping功能,保证客户端从合法的服务器获取IP地址,且记录客户端IPv6地址及MAC地址的绑定关系。
· 在接口Ten-GigabitEthernet1/0/1上启用IPv6动态绑定功能,利用动态生成的DHCPv6 Snooping表项过滤接口接收的报文,只允许通过DHCPv6服务器动态获取IP地址的客户端接入网络。
图1-6 配置与DHCPv6 Snooping配合的IPv6动态绑定功能组网图
(1) 配置DHCPv6 Snooping
# 全局使能DHCPv6 Snooping功能。
[Switch] ipv6 dhcp snooping enable
# 配置接口Ten-GigabitEthernet1/0/2为信任接口。
[Switch] interface ten-gigabitethernet 1/0/2
[Switch-Ten-GigabitEthernet1/0/2] ipv6 dhcp snooping trust
[Switch-Ten-GigabitEthernet1/0/2] quit
(2) 配置IPv6接口绑定功能
# 配置接口Ten-GigabitEthernet1/0/1的IPv6接口绑定功能,绑定源IP地址和MAC地址,并启用接口的DHCPv6 Snooping表项记录功能。
[Switch] interface ten-gigabitethernet 1/0/1
[Switch-Ten-GigabitEthernet1/0/1] ipv6 verify source ip-address mac-address
[Switch-Ten-GigabitEthernet1/0/1] ipv6 dhcp snooping binding record
[Switch-Ten-GigabitEthernet1/0/1] quit
# 客户端通过DHCPv6 server成功获取IP地址之后,通过执行以下命令可查看到已生成的IPv6动态绑定表项信息。
[Switch] display ipv6 source binding dhcpv6-snooping
Total entries found: 1
IPv6 Address MAC Address Interface VLAN Type
2001::1 040a-0000-0001 XGE1/0/1 1 DHCPv6 snooping
从以上显示信息可以看出,IP Source Guard通过获取接口Ten-GigabitEthernet1/0/1上产生的DHCPv6 Snooping表项成功生成了IPv6动态绑定表项。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!