您的当前位置:首页正文

通过snmp协议获取mac地址

2024-06-06 来源:要发发教育
通过snmp协议获取mac地址

14MAC地址配置以太网交换机利用MAC地址表的信息在数据链路层对报文进行快速寻址转发,本文是对MAC地址的配置方法进行描述14.1理解MAC地址表14.1.1概述通过识别报文的数据链路层信息对报文转发是以太网交换机的主要功能(称为二层转发功能),以太网交换机通过报文所携带的目的MAC地址信息将报文转发到相应的端口,以太网交换机采用MAC地址表存储报文转发时所需要的目的MAC地址与端口信息关系。

以太网交换机的MAC地址表中所有的MAC地址都和VLAN相关联,不同的VLAN允许相同的MAC地址。

每个VLAN都维护它自己逻辑上的一份地址表。

一个VLAN已学习的MAC地址,对于其他VLAN而言可能是的,仍然需要学习。

以太网交换机的MAC地址包含以下信息图1.MAC地址表项构成n状态表示地址表项为动态地址、静态地址或过滤地址。

n VLANMAC地址所属的VLAN nMAC地址表项的MAC地址信息n端口MAC地址对应的端口信息以太网交换机的MAC地址表中的表项通过以下两种方式进行更新和维护n动态地址学习n手工配置地址以太网交换机在转发报文时通过报文的目的MAC地址以及报文所属的VLAN ID的信息在MAC地址表中查找相应的转发输出端口,根据查找的结果采取单播、组播或广播的方式转发报文n单播转发以太网交换机能

够在MAC地址表中查到与报文的目的MAC地址和VLAN ID相对应的表项并且表项中的输出端口是唯一的,报文直接从表项对应的端口输出。 n组播转发以太网交换机能够在MAC地址表中查到与报文的目的MAC地址和VLAN ID相对应的表项并且表项中对应一组输出端口,报文直接从这组端口输出。

n广播转发以太网交换机收到目的地址为ffff.ffff.ffff的报文或者在MAC地址表中查找不到对应的表项时,报文被送到所属的VLAN中除报文输入端口外的其他所有端口输出。

&说明本文只涉及动态地址、静态地址与过滤地址的管理,组播地址的管理不在本文内描述,请参看《IGMP Snooping配置》。 14.1.2动态地址学习14.1.2.1动态地址通过以太网交换机的自动地址学习过程产生的MAC地址表项被称为动态地址,只有动态地址才会被地址表的老化机制所删除。

14.1.2.2地址学习过程通常情况下MAC地址表的维护都是通过动态地址学习的方式进行,其工作原理如下1.以太网交换机的MAC地址表为空的情况下,UserA要与UserB进行通讯,UserA首先发送报文到交换机的端口GigabitEther0/2,此时以太网交换机将UserA的MAC地址学习到MAC地址表中。

由于地址表中没有UserB的源MAC地址,因此以太网交换机以广播的方式将报文发送到除了UserA以外的所有端口,包括User B与User C的端口,此时UserC能够收到UserA所发出的不属于它的报文。

图2.动态地址学习步骤一图3.以太网交换MAC地址表一2.UserB收到报文后将回应报文通过以太网交换机的端口GigabitEther0/3发送UserA,此时以太网交换机的MAC地址表中已存在UserA的MAC地址,所以报文被以单播的方式转发到GigabitEther0/2端口,同时以太网交换机将学习UserB的MAC地址,与步骤1中所不同的是UserC此时接收不到UserB发送给UserA的报文。

图4.动态地址学习步骤二图5.以太网交换机MAC地址表二3.通过UserA与UserB的一次交互过程后,以太网交换机学习到了UserA与UserB的源MAC地址,之后UserA与UserB之间的报文交互则采用单播的方式进行转发,此后UserC将不再接收到UserA与UserB之间的交互报文。

14.1.2.3地址老化以太网交换机的MAC地址表是有容量限制的,以太网交换机采用地址表老化机制进行不活跃的地址表项淘汰。 以太网交换机在学习到一个新的地址的同时启动该地址的老化记时,在达到老化记时前,如果以太网交换机没有再一次收到以该地址为源MAC地址的报文,那该地址在达到老化时间后会从MAC地址表中删除。

14.1.3过滤地址手工配置的MAC地址表项,用于在以太网交换机上丢弃以所配置的MAC地址为源地址或目的地址的报文,这类地址只能通过手工配置添加和删除,保存配置后设备重启,过滤地址也不会丢失。

通过手工将网络中的非法接入用户的源MAC地址配置为过滤地址的方式可以实现过滤非法接入用户。 ~注意过滤地址对送CPU的报文无效。

如某个ARP报文的二层源MAC为一过滤地址,此时该ARP报文仍然会被送往CPU,但其并不会被转发。

