IP Source Guard

  • 格式:docx
  • 大小:46.67 KB
  • 文档页数:6

默认情况下,交换机在二层接口上转发数据时,只查看数据包的MAC地址,并不会查看数据包的IP地址,如果要让交换机根据数据包的IP或者同时根据IP与MAC做出转发决定,有多种方法可以实现。如根据IP转发,可以通过在接口上应用Port ACL来实现,如果要根据MAC转发,可以通过应用port-security来实现,但无论是Port ACL还是port-security,都存在一些局限性,下面介绍一种扩展性较高的安全防护特性- IP Source Guard,IP Source Guard可以根据数据包的IP地址或IP与MAC地址做出转发决定,如果数据包的IP或MAC是不被允许的,那么数据包将做丢弃处理。

因为IP Source Guard需要根据数据包的IP或者同时根据IP与MAC做出转发决定,所以IP Source Guard在工作时,需要有一张IP和MAC的转发表,在这张表中,明确记录着哪些IP是可以转发的,哪些MAC可以被转发,其它不能被转发的统统丢弃。这表转发表称为IP source binding table,并且只能被IP source

guard使用。而IP source binding table表,只有在交换机上开启DHCP snooping功能后,才会生成。

IP Source Guard的这张转发表的条目可以自动学习,也可以手工静态添加,如果是自动学习,是靠DHCP

snooping功能学习的,所以只有客户端是通过DHCP请求获得地址,并且DHCP服务器的回复是经过交换机时,才能被DHCP snooping学习到。

当在交换机上同时开启了IP Source Guard与DHCP snooping后,交换机将在开启了的接口上拒绝所有流量通过,只放行DHCP流量,并且会自动应用一条ACL到接口上,也只有ACL允许的IP才能通过,这条ACL无法在正常配置中查看,只能通过表的方式查看。因为默认可以允许DHCP通过,所以主机的DHCP请求可以帮助他们从DHCP服务器获得地址,当DHCP服务器向主机提供地址时,这个信息在穿越交换机时,IP信息会被记录,并且被自动生成的ACL允许转发,这样以后,只有主机从DHCP服务器自动获得的IP可以通过交换机,而其它IP的流量都是被拒绝的,因此可以看出,IP Source Guard和DHCP snooping的配合使用,可以防止一个主机使用其它主机的IP地址来攻击网络,因为只有DHCP获得的地址能够被交换机转发,其它接口即使配置了相同IP,都会被IP Source Guard拒绝放行。

注:IP Source Guard自动生成的ACL优先于任何Router ACLs和VLAN map。

IP source binding table的条目除了靠DHCP snooping自动学习之外,还可以手工静态配置。

当IP source binding table表的内容有任何变化时,自动生成的ACL也会自动改变,自动生成的ACL总是与IP source binding table表中的条目同步。如果IP source binding table表是空的,那么ACL将拒绝所有流量通过,也就是最初的状态。

因为IP Source Guard可以根据数据包的IP地址做出转发,也可以同时根据IP与MAC地址做出转发,如果要开启同时根据IP与MAC做出转发,还必须在接口上开启port security功能,port security帮助识别流量的MAC地址,并将其添加到source binding table表中,最后被ACL设置为允许。

注:

★IP source guard只能在二层接口上开启,并且不支持EtherChannel。

★当IP source guard根据IP转发在接口上开启,这个接口所在的VLAN必须开启DHCP snooping,

★如果是在trunk上开启,DHCP snooping应该在所有VLAN上开启,过滤也对所有VLAN生效。

★如果在trunk上打开或关闭某一个VLAN DHCP snooping的,可能会出问题。

★当IP source guard 根据IP和MAC转发在接口上开启,那么DHCP snooping和port security必须同时开启。

配置

1.网络初始

(1)配置交换机

sw1(config)#int range f0/1 - 3

sw1(config-if-range)#switchport mode access

sw1(config-if-range)#switchport access vlan 10

说明:已经将R1、R2、R3划到同一VLAN 10。

(2)测试R2到R3的连通性

r2#ping 10.1.1.30

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 10.1.1.30, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms

r2#

说明:因为R2与R3在同一VLAN 10,所以通信正常。

2.在SW1上配置IP Source Guard

(1)在交换机上开启DHCP snooping

sw1(config)#ip dhcp snooping

sw1(config)#ip dhcp snooping vlan 10

sw1(config)#int f0/3

sw1(config-if)#ip dhcp snooping trust

说明:开启IP Source Guard,交换机上必须先开启DHCP snooping,并且将DHCP Server的接口设置为trust接口。

(2)在接口下开启基于IP的IP Source Guard

sw1(config)#int range f0/1 - 2

sw1(config-if-range)# ip verify source

3.查看结果

(1)查看IP source binding table

sw1#sh ip source binding

MacAddress IpAddress Lease(sec) Type VLAN Interface ------------------ --------------- ---------- ------------- ---- -------------------- Total number of bindings: 0

说明:初始状态下,IP source binding table为空,意味着ACL会拒绝所有流量通过,只有DHCP能通过。

(2)查看自动生成的ACL

sw1#

##

sw1#sh ip verify source

Interface Filter-type Filter-mode IP-address Mac-address Vlan

--------- ----------- ----------- --------------- ----------------- ----------

Fa0/1 ip active deny-all 10

Fa0/2 ip active deny-all 10

sw1#

说明:因为初始状态下,IP source binding table为空,所以ACL会拒绝所有流量通过,只有DHCP能通过。

(3)在R1开启DHCP自动获得地址

r1(config)#int f0/0

r1(config-if)#ip address dhcp

注:因为开启了DHCP snooping,交换机会在DHCP请求从插入option 82,所以DHCP server要接收此数据包:

R3:

r3(config)#int f0/0

r3(config-if)#ip dhcp relay information trusted

(4)查看R1 DHCP自动获得的地址

r1#sh protocols f0/0

FastEthernet0/0 is up, line protocol is up

Internet address is 10.1.1.4/24

r1#

说明:R1从DHCP Server获得的地址为10.1.1.4。

(5)查看IP source binding table

sw1#sh ip source binding

MacAddress IpAddress Lease(sec) Type VLAN Interface

------------------ --------------- ---------- ------------- ---- --------------------

00:13:1A:85:D1:60 10.1.1.4 86348 dhcp-snooping 10 FastEthernet0/1

Total number of bindings: 1

sw1#

说明:因为R1从DHCP Server获得的地址为10.1.1.4,所以DHCP snooping将该地址记录在IP source

binding table中。

(6)查看自动生成的ACL

sw1#sh ip verify source

Interface Filter-type Filter-mode IP-address Mac-address Vlan

--------- ----------- ----------- --------------- ----------------- ----------

Fa0/1 ip active 10.1.1.4 10

Fa0/2 ip active deny-all 10

sw1#

说明:因为R1从DHCP Server获得的地址被DHCP snooping记录在IP source binding table中,所以自动被ACL允许通过。

(7)测试R1到R3的连通性

r1#ping 10.1.1.30

Type escape sequence to abort.