cisco交换机ip和mac地址绑定虽然在TCP/IP网络中,计算机往往需要设置IP地址后才能通讯,然而,实际上计算机之间的通讯并不是通过IP地址,而是借助于网卡的MAC地址。
IP地址只是被用于查询欲通讯的目的计算机的MAC地址。
ARP协议是用来向对方的计算机、网络设备通知自己IP对应的MAC地址的。
在计算机的 ARJ 缓存中包含一个或多个表,用于存储IP地址及其经过解析的以太网MAC地址。
一台计算机与另一台IP地址的计算机通讯后,在ARP缓存中会保留相应的MAC地址。
所以,下次和同一个IP地址的计算机通讯,将不再查询MAC地址,而是直接引用缓存中的MAC地址。
在交换式网络中,交换机也维护一张MAC地址表,并根据MAC地址,将数据发送至目的计算机。
为什么要绑定MAC与IP 地址:IP地址的修改非常容易,而MAC地址存储在网卡的EEPROM 中,而且网卡的MAC地址是唯一确定的。
因此,为了防止内部人员进行非法IP盗用(例如盗用权限更高人员的IP地址,以获得权限外的信息),可以将内部网络的IP地址与MAC地址绑定,盗用者即使修改了IP地址,也因MAC地址不匹配而盗用失败:而且由于网卡MAC地址的唯一确定性,可以根据MAC地址查出使用该MAC地址的网卡,进而查出非法盗用者。
目前,很多单位的内部网络,都采用了MAC地址与IP地址的绑定技术。
下面我们就针对Cisco 的交换机介绍一下IP和MAC绑定的设置方案。
在Cisco中有以下三种方案可供选择,方案1和方案2实现的功能是一样的,即在具体的交换机端口上绑定特定的主机的MAC地址(网卡硬件地址),方案3是在具体的交换机端口上同时绑定特定的主机的MAC地址(网卡硬件地址)和IP地址。
1.方案1——基于端口的MAC地址绑定思科2950交换机为例,登录进入交换机,输入管理口令进入配置模式,敲入命令:Switch#config terminal#进入配置模式Switch(config)# Interface fastethernet 0/1#进入具体端口配置模式Switch(config-if)#Switchport port-secruity#配置端口安全模式Switch(config-if )switchport port-security mac-address MAC(主机的MAC地址)#配置该端口要绑定的主机的MAC地址Switch(config-if )no switchport port-security mac-address MAC(主机的MAC地址)#删除绑定主机的MAC地址注意:以上命令设置交换机上某个端口绑定一个具体的MAC地址,这样只有这个主机可以使用网络,如果对该主机的网卡进行了更换或者其他PC机想通过这个端口使用网络都不可用,除非删除或修改该端口上绑定的MAC地址,才能正常使用。
注意:以上功能适用于思科2950、3550、4500、6500系列交换机2.方案2——基于MAC地址的扩展访问列表Switch(config)Mac access-list extended MAC10#定义一个MAC地址访问控制列表并且命名该列表名为MAC10Switch(config)permit host 0009.6bc4.d4bf any#定义MAC地址为0009.6bc4.d4bf的主机可以访问任意主机Switch(config)permit any host 0009.6bc4.d4bf#定义所有主机可以访问MAC地址为0009.6bc4.d4bf的主机Switch(config-if )interface Fa0/20#进入配置具体端口的模式Switch(config-if )mac access-group MAC10 in#在该端口上应用名为MAC10的访问列表(即前面我们定义的访问策略)Switch(config)no mac access-list extended MAC10#清除名为MAC10的访问列表此功能与应用一大体相同,但它是基于端口做的MAC地址访问控制列表限制,可以限定特定源MAC地址与目的地址范围。
注意:以上功能在思科2950、3550、4500、6500系列交换机上可以实现,但是需要注意的是2950、3550需要交换机运行增强的软件镜像(Enhanced Image)。
3.方案3——IP地址的MAC地址绑定只能将应用1或2与基于IP的访问控制列表组合来使用才能达到IP-MAC 绑定功能。
Switch(config)Mac access-list extended MAC10#定义一个MAC地址访问控制列表并且命名该列表名为MAC10Switch(config)permit host 0009.6bc4.d4bf any#定义MAC地址为0009.6bc4.d4bf的主机可以访问任意主机Switch(config)permit any host 0009.6bc4.d4bf#定义所有主机可以访问MAC地址为0009.6bc4.d4bf的主机Switch(config)Ip access-list extended IP10#定义一个IP地址访问控制列表并且命名该列表名为IP10Switch(config)Permit 192.168.0.1 0.0.0.0 any#定义IP地址为192.168.0.1的主机可以访问任意主机Permit any 192.168.0.1 0.0.0.0#定义所有主机可以访问IP地址为192.168.0.1的主机Switch(config-if )interface Fa0/20#进入配置具体端口的模式Switch(config-if )mac access-group MAC10 in#在该端口上应用名为MAC10的访问列表(即前面我们定义的访问策略)Switch(config-if )Ip access-group IP10 in#在该端口上应用名为IP10的访问列表(即前面我们定义的访问策略)Switch(config)no mac access-list extended MAC10#清除名为MAC10的访问列表Switch(config)no Ip access-group IP10 in#清除名为IP10的访问列表上述所提到的应用1是基于主机MAC地址与交换机端口的绑定,方案2是基于MAC地址的访问控制列表,前两种方案所能实现的功能大体一样。
如果要做到IP与MAC地址的绑定只能按照方案3来实现,可根据需求将方案1或方案2与IP访问控制列表结合起来使用以达到自己想要的效果。
注意:以上功能在思科2950、3550、4500、6500系列交换机上可以实现,但是需要注意的是2950、3550需要交换机运行增强的软件镜像(Enhanced Image)。
后注:从表面上看来,绑定MAC地址和IP地址可以防止内部IP地址被盗用,但实际上由于各层协议以及网卡驱动等实现技术,MAC地址与IP地址的绑定存在很大的缺陷,并不能真正防止内部IP地址被盗用。
网络的飞速发展,使得大量的高端设备进入到局域网用户中,如何发挥这些设备的应有功能,节约重复投资,也是当前网络建设中的问题之一。
本文通过对联想三层交换机(3508GF)的ACL功能开发应用,来探讨信息网络安全中利用交换机的访问控制列表(ACL)来构建计算机网络安全体系的一种方法。
在通常的网络管理中,我们都希望允许一些连接的访问,而禁止另一些连接的访问,但许多安全工具缺乏网络管理所需的基本通信流量过滤的灵活性和特定的控制手段。
三层交换机功能强大,有多种管理网络的手段,它有内置的ACL(访问控制列表),因此我们可利用ACL(访问控制列表)控制Internet的通信流量。
以下是我们利用联想的三层交换机3508GF来实现ACL功能的过程。
利用标准ACL控制网络访问当我们要想阻止来自某一网络的所有通信流量,或者允许来自某一特定网络的所有通信流量,或者想要拒绝某一协议簇的所有通信流量时,可以使用标准访问控制列表来实现这一目标。
标准访问控制列表检查数据包的源地址,从而允许或拒绝基于网络、子网或主机IP地址的所有通信流量通过交换机的出口。
标准ACL的配置语句为:Switch#access-list access-list-number(1~99){permit|deny}{anyA|source[source-wildcard-mask]}{any|destination[destination-mask]}例1:允许192.168.3.0网络上的主机进行访问:Switch#access-list 1 permit 192.168.3.0 0.0.0.255例2:禁止172.10.0.0网络上的主机访问:Switch#access-list 2 deny 172.10.0.0 0.0.255.255例3:允许所有IP的访问:Switch#access-list 1 permit 0.0.0.0 255.255.255.255例4:禁止192.168.1.33主机的通信:Switch#access-list 3 deny 192.168.1.33 0.0.0.0 上面的0.0.0.255和0.0.255.255等为32位的反掩码,0表示“检查相应的位”,1表示“不检查相应的位”。
如表示33.0.0.0这个网段,使用通配符掩码应为0.255.255.255。
利用扩展ACL控制网络访问扩展访问控制列表既检查数据包的源地址,也检查数据包的目的地址,还检查数据包的特定协议类型、端口号等。
扩展访问控制列表更具有灵活性和可扩充性,即可以对同一地址允许使用某些协议通信流量通过,而拒绝使用其它协议的流量通过,可灵活多变的设计ACL的测试条件。
扩展ACL的完全命令格式如下:Switch#access-list access-list-number(100~199) {permit|deny} protocol{any|source[source-mask]}{any|destination[destination-mask]}[port-number]例1:拒绝交换机所连的子网192.168.3.0 ping通另一子网192.168.4.0:Switch#access-list 100 deny icmp 192.168.3.0 0.0.0.255 192.168.4.0 0.0.0.255 例2:阻止子网192.168.5.0 访问Internet(www服务)而允许其它子网访问:Switch#access-list 101 deny tcp 192.168.5.0 0.0.0.255 any www 或写为:Switch#access-list 101 deny tcp 192.168.5.0 0.0.0.255 any 80 例3:允许从192.168.6.0通过交换机发送E-mail,而拒绝所有其它来源的通信:Switch#access-list 101 permit tcp 192.168.6.0 0.0.0.255 any smtp基于端口和VLAN的ACL访问控制标准访问控制列表和扩展访问控制列表的访问控制规则都是基于交换机的,如果仅对交换机的某一端口进行控制,则可把这个端口加入到上述规则中。