14.1.4MAC地址变化通知以太网交换机的MAC地址通知功能通过与网络管理工作站(NMS)的协作为网络管理提供了监控网络以太网交换机下用户变化的机制。

图6.地址变化通告打开MAC地址通知的功能后,当以太网交换机学习到一个新的MAC地址或老化掉一个已学习到的MAC地址时,一个反映MAC地址变化的通知信息就会产生,并以SNMP Trap的方式将通知信息发送给指定的NMS(网络管理工作站)。

当一个MAC地址增加的通知产生,就可以知道一个由此MAC地址标识的新用户开始使用网络,当一个MAC地址删除的通知产生,则表示一个用户在地址老化时间内没有新的报文发送,通常可以认为此用户已经停止使用网络了。

当使用以太网交换机下接的用户较多时,可能会出现在短时间内会有大量的MAC地址变化产生,导致网络流量增加。

为了减轻网络负担,可以设置发送MAC地址通知的时间间隔。 在达到配置的时间间隔之后,系统将这个时间内的通知信息封装成多个通知信息,此时在每条地址通知信息中,就包含了若干个MAC地址变化的信息,从而可以会有效地减少网络流量。

当MAC地址通知产生时,通知信息同时会记录到MAC地址通知历史记录表中。

此时即便没有配置接收Trap的NMS,管理员也可以通过查看MAC地址通知历史记录表来了解最近MAC地址变化的消息。

&说明MAC地址通知仅对动态地址有效,对于配置的静态地址与过滤地址的变化将不会产生通知信息。

14.1.5IP和MAC地址绑定14.1.5.1概述通过手动配置IP和MAC地址绑定功能,可以对输入的报文进行IP地址和MAC地址绑定关系的验证。

如果将一个指定的IP地址和一个MAC地址绑定,则设备只接收源IP地址和MAC地址均匹配这个绑定地址的IP报文;否则该IP报文将被丢弃。

利用地址绑定这个特性,可以严格控制设备的输入源的合法性。 需要注意的是,通过地址绑定控制交换机的输入,将优先于802.1X、端口安全以及ACL生效。

14.1.5.2地址绑定模式地址绑定的模式分为:兼容,宽松,严格三种模式,默认模式为严格模式。

其相应的转发规则,见下表所示模式IPv4报文转发规则IPv6报文转发规则严格符合IPV4+MAC条件的报文转发所有IPV6报文均不转发宽松符合IPV4+MAC条件的报文转发所有IPV6报文均可转发兼容符合IPV4+MAC条件的报文转发源MAC为绑定地址的MAC地址的IPV6报文转发14.1.5.3地址绑定例外端口IP地址和MAC地址绑定功能缺省

对设备上的所有端口都生效,通过配置例外口的方式可以在使绑定功能在部份端口上不生效。

&说明在应用中设备的上链端口的IP报文的绑定关系是不确定的,通常将设备的上链端口配置为例外口,此时上链端口则不进行IP地址与MAC地址的绑定检查。

14.1.6协议规范《IEEE Std802.3TM Carriersense multipleaess withcollision detection(CSMA/CD)aess methodand physicallayer specifications》《IEEE Std802.1QTM VirtualBridged LocalArea Networks》14.2缺省配置功能特性缺省值动态地址老化时间300秒端口MAC地址学习能力开启MAC地址变化通知功能关闭地址绑定模式patible14.3配置动态地址14.3.1配置端口MAC地址学习能力命令作用Ruijie(config-if)#no mac-address-learning关闭端口MAC地址学习能力,通过show mac-address-learning命令查看端口学习能力配置~注意MAC地址学习能力缺省开启,如果端口上配置了DOT1X,IP SOURCEGUARD绑定,端口安全功能,端口的学习能力不能开启;同样,关闭端口学习能力的端口不能开启接入控制功能。

14.3.2清除动态地址命令作用Ruijie#clear mac-address-table dynamic删除设备上所有的动态地址Ruijie#clear

mac-address-table dynamicaddress mac-address vlan vlan-id删除特定MAC地址mac-address指定要删除的MAC地址。 vlan-id指定要删除的MAC地址所在的VLAN。

Ruijie#clear mac-address-table dynamicinterface interface-id[vlan vlan-id]删除特定物理接口或Aggregate Port上的特定VLAN中的所有动态地址或接口上所有动态地址。 interface-id指定的物理接口或是Aggregate Port。 vlan-id指定删除动态地址所属的VLAN。

Ruijie#clear mac-address-table dynamic vlan vlan-id删除特定VLAN上的所有动态地址vlan-id指定所要删除的动态地址所属的VLAN。

下面的例子说明了如何配置删除设备接口GigabitEther0/1下VLAN1中的所有动态地下。

Ruijie#clear mac-address-table dynamicinterface GigabitEther0/1vlan114.3.3查看配置命令作用Ruijie#show mac-address-table dynamic查看设备上所有的动态地址信息。 Ruijie#show mac-address-table dynamicaddress

mac-address[vlan vlan-id]查看设备上特定动态MAC地址信息。 mac-address查看的MAC地址。

vlan-id查看特定的VLAN中的特定MAC地址。 Ruijie#show mac-address-table dynamicinterface

interface-id[vlan vlan-id]查看设备上指定物理接口或Aggregate Port下的动态地址信息。

interface-id指定的物理接口或是Aggregate Port。 vlan-id查看特定的VLAN中的动态地址。

Ruijie#show mac-address-table dynamic vlanvlan-id查看设备上指定VLAN下的动态地址信息。

vlan-id查看特定的VLAN中的动态地址。

Ruijie#show mac-address-table count查看地址表的统计信息下面的例子说明了如何查看设备上物理接口GigabitEther0/1下VLAN中的所有动态MAC地址信息。

Ruijie#show mac-address-table dynamicinterface gigabitEther0/1vlan1Vlan MAC Address

TypeInterface---------------------------------------------------------10000.5e00.010c DYNAMIC GigabitEther0/1100d0.f822.33aa DYNAMIC

GigabitEther0/1100d0.f822.a219DYNAMICGigabitEther0/1100d0.f8a6.5af7DYNAMICGigabitEther0/1下面的例子说明了如何查看设备上的地址表统计信息Ruijie#show mac-address-table countDynamic AddressCount:30Static AddressCount:0Filtering AddressCount:0Total MacAddresses:30Total MacAddress SpaceAvailable:815914.4配置动态地址老化时间n配置老化时间n查看配置14.4.1配置老化时间命令作用

Ruijie(config)#mac-address-table agint-time[0|10-1000000]设置一个地址被学习后将保留在动态地址表中的时间长度,单位是秒,范围是10-1000000秒,缺省为300秒。

当你设置这个值为0时,地址老化功能将被关闭,学习到的地址将不会被老化。

Ruijie(config)#on mac-address-table agint-time恢复地址老化时间为缺少值。

下面的例子说明了如何配置设备的地址老化时间为180秒。 Ruijie#configure terminalEnter configurationmands,one perline.End withTL/Z.Ruijie(config)#mac-address-table aging-time18014.4.2查看配置命令作用Ruijie#show

mac-address-table aging-time查看所有的地址老化配置信息下面的例子说明了如何查看设备上的地址老化时间配置。 Ruijie#show mac-address-table aging-time

Agingtime:180seconds14.5配置静态地址n管理静态地址n查看配置14.5.1管理静态地址命令作用

Ruijie(config)#mac-address-table staticmac-address

vlanvlan-id interfaceinterface-id mac-address指定表项对应的目的MAC地址。

vlan-id指定该地址所属的VLAN。

interface-id包将转发到的接口(可以是物理端口或Aggregate Port)。

当设备在vlan-id指定的VLAN上接收到以mac-address为目的地址的报文时,这个报文将被转发到interface-id所指定的接口上。

Ruijie(config)#no mac-address-table staticmac-address vlanvlan-id interfaceinterface-id删除静态地址表项,参数与添加命令一致。

下面的例子说明了如何配置添加一个静态地址00d0.f800.073c,当在VLAN4中接收到目的地址为该地址的报文时,这个报文将被转发到指定的接口Gigabitether0/3上。

Ruijie#configure terminalEnter configurationmands,one perline.End withTL/Z.Ruijie(config)#mac-address-table static00d0.f800.073c vlan4interface gigabitether0/3下面的例子说明了如何配置删除上一例子中添加的静态地址00d0.f800.073c。 Ruijie#configure terminalEnter configurationmands,one perline.End withTL/Z.Ruijie(config)#no mac-address-table static00d0.f800.073c vlan4interface gigabitether0/314.5.2查看配置命令作用Ruijie#show mac-address-table static查看所有的静态地址信息下面的例子说明了如何查看设备上的所有静态地址信息。

Vlan MAC Address

TypeInterface---------------------------------------------------------400d0.f800.073c STATIC GigabitEther0/314.6配置过滤地址n管理过滤地址n查看配置14.6.1管理过滤地址命令作用Ruijie(config)#mac-address-table filteringmac-address vlanvlan-id mac-address指定表项对应的MAC地址vlan-id指定该

地址所属的VLAN当设备在vlan-id指定的VLAN上接收到以mac-address指定的地址为源地址或目的地址的报文将被丢弃。 Ruijie(config)#no mac-address-table filteringmac-address vlanvlan-id删除过滤地址表项,参数与添加命令一致。

下面的例子说明了如何配置添加一个过滤地址00d0.f800.073c,当在VLAN4中接受到源地址或目的地址为该地址的报文时,将丢弃此报文。

Ruijie#configure terminalEnter configurationmands,one perline.End withTL/Z.Ruijie(config)#mac-address-table filtering00d0.f800.073cvlan4下面的例子说明了如何配置删除上一例子中的静态地址00d0.f800.073c。

Ruijie#configure terminalEnter configurationmands,one perline.End withTL/Z.Ruijie(config)#no mac-address-table filtering00d0.f800.073cvlan414.6.2查看配置命令作用

Ruijie#show mac-address-table filtering查看所有的过滤地址信息下面的例子说明了如何查看设备上的所有静态地址信息。 Vlan MACAddress

TypeInterface---------------------------------------------------------400d0.f800.073c FILTERGigabitEther0/314.7配置MAC地址变化通知n配置MAC地址变化通知n查看配置14.7.1配置MAC地址变化通知缺省情况下,MAC地址的全局开关被关闭,所有接口的MAC地址通知功能也均被关闭。

配置设备MAC地址通知功能命令作用

Step1Ruijie(config)#snmp-server hosthost-addr

traps[version{1|2c|3[auth|noauth|priv]}]munity-string配置接收MAC地址通知的NMS。 host-addr指明接收者的IP。

version指明发送哪种版本的snmp trap报文,对v3版本还可以指定是否认证以及安全等级参数。

Step2Ruijie(config)#snmp-server enabletraps使能设备发送trap功能。

Step3Ruijie(config)#mac-address-table notification打开MAC地址通知功能开关。

Step4Ruijie(config)#mac-address-table

notification{interval value|history-size value}配置MAC地址通知的时间间隔与历史记录容量。

interval value设置产生MAC地址通知的时间间隔(可选)。 时间间隔的单位为秒,范围为1-3600,缺省为1秒。 history-size valueMAC通知历史记录表中记录的最大个数,范围1-200,缺省为50。 Step5Ruijie(config-if)#snmp

trapmac-notification{added|removed}打开接口的MAC地址通知功能。

added当地址增加时通知。

removed当地址被删除时通知。

下面的例子说明了如何打开MAC地址通知功能,并以public为认证名向IP地址为192.168.12.54的NMS发送MAC地址变化通知的Trap,产生MAC地址变化通知的间隔时间为40秒,MAC地址通知历史记录表的大小为100,打开接口Gigabitether0/1上当MAC地址增加和减少时进行通知的功能Ruijie#configure terminalEnter configurationmands,one perline.End

withTL/Z.Ruijie(config)#snmp-server host192.168.12.54traps publicRuijie(config)#snmp-server enabletraps Ruijie(config)#mac-address-table

notificationRuijie(config)#mac-address-table

notificationinterval40Ruijie(config)#mac-address-table notificationhistory-size100Ruijie(config)#interface GigabitEther0/1Ruijie(config-if)#snmp trapmac-notification addedRuijie(config-if)#snmp trapmac-notification

removed14.7.2查看配置在特权模式下,使用下表所列的命令来查看设备的MAC地址表信息命令作用Ruijie#show mac-address-table notification查看MAC地址变化通知功能的全局配置信息。 Ruijie#show mac-address-table notificationinterface查看接口的MAC地址变化通知的使能状况。

Ruijie#show mac-address-table notificationhistory查看MAC地址变化通知信息的历史记录表。

下面是查看MAC地址变化通知信息的例子。 查看MAC地址通知功能的全局配置信息Ruijie#show mac-address-table notificationMAC

NotificationFeature:Enabled Interval(Sec):2Maximum HistorySize:154Current HistorySize:2Ruijie#show mac-address-table notificationinterface InterfaceMAC AddedTrap MACRemoved

Trap-----------------------------------------------Gi0/1Disabled EnabledGi0/2Disabled DisabledGi0/3Enabled EnabledGi0/4Disabled DisabledGi0/5Disabled

DisabledGi0/6Disabled DisabledRuijie#show mac-address-table notificationhistory History Index:1Entry Timestamp:15091MAC ChangedMessage:Operation

VLANMACAddressInterface-------------------------------------------------Added100d0.f808.39Gi0/1Removed100d0.f808.0c0c Gi0/1HistoryIndex:2Entry Timestamp:21891MAC ChangedMessage:Operation

VLANMACAddressInterface-------------------------------------------------Added100d0.f80d.1083Gi0/114.8配置IP地址和MAC地址绑定n配置MAC地址变化通知n查看配置14.8.1配置IP地址和MAC地址绑定在全局模式下,可以通过以下步骤来设置地址绑定命令作用Step1Ruijie(config)#address-bind ip-address mac-address

配置IP地址和MAC地址的绑定关系ip-address绑定的IP地址mac-address绑定的MAC地址Step2Ruijie(config)#address-bind install使IP和MAC地址绑定生效在全局配置模式下使用no address-bind ip-address mac-address删除一个IP地址和MAC地址的绑定项。

通过no address-bind install命令可关闭绑定功能,使地址绑定配置不生效。

下面是配置IP地址和MAC地址绑定模式的例子Ruijie#configure terminalEnter configurationmands,one perline.End

withTL/Z.Ruijie(config)#address-bind192.168.5.100d0.f800.0001Ruijie(config)#address-bind install~说明3760E系列产品,全局IP+MAC绑定和端口安全/DOT1X共用时,不管安全通道是否开启,全局IP+MAC绑定地址和端口安全地址/DOT1X认证用户是并集关系,即符合任意安全功能的地址可以通信。 14.8.2配置地址绑定模式命令作用

Ruijie(config)#address-bind ipv6-mode{patible|loose|strict}配置地址绑定模式patible兼容模式loose宽松模式strict严格模式Ruijie(config)#no adress-bind ipv6-mode恢复地址绑定模式为缺省值下面是配置地址绑定模式为严格模式的例子

Ruijie#configure terminalEnter configurationmands,one perline.End withTL/Z.Ruijie(config)#address-bind ipv6-mode

strict~注意设置IPV6模式对DHCP Snooping的地址绑定,端口安全的MAC+IP等多种MAC+IP绑定功能同时生效。

对于某些产品的端口安全等功能支持IPV6的安全地址,IPV6模式下的转发规则,如下表所示模式Ipv4转发规则IPV6转发规则严格模式只允许符合IPV4+MAC条件的报文转发。 只允许符合IPV6安全地址配置的IPV6报文转发。 宽松模式只允许符合IPV4+MAC条件的报文转发。 允许所有的IPV6报文转发。

兼容模式只允许符合IPV4+MAC条件的报文转发。

只允许源MAC为绑定的MAC地址,或符合IPV6安全地址配置的IPV6报文转发。

需要说明的是IPV6兼容模式与端口安全/DOT1X基于端口认证共用时,所有安全地址的IPV6报文都可以通行。

对于S3760E系列产品,IPV6兼容模式与端口安全/DOT1X认证共用时,所有安全地址的IPV6报文都可以通行。 14.8.3配置地址绑定例外端口命令作用

Ruijie(config)#address-bind uplinkinterface-id配置地址绑定的例外端口interface-id端口或Aggregate Port通过no address-bind uplinkinterface-id命令取消指定例外口配置。 下面是配置端口GigabitEther0/1为例外端口的例子Ruijie#configure terminalEnter configurationmands,one perline.End withTL/Z.Ruijie(config)#address-bind

uplinkGigabitEther0/114.8.4查看配置在特权模式下使用下列命令查看设备上的IP地址和MAC地址绑定的相关配置命令作用

Ruijie#show address-bind查看设备上的IP地址与MAC地址绑定配置Ruijie#show address-bind uplink查看设备上的例外口信息下面是查看设备的IP地址和MAC地址绑定配置的例子Ruijie#show address-bind TotalBind Addressesin System:1IP AddressBinding MACAddr-------------------------------192.168.5.100d0.f800.000114.9典型配置举例14.9.1网络配置某信息系统组网如下图7.典型应用模型数据库服务器通过GigabitEther0/1接到以太网交换机,WEB服务服务器通GigabitEther0/2接到以太网交换机,服务器管理员通过GigabitEther0/3接到以太网交换机,其他的一般用户通过以太网交换机的GigabitEther0/10接入访问WEB服务器,所有的数据均在VLAN1中转发。

为保障WEB服务器与数据库之间交互的信息安全以及管理员与服务器之间交互的信息的安全,通过配置静态地址的方式保证WEB服务器与数据库服务器之间的数据转发采用单播方式,管理员与服务器之间的数据转发也采用单播方式,这样可以有效的避免这些数据被以广播的方式转发到一般用户所使用的网络中。

14.9.2设备配置设备配置过程Ruijie#configure terminalEnter configurationmands,one perline.End withTL/Z.Ruijie(config)#mac-address-table static00d0.f800.0001vlan1interface

GigabitEther0/1Ruijie(config)#mac-address-table static00d0.f800.0002vlan1interface

GigabitEther0/2Ruijie(config)#mac-address-table

static00d0.f800.0003vlan1interface GigabitEther0/3查看设备配置Ruijie#show mac-address-table staticVlan MACAddress TypeInterface---------------------------------------------------------100d0.f800.0001STATIC GigabitEther0/1100d0.f800.0002STATIC

GigabitEther0/2100d0.f800.0003STATICGigabitEther0/31.方案1——基于端口的MAC地址绑定思科2950交换机为例,登录进入交换机,输入管理口令进入配置模式,敲入命令Switch#config terminal#进入配置模式Switch(config)#Interface fastether0/1#进入具体端口配置模式Switch(config-if)#Switchport port-secruity#配置端口安全模式Switch(config-if)switchport port-security mac-address MAC(主机的MAC地址)#配置该端口要绑定的主机的MAC地址Switch(config-if)no switchportport-security mac-address MAC(主机的MAC地址)#删除绑定主机的MAC地址注意以上命令设置交换机上某个端口绑定一个具体的MAC地址,这样只有这个主机可以使用网络,如果对该主机的网卡进行了更换或者其他PC机想通过这个端口使用网络都不可用,除非删除或修改该端口上绑定的MAC地址,才能正常使用。

注意以上功能适用于思科

2950、 3550、

4500、6500系列交换机2.方案2——基于MAC地址的扩展访问列表Switch(config)Mac aess-list extendedMAC10#定义一个MAC地址访问控制列表并且命名该列表名为MAC10Switch(config)permit host0009.6bc4.d4bf any#定义MAC地址为0009.6bc4.d4bf的主机可以访问任意主机Switch(config)permit anyhost0009.6bc4.d4bf#定义所有主机可以访问MAC地址为0009.6bc4.d4bf的主机Switch(config-if)interface Fa0/20#进入配置具体端口的模式Switch(config-if)mac aess-group MAC10in#在该端口上应用名为MAC10的访问列表(即前面我们定义的访问策略)Switch(config)no mac aess-list extendedMAC10#清除名为MAC10的访问列表此功能与应用一大体相同,但它是基于端口做的MAC地址访问控制列表限制,可以限定特定源MAC地址与目的地址范围。 注意以上功能在思科 2950、 3550、

4500、6500系列交换机上可以实现,但是需要注意的是 2950、3550需要交换机运行增强的软件镜像(Enhanced Image)。 3.方案3——IP地址的MAC地址绑定只能将应用1或2与基于IP的访问控制列表组合来使用才能达到IP-MAC绑定功能。

Switch(config)Mac aess-list extendedMAC10#定义一个MAC地址访问控制列表并且命名该列表名为MAC10Switch(config)permit host0009.6bc4.d4bf any#定义MAC地址为0009.6bc4.d4bf的主机可以访问任意主机Switch(config)permit anyhost0009.6bc4.d4bf#定义所有主机可以访问MAC地址为0009.6bc4.d4bf的主机Switch(config)Ip aess-list extendedIP10#定义一个IP地址访问控制列表并且命名该列表名为

IP10Switch(config)Permit192.168.0.10.0.0.0any#定义IP地址为192.168.0.1的主机可以访问任意主机Permit

any192.168.0.10.0.0.0#定义所有主机可以访问IP地址为192.168.0.1的主机Switch(config-if)interface Fa0/20#进入配置具体端口的模式Switch(config-if)macaess-group MAC10in#在该端口上应用名为MAC10的访问列表(即前面我们定义的访问策略)Switch(config-if)Ip aess-group IP10in#在该端口上应用名为IP10的访问列表(即前面我们定义的访问策略)Switch(config)no macaess-list extendedMAC10#清除名为MAC10的访问列表Switch(config)no Ipaess-group IP10in#清除名为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地址被盗用。

#p#Ping命令Ping是最常使用的故障诊断与排除命令。 它由一组ICMP回应请求报文组成,如果网络正常运行将返回一组回应应答报文。

ICMP消息以IP数据包传输,因此接收到ICMP回应应答消息能够表明第三层以下的连接都工作正常。

Cisco的ping命令不但支持IP协议,而且支持大多数其他的桌面协议,如IPX和AppleTalk协议的ping命令。

我们首先看一下支持IP协议的ping命令以用户EXEC方式执行的情况,然后再讨论在特权模式下,扩展的ping命令包含的许多强大功能。

用户执行模式IP PING简单的IP ping既可以在用户模式下执行,也可以在特权模式下执行。

正常情况下,命令会发送回5个回应请求,5个惊叹号表明所有的请求都成功地接收到了响应。

输出中还包括最大、最小和平均往返时间等信息。

每一个“!”表明一个echo响应被成功的接受,如果不是“!”号,则表明echo响应未被接收到的原因!响应成功接收·请求超时U目的不可达P协议不可达N网络不可达Q源抑制M不能分段?不可知报文类型IPX PINGIPX ping命令只能在运行IOS v8.2及其以上版本的路由器上执行。

用户模式下的IPX ping通常仅用于测试Cisco路由器接口。 在特权模式下,用户可以ping特定的NOVELL工作站,命令的格式为“ping ipxIPX地址”。

APPLETALE PING该命令使用Apple EchoProtocol(AEP)以确认AppleTalk节点之间的连通性。

需要注意的是,目前的Cisco路由器仅对以太网接口支持Apple EchoProtocol。

命令的格式为“ping appleAppletalk地址”。

特权执行模式在特权执行模式下,扩展的ping命令适用于任何一种桌面协议。

它包含更多的功能属性,因此可以获得更为详细的信息。

通过这些信息我们可以分析网络性能下降的原因而不单单是服务丢失的原因。

扩展的ping命令的执行方式也是敲入ping。 然后路由器提示各种不同的属性。

EXTENDED IPPING其使用方法如下所示YH-Router#ping Protocol[ip]:Target IPaddress:165.48.183.12Repeat count[5]:10Datagram size[100]:1600Timeout inseconds[2]:Extended mands[n]:y Source address orinterface:165.48.48.3Type ofservice[0]:Set DFbit inIP header?[no]:Data

pattern[0xABCD]:Loose,Srict,Record,Timestamp,Verbose[none]:Sweep rangeof sizes[n]:Type escapesequence toabort.Sending10,1600-byte ICMPEchoes

to165.58.183.12,timeout is2seconds:!!!!!!!!!!Suess

rateis100percent(10/10),round-trip min/avg/max=36/39/48ms首先我们讨论特权模式下的ping的各种可用属性。 每种属性的缺省值在括号中显示。 Protocol需要测试的协议。 Target address测试的目标地址。

Repeat count如果出现间歇性的失败或者响应时间过慢,ping重复的次数。

Datagram size如果怀疑报文由于延迟过长或者分段失败而丢失,则可以提高报文的大小。

例如,我们可以使用1600字节的报文来强制分段。

Timeout如果怀疑超时是由于响应过慢而不是报文丢失,则可以提高该值。

Extended mands回答确定以获得扩展属性。 Sourceaddress必须是路由器接口的地址。

Type ofservice根据RFC791TOS规定的属性,通常缺省值为0。 Set DFbit inIP header?通过设置DF位禁止分段,即使是报文超过了路由器定义的MTU也禁止分段。

Data pattern[0xABCD]通过改变数据模式可以测试线路的噪声。 Loose,Strict,Record,Timestamp,Verbose[none]这些都是IP报文头的属性。

一般只使用Record属性和Verbose,其他属性很少被使用。 Record可以用来记录报文每一跳的地址,Verbose属性给出每一个回应应答的响应时间。

Sweep rangeof sizes[n]该属性主要用于测试大报文被丢失、处理速度过慢或者分段失败等故障。

EXTEND IPXPING扩展的IPX ping也允许用户修改参数,比如报文大小和重复次数。

对用户模式下ping的另一个增强属性是使用了Novell Standardecho属性。

使用这一属性,用户可以ping装载IPX的工作站。

如果禁用该属性,Novell IPX设备将不响应ping,因为它们不支持Cisco proprietaryIPX ping协议。

用户可以修改设备的属性使它们支持这一特性。

EXTENDED APPLETALKPING扩展的AppleTalk ping命令是对用户模式下ping的增强,这一点与扩展的IPX ping类似。

与IP和IPX扩展ping一样,用户也可以选择Verbose等属性。 trace命令trace命令提供路由器到目的地址的每一跳的信息。 它通过控制IP报文的生存期(TTL)字段来实现。 TTL等于1的ICMP回应请求报文将被首先发送。

路径上的第一个路由器将会丢弃该报文并且发送回标识错误消息的报文。

错误消息通常是ICMP超时消息,表明报文顺利到达路径的下一跳,或者端口不可达消息,表明报文已经被目的地址接收但是不能向上传送到IP协议栈。

为了获得往返延迟时间的信息,trace发送三个报文并显示平均延迟时间。

然后将报文的TTL字段加1并发送3个报文。

这些报文将到达路径的第二个路由器上,并返回超时错误或者端口不可达消息。

反复使用这一方法,不断增加报文的TTL字段的值,直到接收到目的地址的响应消息。

在有些情况下,使用trace命令可能会导致故障。 因为IOS中存在与trace命令相关的bug。 这些bug的相关信息可以从CCO得到。

另外一个问题是,某些目标站点不响应ICMP端口不可达消息。 当命令的输出显示一系列星号(*)时,就可能碰到了此类站点。 用户可以使用Ctrl-Shift-6中断命令的执行。

用户执行模式下面展示了一个简单的在用户执行模式下执行的trace命令的输出。

到达目的地的距离是3跳。

TTL值为1的3个报文的响应消息是ICMP超时错误,并且返回报文的IP地址有两个。

因为路由器1和路由器2在同一个网段中,并且它们到路由器3的距离都是一跳,因此这些路由器都响应该报文。 Router3#trace171.144.1.39Type escapesequence toabort.Tracing theroute

toRouter9(171.144.1.39)1Router2(165.48.48.2)0msec Router2(165.48.48.2)0msec

Router1(165.48.48.1)0msec2165.48.48.12912msec

Router6(165.48.49.129)12msec12msec3Router4(171.133.1.2)12msec12msec Router9(171.144.1.39)12msec12msec Router3下面列出了IP trace命令的输出中出现的不同字符及其含义XY msec在接收到响应消息之前的往返延迟(以毫秒为单位)*报文超时?报文类型不

能识别U端口不可达P协议不可达N网络不可达H主机不可达Q ICMP源抑制特权模式扩展Trace用于扩展ping命令的许多属性都可以用来扩展trace命令的功能。

扩展trace命令的特殊属性有Numeric display在缺省情况下,trace命令的输出中既包括IP地址也包括其对应的DNS域名。 如果用户不需要显示DNS域名,则可以使用该属性。 Probe count其缺省值为3,用户可以根据需要进行调整。 TTL该值可以在最大和最小TTL值之间变化。

Port number这是一个非常有用的属性,它可以使工程技术人员跟踪特定的传输层端口。

因此,不但可以确认源端与目的端之间的IP连通性,而且可以确认高层服务是否可被访问。

与trace命令相关的另外一个问题是,如果存在到达目的地的多条路径,返回报文的源地址可能不相同。

在这种情况下,用户需要仔细比较不同返回报文的延迟时间。 如果仍不能得到明确的结果,可以远程访问路径上的一个或多个路由器,使用trace命令访问源地址和目的地址。 #p#二,路由器网络服务安全配置1,禁止CDP(Cisco DiscoveryProtocol)。

如Router(Config)#no cdprun Router(Config-if)#no cdpenable2,禁止其他的TCP、UDP Small服务。

Router(Config)#no servicetcp-small-servers

Router(Config)#no serviceudp-samll-servers3,禁止Finger服务。 Router(Config)#no ipfinger Router(Config)#no servicefinger4,建议禁止服务。

Router(Config)#no ip server如果启用了服务则需要对其进行安全配置设置用户名和密码;采用访问列表进行控制。

如Router(Config)#username BluShinprivilege10G00dPa55w0rd Router(Config)#ip auth localRouter(Config)#no

aess-list10Router(Config)#aess-list10permit192.168.0.1Router(Config)#aess-list10deny anyRouter(Config)#ip

aess-class10Router(Config)#ipserver Router(Config)#exit5,禁止BOOTp服务。

Router(Config)#no ipbootp server禁止从网络启动和自动从网络下载初始配置文件。

Router(Config)#no bootwork Router(Config)#no servionfig6,禁止IP SourceRouting。

Router(Config)#no ipsource-route7,建议如果不需要ARP-Proxy服务则禁止它,路由器默认识开启的。

Router(Config)#no ipproxy-arp Router(Config-if)#no ipproxy-arp8,明确的禁止IP DirectedBroadcast。

Router(Config)#no ipdirected-broadcast9,禁止IP Classless。

Router(Config)#no ipclassless10,禁止ICMP协议的IP Unreachables,Redirects,Mask Replies。

Router(Config-if)#no ipunreacheables Router(Config-if)#no ipredirects Router(Config-if)#no ipmask-reply11,建议禁止SNMP协议服务。

在禁止时必须删除一些SNMP服务的默认配置。 或者需要访问列表来过滤。

如Router(Config)#no snmp-server munitypublic RoRouter(Config)#no snmp-server munityadmin RWRouter(Config)#no

aess-list70Router(Config)#aess-list70deny

anyRouter(Config)#snmp-server munityMoreHardPublic Ro70Router(Config)#no snmp-server enabletraps Router(Config)#no snmp-server system-shutdown

Router(Config)#no snmp-server trap-anth Router(Config)#no snmp-server Router(Config)#end12,如果没必要则禁止WINS和DNS服务。

Router(Config)#no ipdomain-lookup如果需要则需要配置Router(Config)#hostname RouterRouter(Config)#ip name-server202.102.134.9613,明确禁止不使用的端口。

Router(Config)#interface

eth0/3Router(Config)#shutdown#p#三,路由器路由协议安全配置1,首先禁止默认启用的ARP-Proxy,它容易引起路由表的混乱。 Router(Config)#no ipproxy-arp或者Router(Config-if)#no ipproxy-arp2,启用OSPF路由协议的认证。 默认的...。

内容仅供参考

因篇幅问题不能全部显示,请点此查看更多更全内容