04-系统功能介绍
本章节下载 (712.29 KB)
目 录
实现了对接口流量统计信息的查看和对接口的基本配置。
设置以太网接口的双工模式时存在以下几种情况:
· 当希望接口在发送数据包的同时可以接收数据包,可以将接口设置为全双工属性;
· 当希望接口同一时刻只能发送数据包或接收数据包时,可以将接口设置为半双工属性;
· 当设置接口为自协商状态时,接口的双工状态由本接口和对端接口自动协商而定。
设置以太网接口的速率时,当设置接口速率为自协商状态时,接口的速率由本接口和对端接口双方自动协商而定。
以太网接口在进行文件传输等大吞吐量数据交换的时候,接口收到的长度大于固定值的帧称为超长帧。该固定值的大小与设备的型号有关,请参见命令参考中的介绍。
系统对于超长帧的处理如下:
· 如果系统配置了禁止超长帧通过,会直接丢弃该帧不再进行处理。
· 如果系统允许超长帧通过,当接口收到长度在指定范围内的超长帧时,系统会继续处理;当接口收到长度超过指定最大长度的超长帧时,系统会直接丢弃该帧不再进行处理。
以太网接口流量控制功能的基本原理是:如果本端设备发生拥塞,将通知对端设备暂时停止发送报文;对端设备收到该消息后将暂时停止向本端发送报文;反之亦然。从而避免了报文丢失现象的发生。
· 开启流量控制后,设备具有发送和接收流量控制报文的能力:
¡ 当本端发生拥塞时,设备会向对端发送流量控制报文。
¡ 当本端收到对端的流量控制报文后,会停止报文发送。
· 配置只在接收包下开启功能后,设备具有接收流量控制报文的能力,但不具有发送流量控制报文的能力。
¡ 当本端收到对端的流量控制报文,会停止向对端发送报文。
¡ 当本端发生拥塞时,设备不能向对端发送流量控制报文。
因此,如果要应对单向网络拥塞的情况,可以在一端配置只在接收包下开启功能,在对端配置流量控制;如果要求本端和对端网络拥塞都能处理,则两端都必须配置流量控制。
该功能用于检测以太网转发通路能否正常工作。环回功能包括内部环回和外部环回:
· 内部环回:配置内部环回后,接口将需要从接口转发出去的报文返回给设备内部,让报文向内部线路环回。内部环回用于定位设备是否故障。
· 外部环回:配置外部环回后,接口将来自对端设备的报文返回给对端设备,让报文向外部线路环回。外部环回用于定位设备间链路是否故障。
在接口上配置了广播/组播/未知单播风暴抑制功能后,当接口上的广播/组播/未知单播流量超过用户设置的抑制阈值时,系统会丢弃超出流量限制的报文,从而使接口的广播/组播/未知单播流量降低到限定范围内,保证网络业务的正常运行。
二层以太网接口上,风暴抑制也可通过设置流量阈值来控制,与风暴抑制功能不同的是,流量阈值控制是通过软件对报文流量进行抑制,对设备性能有一定影响;风暴抑制功能是通过芯片物理上对报文流量进行抑制,相对流量阈值来说,对设备性能影响较小。
以太网链路聚合通过将多条以太网物理链路捆绑在一起形成一条以太网逻辑链路,实现增加链路带宽的目的,同时这些捆绑在一起的链路通过相互动态备份,可以有效地提高链路的可靠性。
链路捆绑是通过接口捆绑实现的,多个以太网接口捆绑在一起后形成一个聚合组,而这些被捆绑在一起的以太网接口就称为该聚合组的成员端口。每个聚合组唯一对应着一个逻辑接口,称为聚合接口。聚合组与聚合接口的编号是相同的,例如聚合组1对应于聚合接口1。
二层聚合组/二层聚合接口:二层聚合组的成员端口全部为二层以太网接口,其对应的聚合接口称为二层聚合接口。
聚合接口的速率和双工模式取决于对应聚合组内的选中端口:聚合接口的速率等于所有选中端口的速率之和,聚合接口的双工模式则与选中端口的双工模式相同。
聚合组内的成员端口具有以下两种状态:
· 选中(Selected)状态:此状态下的成员端口可以参与数据的转发,处于此状态的成员端口称为“选中端口”。
· 非选中(Unselected)状态:此状态下的成员端口不能参与数据的转发,处于此状态的成员端口称为“非选中端口”。
操作Key是系统在进行链路聚合时用来表征成员端口聚合能力的一个数值,它是根据成员端口上的一些信息(包括该端口的速率、双工模式等)的组合自动计算生成的,这个信息组合中任何一项的变化都会引起操作Key的重新计算。在同一聚合组中,所有的选中端口都必须具有相同的操作Key。
属性类配置:包含的配置内容如表1-1所示。在聚合组中,只有与对应聚合接口的属性类配置完全相同的成员端口才能够成为选中端口。
配置项 |
内容 |
端口隔离 |
端口是否加入隔离组、端口所属的端口隔离组 |
VLAN配置 |
端口上允许通过的VLAN、端口缺省VLAN、VLAN报文是否带Tag配置 |
链路聚合分为静态聚合和动态聚合两种模式,处于静态聚合模式下的聚合组称为静态聚合组,处于动态聚合模式下的聚合组称为动态聚合组。
静态聚合和动态聚合工作时首先要选取参考端口,之后再确定成员端口的状态。
(1) 选择参考端口
参考端口从本端的成员端口中选出,其操作Key和属性类配置将作为同一聚合组内的其他成员端口的参照,只有操作Key和属性类配置与参考端口一致的成员端口才能被选中。
对于聚合组内处于up状态的端口,按照端口的高端口优先级->全双工/高速率->全双工/低速率->半双工/高速率->半双工/低速率的优先次序,选择优先次序最高、且属性类配置与对应聚合接口相同的端口作为参考端口;如果多个端口优先次序相同,首先选择原来的选中端口作为参考端口;如果此时多个优先次序相同的端口都是原来的选中端口,则选择其中端口号最小的端口作为参考端口;如果多个端口优先次序相同,且都不是原来的选中端口,则选择其中端口号最小的端口作为参考端口。
(2) 确定成员端口状态
动态聚合模式通过LACP(Link Aggregation Control Protocol,链路聚合控制协议)协议实现,动态聚合组内的成员端口可以收发LACPDU(Link Aggregation Control Protocol Data Unit,链路聚合控制协议数据单元),本端通过向对端发送LACPDU通告本端的信息。当对端收到该LACPDU后,将其中的信息与所在端其他成员端口收到的信息进行比较,以选择能够处于选中状态的成员端口,使双方可以对各自接口的选中/非选中状态达成一致。
(1) 选择参考端口
参考端口从聚合链路两端处于up状态的成员端口中选出,其操作Key和属性类配置将作为同一聚合组内的其他成员端口的参照,只有操作Key和属性类配置与参考端口一致的成员端口才能被选中。
· 首先,从聚合链路的两端选出设备ID(由系统的LACP优先级和系统的MAC地址共同构成)较小的一端:先比较两端的系统LACP优先级,优先级数值越小其设备ID越小;如果优先级相同再比较其系统MAC地址,MAC地址越小其设备ID越小。
· 其次,对于设备ID较小的一端,再比较其聚合组内各成员端口的端口ID(由端口优先级和端口的编号共同构成):先比较端口优先级,优先级数值越小其端口ID越小;如果优先级相同再比较其端口号,端口号越小其端口ID越小。端口ID最小、且属性类配置与对应聚合接口相同的端口作为参考端口。
(2) 确定成员端口的状态
在设备ID较小的一端,动态聚合组内成员端口状态的确定流程如图1-2所示
与此同时,设备ID较大的一端也会随着对端成员端口状态的变化,随时调整本端各成员端口的状态,以确保聚合链路两端成员端口状态的一致。
静态聚合和动态聚合的优点分别为:
· 静态聚合模式:一旦配置好后,端口的转发流量的状态就不会受网络环境的影响,比较稳定。
· 动态聚合模式:能够根据对端和本端的信息调整端口的转发流量的状态,比较灵活。
VLAN(Virtual Local Area Network,虚拟局域网)技术可以把一个物理LAN划分成多个逻辑的LAN——VLAN,每个VLAN是一个广播域。处于同一VLAN的主机能够直接互通,而处于不同VLAN的主机不能够直接互通。
VLAN可以基于端口进行划分。它按照设备端口来定义VLAN成员,将指定端口加入到指定VLAN中之后,端口就可以转发该VLAN的报文。
在某VLAN内,可根据需要配置端口加入Untagged端口列表或Tagged端口列表(即配置端口为Untagged端口或Tagged端口),从Untagged端口发出的该VLAN报文不带VLAN Tag,从Tagged端口发出的该VLAN报文带VLAN Tag。
端口的链路类型分为三种。在端口加入某VLAN时,对不同链路类型的端口加入的端口列表要求不同:
· Access:端口只能发送一个VLAN的报文,发出去的报文不带VLAN Tag。该端口只能加入一个VLAN的Untagged端口列表。
· Trunk:端口能发送多个VLAN的报文,发出去的端口缺省VLAN的报文不带VLAN Tag,其他VLAN的报文都必须带VLAN Tag。在端口缺省VLAN中,该端口只能加入Untagged端口列表;在其他VLAN中,该端口只能加入Tagged端口列表。
· Hybrid:端口能发送多个VLAN的报文,端口发出去的报文可根据需要配置某些VLAN的报文带VLAN Tag,某些VLAN的报文不带VLAN Tag。在不同VLAN中,该端口可以根据需要加入Untagged端口列表或Tagged端口列表。
不同VLAN间的主机不能直接通信,通过设备上的VLAN接口,可以实现VLAN间的三层互通。VLAN接口是一种三层的虚拟接口,它不作为物理实体存在于设备上。每个VLAN对应一个VLAN接口,VLAN接口的IP地址可作为本VLAN内网络设备的网关地址,对需要跨网段的报文进行基于IP地址的三层转发。
MAC(Media Access Control,媒体访问控制)地址表记录了MAC地址与接口的对应关系,以及接口所属的VLAN等信息。设备在转发报文时,根据报文的目的MAC地址查询MAC地址表,如果MAC地址表中包含与报文目的MAC地址对应的表项,则直接通过该表项中的出接口转发该报文;如果MAC地址表中没有包含报文目的MAC地址对应的表项时,设备将采取广播的方式通过对应VLAN内除接收接口外的所有接口转发该报文。
MAC地址表项分为以下几种:
· 动态MAC地址表项:可以由用户手工配置,也可以由设备通过源MAC地址学习自动生成,用于目的是某个MAC地址的报文从对应接口转发出去,表项有老化时间。手工配置的动态MAC地址表项优先级等于自动生成的MAC地址表项。
· 静态MAC地址表项:由用户手工配置,用于目的是某个MAC地址的报文从对应接口转发出去,表项不老化。静态MAC地址表项优先级高于自动生成的MAC地址表项。
· 黑洞MAC地址表项:由用户手工配置,用于丢弃源MAC地址或目的MAC地址为指定MAC地址的报文(例如,出于安全考虑,可以禁止某个用户发送和接收报文),表项不老化。
MAC地址表中自动生成的表项并非永远有效,每一条表项都有一个生存周期,这个生存周期被称作老化时间。配置动态MAC地址表项的老化时间后,超过老化时间的动态MAC地址表项会被自动删除,设备将重新进行MAC地址学习,构建新的动态MAC地址表项。如果在到达生存周期前某表项被刷新,则重新计算该表项的老化时间。
用户配置的老化时间过长或者过短,都可能影响设备的运行性能:
· 如果用户配置的老化时间过长,设备可能会保存许多过时的MAC地址表项,从而耗尽MAC地址表资源,导致设备无法根据网络的变化更新MAC地址表。
· 如果用户配置的老化时间太短,设备可能会删除有效的MAC地址表项,导致设备广播大量的数据报文,增加网络的负担。
用户需要根据实际情况,配置合适的老化时间。如果网络比较稳定,可以将老化时间配置得长一些或者配置为不老化;否则,可以将老化时间配置得短一些。比如在一个比较稳定的网络,如果长时间没有流量,动态MAC地址表项会被全部删除,可能导致设备突然广播大量的数据报文,造成安全隐患,此时可将动态MAC地址表项的老化时间设得长一些或不老化,以减少广播,增加网络稳定性和安全性。动态MAC地址表项的老化时间作用于全部接口上。
缺省情况下,MAC地址学习功能处于开启状态。有时为了保证设备的安全,需要关闭MAC地址学习功能。常见的危及设备安全的情况是:非法用户使用大量源MAC地址不同的报文攻击设备,导致设备MAC地址表资源耗尽,造成设备无法根据网络的变化更新MAC地址表。关闭MAC地址学习功能可以有效防止这种攻击。在开启全局的MAC地址学习功能的前提下,用户可以关闭单个接口的MAC地址的学习功能。
如果MAC地址表过于庞大,可能导致设备的转发性能下降。通过配置接口的MAC地址数学习上限,用户可以控制设备维护的MAC地址表的表项数量。当接口学习到的MAC地址数达到上限时,该接口将不再对MAC地址进行学习,同时,用户还可以根据需要选择是否允许系统转发源MAC不在MAC地址表里的报文。
生成树协议运行于二层网络中,通过阻塞冗余链路构建出无数据环路的树型网络拓扑,并在设备或数据链路故障时,重新计算出新的树型拓扑。
生成树协议包括STP、RSTP、PVST和MSTP。
· STP:由IEEE制定的802.1D标准定义,是狭义的生成树协议。
· RSTP:由IEEE制定的802.1w标准定义,它在STP基础上进行了改进,实现了网络拓扑的快速收敛。其“快速”体现在,当一个端口被选为根端口和指定端口后,其进入转发状态的延时将大大缩短,从而缩短了网络最终达到拓扑稳定所需要的时间。
· PVST:PVST为每个VLAN维护一个单独的生成树实例。每个VLAN都将运行单个生成树,允许以每个VLAN为基础开启或关闭生成树。每个VLAN内的生成树实例都有单独的网络拓扑结构,相互之间没有影响。
· MSTP:由IEEE制定的802.1s标准定义,它可以弥补STP和RSTP的缺陷,既可以快速收敛,也能使不同VLAN的流量沿各自的路径转发,从而为冗余链路提供了更好的负载分担机制。
生成树的工作模式有以下几种:
· STP模式:设备的所有端口都将向外发送STP BPDU。如果端口的对端设备只支持STP,可选择此模式。
· RSTP模式:设备的所有端口都向外发送RSTP BPDU。当端口收到对端设备发来的STP BPDU时,会自动迁移到STP模式;如果收到的是MSTP BPDU,则不会进行迁移。
· PVST模式:对于Access端口,PVST将根据该VLAN的状态发送RSTP格式的BPDU。对于Trunk端口和Hybrid端口,PVST将在缺省VLAN内根据该VLAN的状态发送RSTP格式的BPDU,而对于其他本端口允许通过的VLAN,则发送PVST格式的BPDU。
· MSTP模式:设备的所有端口都向外发送MSTP BPDU。当端口收到对端设备发来的STP BPDU时,会自动迁移到STP模式;如果收到的是RSTP BPDU,则不会进行迁移。
MSTP把一个交换网络划分成多个域,这些域称为MST(Multiple Spanning Tree Regions,多生成树域)域。每个域内形成多棵生成树,各生成树之间彼此独立并分别与相应的VLAN对应,每棵生成树都称为一个MSTI(Multiple Spanning Tree Instance,多生成树实例)。CST(Common Spanning Tree,公共生成树)是一棵连接交换网络中所有MST域的单生成树。IST(Internal Spanning Tree,内部生成树)是MST域内的一棵生成树,它是一个特殊的MSTI,通常也称为MSTI 0,所有VLAN缺省都映射到MSTI 0上。CIST(Common and Internal Spanning Tree,公共和内部生成树)是一棵连接交换网络内所有设备的单生成树,所有MST域的IST再加上CST就共同构成了整个交换网络的一棵完整的单生成树。
其中,对于属于同一MST域的设备具有下列特点:
· 都使能了生成树协议。
· 域名相同。
· VLAN与MSTI间映射关系的配置相同。
· MSTP修订级别的配置相同。
· 这些设备之间有物理链路连通。
生成树可能涉及到的端口角色有以下几种:
· 根端口(Root Port):在非根桥上负责向根桥方向转发数据的端口就称为根端口,根桥上没有根端口。
· 指定端口(Designated Port):负责向下游网段或设备转发数据的端口就称为指定端口。
· 替换端口(Alternate Port):是根端口或主端口的备份端口。当根端口或主端口被阻塞后,替换端口将成为新的根端口或主端口。
· 备份端口(Backup Port):是指定端口的备份端口。当指定端口失效后,备份端口将转换为新的指定端口。当使能了生成树协议的同一台设备上的两个端口互相连接而形成环路时,设备会将其中一个端口阻塞,该端口就是备份端口。
· 主端口(Master Port):是将MST域连接到总根的端口(主端口不一定在域根上),位于整个域到总根的最短路径上。主端口是MST域中的报文去往总根的必经之路。主端口在IST/CIST上的角色是根端口,而在其他MSTI上的角色则是主端口。
STP只涉及根端口、指定端口和替换端口三种端口角色,RSTP的端口角色中新增了备份端口,MSTP涉及所有的端口角色。
RSTP和MSTP中的端口状态可分为三种,如表1-2所示。
表1-2 RSTP和MSTP中的端口状态
状态 |
描述 |
Forwarding |
该状态下的端口可以接收和发送BPDU,也转发用户流量 |
Learning |
是一种过渡状态,该状态下的端口可以接收和发送BPDU,但不转发用户流量 |
Discarding |
该状态下的端口可以接收和发送BPDU,但不转发用户流量 |
STP定义了五种端口状态:Disabled、Blocking、Listening、Learning和Forwarding。其中Disabled、Blocking和Listening状态都对应RSTP/MSTP中的Discarding状态。
实现了对路由表的查看,包括路由表的概要信息和统计信息。
静态路由是一种特殊的路由,由管理员手工配置。当网络结构比较简单时,只需配置静态路由就可以使网络正常工作。静态路由不能自动适应网络拓扑结构的变化,当网络发生故障或者拓扑发生变化后,必须由管理员手工修改配置。
缺省路由是在没有找到匹配的路由表项时使用的路由。配置IPv4缺省路由时,指定目的地址为0.0.0.0/0;配置IPv6缺省路由时,指定目的地址为::/0。
IP地址是每个连接到IPv4网络上的设备的唯一标识。IP地址长度为32比特,通常采用点分十进制方式表示,即每个IP地址被表示为以小数点隔开的4个十进制整数,每个整数对应一个字节,如10.1.1.1。
IP地址由两部分组成:
· 网络号码字段(Net-id):用于区分不同的网络。网络号码字段的前几位称为类别字段(又称为类别比特),用来区分IP地址的类型。
· 主机号码字段(Host-id):用于区分一个网络内的不同主机。
IP地址分为5类,每一类地址范围如表1-3所示。目前大量使用的IP地址属于A、B、C三类。
表1-3 IP地址分类
地址类型 |
地址范围 |
说明 |
A |
0.0.0.0~127.255.255.255 |
IP地址0.0.0.0仅用于主机在系统启动时进行临时通信,并且永远不是有效目的地址 127.0.0.0网段的地址都保留作环回测试,发送到这个地址的分组不会输出到链路上,它们被当作输入分组在内部进行处理 |
B |
128.0.0.0~191.255.255.255 |
- |
C |
192.0.0.0~223.255.255.255 |
- |
D |
224.0.0.0~239.255.255.255 |
组播地址 |
E |
240.0.0.0~255.255.255.255 |
255.255.255.255用于广播地址,其它地址保留今后使用 |
随着Internet的快速发展,IP地址已近枯竭。为了充分利用已有的IP地址,可以使用子网掩码将网络划分为更小的部分(即子网)。通过从主机号码字段部分划出一些比特位作为子网号码字段,能够将一个网络划分为多个子网。子网号码字段的长度由子网掩码确定。
子网掩码是一个长度为32比特的数字,由一串连续的“1”和一串连续的“0”组成。“1”对应于网络号码字段和子网号码字段,而“0”对应于主机号码字段。
多划分出一个子网号码字段会浪费一些IP地址。例如,一个B类地址可以容纳65534(216-2,去掉主机号码字段全1的广播地址和主机号码字段全0的网段地址)个主机号码。但划分出9比特长的子网字段后,最多可有512(29)个子网,每个子网有7比特的主机号码,即每个子网最多可有126(27-2,去掉主机号码字段全1的广播地址和主机号码字段全0的网段地址)个主机号码。因此主机号码的总数是512*126=64512个,比不划分子网时要少1022个。
若不进行子网划分,则子网掩码为默认值,此时子网掩码中“1”的长度就是网络号码的长度,即A、B、C类IP地址对应的子网掩码默认值分别为255.0.0.0、255.255.0.0和255.255.255.0。
接口获取IP地址有以下几种方式:
· 通过手动指定IP地址
· 通过DHCP分配得到IP地址
当设备收到一个报文后,如果发现报文长度比转发接口的MTU值大,则进行下列处理:
· 如果报文不允许分片,则将报文丢弃;
· 如果报文允许分片,则将报文进行分片转发。
为了减轻转发设备在传输过程中的分片和重组数据包的压力,更高效的利用网络资源,请根据实际组网环境设置合适的接口MTU值,以减少分片的发生。
IPv6(Internet Protocol Version 6,互联网协议版本6)是网络层协议的第二代标准协议,也被称为IPng(IP Next Generation,下一代互联网协议),它是IETF(Internet Engineering Task Force,互联网工程任务组)设计的一套规范,是IPv4的升级版本。IPv6和IPv4之间最显著的区别为:地址的长度从32比特增加到128比特。
IPv6地址被表示为以冒号(:)分隔的一连串16比特的十六进制数。每个IPv6地址被分为8组,每组的16比特用4个十六进制数来表示,组和组之间用冒号隔开,比如:2001:0000:130F:0000:0000:09C0:876A:130B。
为了简化IPv6地址的表示,对于IPv6地址中的“0”可以有下面的处理方式:
· 每组中的前导“0”可以省略,即上述地址可写为2001:0:130F:0:0:9C0:876A:130B。
· 如果地址中包含一组或连续多组均为0的组,则可以用双冒号“::”来代替,即上述地址可写为2001:0:130F::9C0:876A:130B。
IPv6地址由两部分组成:地址前缀与接口标识。其中,地址前缀相当于IPv4地址中的网络号码字段部分,接口标识相当于IPv4地址中的主机号码部分。
地址前缀的表示方式为:IPv6地址/前缀长度。其中,前缀长度是一个十进制数,表示IPv6地址最左边多少位为地址前缀。
IPv6主要有三种类型的地址:单播地址、组播地址和任播地址。
· 单播地址:用来唯一标识一个接口,类似于IPv4的单播地址。发送到单播地址的数据报文将被传送给此地址所标识的接口。
· 组播地址:用来标识一组接口(通常这组接口属于不同的节点),类似于IPv4的组播地址。发送到组播地址的数据报文被传送给此地址所标识的所有接口。
· 任播地址:用来标识一组接口(通常这组接口属于不同的节点)。发送到任播地址的数据报文被传送给此地址所标识的一组接口中距离源节点最近(根据使用的路由协议进行度量)的一个接口。
IPv6中没有广播地址,广播地址的功能通过组播地址来实现。
IPv6地址类型是由地址前面几位(称为格式前缀)来指定的,主要地址类型与格式前缀的对应关系如表1-4所示。
表1-4 IPv6地址类型与格式前缀的对应关系
地址类型 |
格式前缀(二进制) |
IPv6前缀标识 |
简介 |
|
单播地址 |
未指定地址 |
00...0 (128 bits) |
::/128 |
不能分配给任何节点。在节点获得有效的IPv6地址之前,可在发送的IPv6报文的源地址字段填入该地址,但不能作为IPv6报文中的目的地址 |
环回地址 |
00...1 (128 bits) |
::1/128 |
不能分配给任何物理接口。它的作用与在IPv4中的环回地址相同,即节点用来给自己发送IPv6报文 |
|
链路本地地址 |
1111111010 |
FE80::/10 |
用于邻居发现协议和无状态自动配置中链路本地上节点之间的通信。使用链路本地地址作为源或目的地址的数据报文不会被转发到其他链路上 |
|
全球单播地址 |
其他形式 |
- |
等同于IPv4公网地址,提供给网络服务提供商。这种类型的地址允许路由前缀的聚合,从而限制了全球路由表项的数量 |
|
组播地址 |
11111111 |
FF00::/8 |
- |
|
任播地址 |
从单播地址空间中进行分配,使用单播地址的格式 |
- |
IPv6单播地址中的接口标识符用来唯一标识链路上的一个接口。目前IPv6单播地址基本上都要求接口标识符为64位。
不同接口的IEEE EUI-64格式的接口标识符的生成方法不同,分别介绍如下:
· 所有IEEE 802接口类型(例如,以太网接口、VLAN接口):IEEE EUI-64格式的接口标识符是从接口的链路层地址(MAC地址)变化而来的。IPv6地址中的接口标识符是64位,而MAC地址是48位,因此需要在MAC地址的中间位置(从高位开始的第24位后)插入十六进制数FFFE(1111111111111110)。为了使接口标识符的作用范围与原MAC地址一致,还要将Universal/Local (U/L)位(从高位开始的第7位)进行取反操作。最后得到的这组数就作为EUI-64格式的接口标识符。
· Tunnel接口:IEEE EUI-64格式的接口标识符的低32位为Tunnel接口的源IPv4地址,ISATAP隧道的接口标识符的高32位为0000:5EFE,其他隧道的接口标识符的高32位为全0。
· 其他接口类型:IEEE EUI-64格式的接口标识符由设备随机生成。
IPv6全球单播地址可以通过下面几种方式配置:
· 采用EUI-64格式形成:当配置采用EUI-64格式形成IPv6地址时,接口的IPv6地址的前缀需要手工配置,而接口标识符则由接口自动生成。
· 手工配置:用户手工配置IPv6全球单播地址。
· 无状态自动配置:根据接收到的RA报文中携带的地址前缀信息及使用EUI-64功能生成的接口标识,自动为接口生成IPv6全球单播地址。
· 有状态获取地址:通过DHCPv6服务器自动获取IPv6地址。
一个接口上可以配置多个全球单播地址。
IPv6的链路本地地址可以通过两种方式获得:
· 自动生成:设备根据链路本地地址前缀(FE80::/10)及使用EUI-64功能生成的接口标识,自动为接口生成链路本地地址。
· 手工指定:用户手工配置IPv6链路本地地址。
每个接口只能有一个链路本地地址,为了避免链路本地地址冲突,推荐使用链路本地地址的自动生成方式。
配置链路本地地址时,手工指定方式的优先级高于自动生成方式。即如果先采用自动生成方式,之后手工指定,则手工指定的地址会覆盖自动生成的地址;如果先手工指定,之后采用自动生成的方式,则自动配置不生效,接口的链路本地地址仍是手工指定的。此时,如果删除手工指定的地址,则自动生成的链路本地地址会生效。
NAT(Network Address Translation,网络地址转换)是将IP数据报文头中的IP地址转换为另一个IP地址的过程。在实际应用中,NAT主要应用在连接两个网络的边缘设备上,用于实现允许内部网络用户访问外部公共网络以及允许外部公共网络访问部分内部网络资源(例如内部服务器)的目的。NAT最初的设计目的是实现私有网络访问公共网络的功能,后扩展为实现任意两个网络间进行访问时的地址转换应用。
静态地址转换是指外部网络和内部网络之间的地址映射关系由配置确定,该方式适用于内部网络与外部网络之间存在固定访问需求的组网环境。静态地址转换支持双向互访:内网用户可以主动访问外网,外网用户也可以主动访问内网。
动态地址转换是指内部网络和外部网络之间的地址映射关系在建立连接的时候动态产生。该方式通常适用于内部网络有大量用户需要访问外部网络的组网环境。动态地址转换存在两种转换模式:
· NO-PAT模式
NO-PAT(Not Port Address Translation)模式下,一个外网地址同一时间只能分配给一个内网地址进行地址转换,不能同时被多个内网地址共用。当使用某外网地址的内网用户停止访问外网时,NAT会将其占用的外网地址释放并分配给其他内网用户使用。
该模式下,NAT设备只对报文的IP地址进行NAT转换,同时会建立一个NO-PAT表项用于记录IP地址映射关系,并可支持所有IP协议的报文。
· PAT模式
PAT(Port Address Translation)模式下,一个NAT地址可以同时分配给多个内网地址共用。该模式下,NAT设备需要对报文的IP地址和传输层端口同时进行转换,且只支持TCP、UDP和ICMP(Internet Control Message Protocol,因特网控制消息协议)查询报文。
采用PAT方式可以更加充分地利用IP地址资源,实现更多内部网络主机对外部网络的同时访问。
在实际应用中,内网中的服务器可能需要对外部网络提供一些服务,例如给外部网络提供Web服务,或是FTP服务。这种情况下,NAT设备允许外网用户通过指定的NAT地址和端口访问这些内部服务器,NAT内部服务器的配置就定义了NAT地址和端口与内网服务器地址和端口的映射关系。NAT内部服务器支持以下几种内网和外网的地址、端口映射关系。
表1-5 NAT内部服务器的地址与端口映射关系
内网 |
|
一个外网地址 |
一个内网地址 |
一个外网地址、一个端口号 |
一个内网地址、一个内网端口号 |
一个外网地址,N个连续的外网端口号 |
一个内网地址,一个内网端口 |
N个连续的内网地址,一个内网端口号 |
|
一个内网地址,N个连续的内网端口号 |
|
N个连续的外网地址 |
一个内网地址 |
N个连续的内网地址 |
|
N个连续的外网地址连续,一个外网端口号 |
一个内网地址,一个内网端口号 |
N个连续的内网地址,一个内网端口号 |
|
一个内网地址,N个连续的内网端口号 |
|
一个外网地址,一个外网端口号 |
一个内部服务器组 |
一个外网地址,N个连续的外网端口号 |
|
N个连续的外网地址,一个外网端口号 |
NAT444是运营商网络部署NAT的整体解决方案,它基于NAT444网关,结合AAA服务器、日志服务器等配套系统,提供运营商级的NAT,并支持用户溯源等功能。在众多IPv4向IPv6网络过渡的技术中,NAT444仅需在运营商侧引入二次NAT,对终端和应用服务器端的更改较小,并且NAT444通过端口块分配方式解决用户溯源等问题,因此成为了运营商的首选IPv6过渡方案。
NAT444解决方案的架构如图1-3所示。
图1-3 NAT444解决方案架构
· CPE:实现用户侧地址转换。
· BRAS:负责接入终端,并配合AAA完成用户认证、授权和计费。
· NAT444网关:实现运营商级地址转换。
· AAA服务器:负责用户认证、授权和计费等。
· 日志服务器:接受和记录用户访问信息,响应用户访问信息查询。
NAT444网关设备进行的地址转换(以下称为“NAT444地址转换”)是一种PAT方式的动态地址转换,但与普通PAT方式动态地址转换不同的是,NAT444地址转换是基于端口块(即一个端口范围)的方式来复用公网IP地址的,即一个私网IP地址在一个时间段内独占一个公网IP地址的某个端口块。例如:假设私网IP地址10.1.1.1独占公网IP地址202.1.1.1的一个端口块10001~10256,则该私网IP向公网发起的所有连接,源IP地址都将被转换为同一个公网IP地址202.1.1.1,而源端口将被转换为端口块10001~10256之内的一个端口。
NAT444静态地址转换是指,NAT网关设备根据配置自动计算私网IP地址到公网IP地址、端口块的静态映射关系,并创建静态端口块表项。当私网IP地址成员中的某个私网IP地址向公网发起新建连接时,根据私网IP地址匹配静态端口块表项,获取对应的公网IP地址和端口块,并从端口块中动态为其分配一个公网端口,对报文进行地址转换。
配置NAT444静态地址转换时,需要创建一个端口块组,并在端口块组中配置私网IP地址成员、公网IP地址成员、端口范围和端口块大小。假设端口块组中每个公网IP地址的可用端口块数为m(即端口范围除以端口块大小),则端口块静态映射的算法如下:按照从小到大的顺序对私网IP地址成员中的所有IP地址进行排列,最小的m个私网IP地址对应最小的公网IP地址及其端口块,端口块按照起始端口号从小到大的顺序分配;次小的m个私网IP地址对应次小的公网IP地址及其端口块,端口块的分配顺序相同;依次类推。
NAT444动态地址转换融合了普通NAT动态地址转换和NAT444静态地址转换的特点。当内网用户向公网发起连接时,首先根据动态地址转换中的ACL规则进行过滤,决定是否需要进行源地址转换。对于需要进行源地址转换的连接,当该连接为该用户的首次连接时,从所匹配的动态地址转换配置引用的NAT地址组中获取一个公网IP地址,从该公网IP地址中动态分配一个端口块,创建动态端口块表项,然后从端口块表项中动态分配一个公网端口,进行地址转换。对该用户后续连接的转换,均从生成的动态端口块表项中分配公网端口。当该用户的所有连接都断开时,回收为其分配的端口块资源,删除相应的动态端口块表项。
NAT444动态地址转换支持增量端口块分配。当为某私网IP地址分配的端口块资源耗尽(端口块中的所有端口都被使用)时,如果该私网IP地址向公网发起新的连接,则无法再从端口块中获取端口,无法进行地址转换。此时,如果预先在相应的NAT地址组中配置了增量端口块数,则可以为该私网IP地址分配额外的端口块,进行地址转换。
一个NAT地址组是多个地址组成员的集合。当需要对到达外部网络的数据报文进行地址转换时,报文的源地址将被转换为地址组成员中的某个地址。
NAT444地址组与NAT地址组的配置基本相同,所不同的是,NAT444地址组必须配置端口块参数(端口范围、端口块大小和增量端口块数)以实现基于端口块的NAT444地址转换。
配置NAT444端口块静态映射需要创建一个端口块组,并在接口的出方向上应用该端口块组。端口块组中需要配置私网IP地址成员、公网IP地址成员、端口范围和端口块大小,系统会根据端口块组中的配置自动计算私网IP地址到公网IP地址、端口块的静态映射关系,创建静态端口块表项,并根据表项进行NAT444地址转换。
在配置内部服务器时,将内部服务器的内网信息指定为一个内部服务器组,组内的多台主机可以共同对外提供某种服务。外网用户向内部服务器指定的外网地址发起应用请求时,NAT设备可根据内网服务器的权重和当前连接数,选择其中一台内网服务器作为目的服务器,实现内网服务器负载分担。
目前,PAT支持两种不同的地址转换模式:
· Endpoint-Independent Mapping(不关心对端地址和端口转换模式):只要是来自相同源地址和源端口号的报文,不论其目的地址是否相同,通过PAT映射后,其源地址和源端口号都被转换为同一个外部地址和端口号,该映射关系会被记录下来并生成一个EIM表项;并且NAT设备允许所有外部网络的主机通过该转换后的地址和端口来访问这些内部网络的主机。这种模式可以很好的支持位于不同NAT网关之后的主机进行互访。
· Address and Port-Dependent Mapping(关心对端地址和端口转换模式):对于来自相同源地址和源端口号的报文,相同的源地址和源端口号并不要求被转换为相同的外部地址和端口号,若其目的地址或目的端口号不同,通过PAT映射后,相同的源地址和源端口号通常会被转换成不同的外部地址和端口号。与Endpoint-Independent Mapping模式不同的是,NAT设备只允许这些目的地址对应的外部网络的主机可以通过该转换后的地址和端口来访问这些内部网络的主机。这种模式安全性好,但由于同一个内网主机地址转换后的外部地址不唯一,因此不便于位于不同NAT网关之后的主机使用内网主机转换后的地址进行互访。
通过配置DNS映射,可以在DNS服务器位于外网的情况下,实现内网用户可通过域名访问位于同一内网的内部服务器的功能。DNS映射功能需要和内部服务器配合使用,由内部服务器对外提供服务的外网IP地址和端口号,由DNS映射建立“内部服务器域名<-->外网IP地址+外网端口号+协议类型”的映射关系。
NAT设备对来自外网的DNS响应报文进行DNS ALG处理时,由于载荷中只包含域名和应用服务器的外网IP地址(不包含传输协议类型和端口号),当接口上存在多条NAT服务器配置且使用相同的外网地址而内网地址不同时,DNS ALG仅使用IP地址来匹配内部服务器可能会得到错误的匹配结果。因此需要借助DNS映射的配置,指定域名与应用服务器的外网IP地址、端口和协议的映射关系,由域名获取应用服务器的外网IP地址、端口和协议,进而(在当前NAT接口上)精确匹配内部服务器配置获取应用服务器的内网IP地址。
通过在内网侧接口上使能NAT hairpin功能,可以实现内网用户使用NAT地址访问内网服务器或内网其它用户。NAT hairpin功能需要与内部服务器、出方向动态地址转换或出方向静态地址转换配合工作,且这些配置所在的接口必须在同一个接口板,否则NAT hairpin功能无法正常工作。
该功能在不同工作方式下的具体转换过程如下:
· C/S方式:NAT在内网接口上同时转换访问内网服务器的报文的源和目的IP地址,其中,目的IP地址转换通过匹配某外网接口上的内部服务器配置来完成,源地址转换通过匹配内部服务器所在接口上的出方向动态地址转换或出方向静态地址转换来完成。
· P2P方式:内网各主机首先向外网服务器注册自己的内网地址信息,该地址信息为外网侧出方向地址转换的NAT地址,然后内网主机之间通过使用彼此向外网服务器注册的外网地址进行互访。该方式下,外网侧的出方向地址转换必须配置为PAT转换方式,并使能EIM模式。
通过开启指定应用协议类型的ALG功能,实现对应用层报文数据载荷字段的分析和NAT处理。
(1) NAT会话日志
NAT会话日志是为了满足网络管理员安全审计的需要,对NAT会话(报文经过设备时,源或目的信息被NAT进行过转换的连接)信息进行的记录,包括IP地址及端口的转换信息、用户的访问信息以及用户的网络流量信息。
有三种情况可以触发设备生成NAT会话日志:
· 新建NAT会话。
· 删除NAT会话。新增高优先级的配置、删除配置、报文匹配规则变更、NAT会话老化以及执行删除NAT会话的命令时,都可能导致NAT会话被删除。
· 存在NAT活跃流。NAT活跃流是指在一定时间内存在的NAT会话。当设置的生成活跃流日志的时间间隔到达时,当前存在的NAT会话信息就被记录并生成日志。
(2) NAT444日志
NAT444日志分为NAT444用户日志和NAT444告警信息日志。
NAT444用户日志是为了满足互联网用户溯源的需要,在NAT444地址转换中,对每个用户的私网IP地址进行端口块分配或回收时,都会输出一条基于用户的日志,记录私网IP地址和端口块的映射关系。在进行用户溯源时,只需根据报文的公网IP地址和端口找到对应的端口块分配日志信息,即可确定私网IP地址。
有两种情况可以触发设备输出NAT444用户日志:
· 端口块分配:端口块静态映射方式下,在某私网IP地址的第一个新建连接通过端口块进行地址转换时输出日志;端口块动态映射方式下,在为某私网IP地址分配端口块或增量端口块时输出日志。
· 端口块回收:端口块静态映射方式下,在某私网IP地址的最后一个连接拆除时输出日志;端口块动态映射方式下,在释放端口块资源(并删除端口块表项)时输出日志。
在NAT444地址转换中,如果可为用户分配的公网IP地址、端口块或端口块中的端口都被占用,则该用户的后续连接由于没有可用的资源无法对其进行地址转换,相应的报文将被丢弃。为了监控公网IP地址和端口块资源的使用情况,可以对端口用满和资源用满两种情况记录告警信息日志。
· 端口用满告警:在私网IP地址对应的端口块中的所有端口都被占用的情况下,输出告警信息日志。对于端口块动态映射方式,如果配置了增量端口块分配,则当首次分配的端口块中的端口都被占用时,并不输出日志;只有当增量端口块中的端口也都被占用时,才会输出日志。
· 资源用满告警:在NAT444端口块动态映射中,如果所有资源(公网IP地址、端口块)都被占用,则输出日志。
· 入方向的静态地址转换通常用于与接口上的出方向动态地址转换、内部服务器或出方向静态地址转换配合以实现双向NAT,不建议单独配置。
· 若接口上同时存在普通NAT静态地址转换、普通NAT动态地址转换、NAT444端口块静态映射、NAT444端口块动态映射和内部服务器的配置,则在地址转换过程中,它们的优先级从高到低依次为:内部服务器;普通NAT静态地址转换;NAT444端口块静态映射;NAT444动态转换和普通NAT动态地址转换,系统对二者不做区分,统一按照ACL编号由大到小的顺序匹配。
· 各地址组成员的IP地址段不能互相重叠。
· 配置的所有地址组成员包含的地址总数不能少于安全引擎(或安全插卡)的数量。
· 内部服务器组成员按照权重比例对外提供服务,权重值越大的内部服务器组成员对外提供服务的比重越大。
· 在配置NAT444日志功能前,必须先配置将用户定制日志发送到日志主机的功能,否则无法产生NAT444告警信息日志。
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)用来为网络设备动态地分配IP地址等网络配置参数。
DHCP采用客户端/服务器通信模式,由客户端向服务器提出请求分配网络配置参数的申请,服务器返回为客户端分配的IP地址等配置信息,以实现IP地址等信息的动态配置。
在DHCP的典型应用中,一般包含一台DHCP服务器和多台客户端(如PC和便携机)。如果DHCP客户端和DHCP服务器处于不同物理网段时,客户端可以通过DHCP中继与服务器通信,获取IP地址及其他配置信息。
在以下场合通常利用DHCP服务器来完成IP地址分配:
· 网络规模较大,手工配置需要很大的工作量,并难以对整个网络进行集中管理。
· 网络中主机数目大于该网络支持的IP地址数量,无法给每个主机分配一个固定的IP地址。例如,Internet接入服务提供商限制同时接入网络的用户数目,用户必须动态获得自己的IP地址。
· 网络中只有少数主机需要固定的IP地址,大多数主机没有固定的IP地址需求。
DHCP服务器通过地址池来保存为客户端分配的IP地址、租约时长、网关信息、域名后缀、DNS服务器地址、WINS服务器地址、NetBIOS节点类型和DHCP选项信息。服务器接收到客户端发送的请求后,选择合适的地址池,并将该地址池中的信息分配给客户端。
DHCP服务器在将IP地址分配给客户端之前,还需要进行IP地址冲突检测。
地址池的地址管理方式有以下几种:
· 静态绑定IP地址,即通过将客户端的硬件地址或客户端ID与IP地址绑定的方式,实现为特定的客户端分配特定的IP地址。
· 动态选择IP地址,即在地址池中指定可供分配的IP地址范围,当收到客户端的IP地址申请时,从该地址范围中动态选择IP地址,分配给该客户端。
在DHCP地址池中还可以指定这两种类型地址的租约时长。
DHCP服务器为客户端分配IP地址时,地址池的选择原则如下:
(1) 如果存在将客户端MAC地址或客户端ID与IP地址静态绑定的地址池,则选择该地址池,并将静态绑定的IP地址和其他网络参数分配给客户端。
(2) 如果不存在静态绑定的地址池,则按照以下方法选择地址池:
· 如果客户端与服务器在同一网段,则将DHCP请求报文接收接口的IP地址与所有地址池配置的网段进行匹配,并选择最长匹配的网段所对应的地址池。
· 如果客户端与服务器不在同一网段,即客户端通过DHCP中继获取IP地址,则将DHCP请求报文中giaddr字段指定的IP地址与所有地址池配置的网段进行匹配,并选择最长匹配的网段所对应的地址池。
DHCP服务器为客户端分配IP地址的优先次序如下:
(1) 与客户端MAC地址或客户端ID静态绑定的IP地址。
(2) DHCP服务器记录的曾经分配给客户端的IP地址。
(3) 客户端发送的DHCP-DISCOVER报文中Option 50字段指定的IP地址。Option 50为客户端请求的IP地址选项(Requested IP Address),客户端通过在DHCP-DISCOVER报文中添加该选项来指明客户端希望获取的IP地址。该选项的内容由客户端决定。
(4) 按照动态分配地址选择原则,顺序查找可供分配的IP地址,选择最先找到的IP地址。
(5) 如果未找到可用的IP地址,则从当前匹配地址池中依次查询租约过期、曾经发生过冲突的IP地址,如果找到则进行分配,否则将不予处理。
DHCP利用选项字段传递控制信息和网络配置参数,实现地址动态分配的同时,为客户端提供更加丰富的网络配置信息。
Web页面为DHCP服务器提供了灵活的选项配置方式,在以下情况下,可以使用Web页面DHCP选项功能:
· 随着DHCP的不断发展,新的DHCP选项会陆续出现。通过该功能,可以方便地添加新的DHCP选项。
· 有些选项的内容,RFC中没有统一规定。厂商可以根据需要定义选项的内容,如Option 43。通过DHCP选项功能,可以为DHCP客户端提供厂商指定的信息。
· Web页面只提供了有限的配置功能,其他功能可以通过DHCP选项来配置。例如,可以通过Option 4,IP地址1.1.1.1来指定为DHCP客户端分配的时间服务器地址为1.1.1.1。
· 扩展已有的DHCP选项。当前已提供的方式无法满足用户需求时(比如通过Web页面最多只能配置8个DNS服务器地址,如果用户需要配置的DNS服务器地址数目大于8,则Web页面无法满足需求),可以通过DHCP选项功能进行扩展。
常用的DHCP选项配置如表1-6所示。
表1-6 常用DHCP选项配置
选项编号 |
选项名称 |
推荐的选项填充类型 |
3 |
Router Option |
IP地址 |
6 |
Domain Name Server Option |
IP地址 |
15 |
Domain Name |
ASCII字符串 |
44 |
NetBIOS over TCP/IP Name Server Option |
IP地址 |
46 |
NetBIOS over TCP/IP Node Type Option |
十六进制数串 |
66 |
TFTP server name |
ASCII字符串 |
67 |
Bootfile name |
ASCII字符串 |
43 |
Vendor Specific Information |
十六进制数串 |
为防止IP地址重复分配导致地址冲突,DHCP服务器为客户端分配地址前,需要先对该地址进行探测。
DHCP服务器的地址探测是通过ping功能实现的,通过检测是否能在指定时间内得到ping响应来判断是否存在地址冲突。DHCP服务器发送目的地址为待分配地址的ICMP回显请求报文。如果在指定时间内收到回显响应报文,则认为存在地址冲突。DHCP服务器从地址池中选择新的IP地址,并重复上述操作。如果在指定时间内没有收到回显响应报文,则继续发送ICMP回显请求报文,直到发送的回显显示报文数目达到最大值。如果仍然没有收到回显响应报文,则将地址分配给客户端,从而确保客户端获得的IP地址唯一。
由于在IP地址动态获取过程中采用广播方式发送请求报文,因此DHCP只适用于DHCP客户端和服务器处于同一个子网内的情况。为进行动态主机配置,需要在所有网段上都设置一个DHCP服务器,这显然是很不经济的。
DHCP中继功能的引入解决了这一难题:客户端可以通过DHCP中继与其他网段的DHCP服务器通信,最终获取到IP地址。这样,多个网络上的DHCP客户端可以使用同一个DHCP服务器,既节省了成本,又便于进行集中管理。
为了防止非法主机静态配置一个IP地址并访问外部网络,设备支持DHCP中继用户地址表项记录功能。
启用该功能后,当客户端通过DHCP中继从DHCP服务器获取到IP地址时,DHCP中继可以自动记录客户端IP地址与硬件地址的绑定关系,生成DHCP中继的用户地址表项。
本功能与其他IP地址安全功能(如ARP地址检查和授权ARP)配合,可以实现只允许匹配用户地址表项中绑定关系的报文通过DHCP中继。从而,保证非法主机不能通过DHCP中继与外部网络通信。
DHCP客户端释放动态获取的IP地址时,会向DHCP服务器单播发送DHCP-RELEASE报文,DHCP中继不会处理该报文的内容。如果此时DHCP中继上记录了该IP地址与MAC地址的绑定关系,则会造成DHCP中继的用户地址表项无法实时刷新。为了解决这个问题,DHCP中继支持动态用户地址表项的定时刷新功能。
DHCP中继动态用户地址表项定时刷新功能开启时,DHCP中继每隔指定时间采用客户端获取到的IP地址和DHCP中继接口的MAC地址向DHCP服务器发送DHCP-REQUEST报文:
· 如果DHCP中继接收到DHCP服务器响应的DHCP-ACK报文或在指定时间内没有接收到DHCP服务器的响应报文,则表明这个IP地址已经可以进行分配,DHCP中继会删除动态用户地址表中对应的表项。为了避免地址浪费,DHCP中继收到DHCP-ACK报文后,会发送DHCP-RELEASE报文释放申请到的IP地址。
· 如果DHCP中继接收到DHCP服务器响应的DHCP-NAK报文,则表示该IP地址的租约仍然存在,DHCP中继不会删除该IP地址对应的表项。
DNS(Domain Name System,域名系统)是一种用于TCP/IP应用程序的分布式数据库,提供域名与地址之间的转换。IPv4 DNS提供域名和IPv4地址之间的转换,IPv6 DNS提供域名和IPv6地址之间的转换。
设备作为DNS客户端,当用户在设备上进行某些应用(如Telnet到一台设备或主机)时,可以直接使用便于记忆的、有意义的域名,通过域名系统将域名解析为正确的地址。
域名解析分为动态域名解析和静态域名解析两种。动态域名解析和静态域名解析可以配合使用。在解析域名时,首先采用静态域名解析(查找静态域名解析表),如果静态域名解析不成功,再采用动态域名解析。由于动态域名解析需要域名服务器的配合,会花费一定的时间,因而可以将一些常用的域名放入静态域名解析表中,这样可以大大提高域名解析效率。
使用动态域名解析时,需要手工指定域名服务器的地址。
动态域名解析通过向域名服务器查询域名和地址之间的对应关系来实现将域名解析为地址。
动态域名解析支持域名后缀列表功能。用户可以预先设置一些域名后缀,在域名解析的时候,用户只需要输入域名的部分字段,系统会自动将输入的域名加上不同的后缀进行解析。例如,用户想查询域名aabbcc.com,那么可以先在后缀列表中配置com,然后输入aabbcc进行查询,系统会自动将输入的域名与后缀连接成aabbcc.com进行查询。
使用域名后缀的时候,根据用户输入域名方式的不同,查询方式分成以下几种情况:
· 如果用户输入的域名中没有“.”,比如aabbcc,系统认为这是一个主机名,会首先加上域名后缀进行查询,如果所有加后缀的域名查询都失败,将使用最初输入的域名(如aabbcc)进行查询。
· 如果用户输入的域名中间有“.”,比如www.aabbcc,系统直接用它进行查询,如果查询失败,再依次加上各个域名后缀进行查询。
· 如果用户输入的域名最后有“.”,比如aabbcc.com.,表示不需要进行域名后缀添加,系统直接用输入的域名进行查询,不论成功与否都直接返回结果。就是说,如果用户输入的字符中最后一个字符为“.”,就只根据用户输入的字符进行查找,而不会去匹配用户预先设置的域名后缀,因此最后这个“.”,也被称为查询终止符。带有查询终止符的域名,称为FQDN(Fully Qualified Domain Name,完全合格域名)。
手工建立域名和地址之间的对应关系。当用户使用域名进行某些应用时,系统查找静态域名解析表,从中获取指定域名对应的地址。
DNS代理(DNS proxy)用来在DNS client和DNS server之间转发DNS请求和应答报文。局域网内的DNS client把DNS proxy当作DNS server,将DNS请求报文发送给DNS proxy。DNS proxy将该请求报文转发到真正的DNS server,并将DNS server的应答报文返回给DNS client,从而实现域名解析。
使用DNS proxy功能后,当DNS server的地址发生变化时,只需改变DNS proxy上的配置,无需改变局域网内每个DNS client的配置,从而简化了网络管理。
DNS(Domain Name System,域名系统)是一种用于TCP/IP应用程序的分布式数据库,提供域名与地址之间的转换。IPv4 DNS提供域名和IPv4地址之间的转换,IPv6 DNS提供域名和IPv6地址之间的转换。
设备作为DNS客户端,当用户在设备上进行某些应用(如Telnet到一台设备或主机)时,可以直接使用便于记忆的、有意义的域名,通过域名系统将域名解析为正确的地址。
域名解析分为动态域名解析和静态域名解析两种。动态域名解析和静态域名解析可以配合使用。在解析域名时,首先采用静态域名解析(查找静态域名解析表),如果静态域名解析不成功,再采用动态域名解析。由于动态域名解析需要域名服务器的配合,会花费一定的时间,因而可以将一些常用的域名放入静态域名解析表中,这样可以大大提高域名解析效率。
使用动态域名解析时,需要手工指定域名服务器的地址。
动态域名解析通过向域名服务器查询域名和地址之间的对应关系来实现将域名解析为地址。
动态域名解析支持域名后缀列表功能。用户可以预先设置一些域名后缀,在域名解析的时候,用户只需要输入域名的部分字段,系统会自动将输入的域名加上不同的后缀进行解析。例如,用户想查询域名aabbcc.com,那么可以先在后缀列表中配置com,然后输入aabbcc进行查询,系统会自动将输入的域名与后缀连接成aabbcc.com进行查询。
使用域名后缀的时候,根据用户输入域名方式的不同,查询方式分成以下几种情况:
· 如果用户输入的域名中没有“.”,比如aabbcc,系统认为这是一个主机名,会首先加上域名后缀进行查询,如果所有加后缀的域名查询都失败,将使用最初输入的域名(如aabbcc)进行查询。
· 如果用户输入的域名中间有“.”,比如www.aabbcc,系统直接用它进行查询,如果查询失败,再依次加上各个域名后缀进行查询。
· 如果用户输入的域名最后有“.”,比如aabbcc.com.,表示不需要进行域名后缀添加,系统直接用输入的域名进行查询,不论成功与否都直接返回结果。就是说,如果用户输入的字符中最后一个字符为“.”,就只根据用户输入的字符进行查找,而不会去匹配用户预先设置的域名后缀,因此最后这个“.”,也被称为查询终止符。带有查询终止符的域名,称为FQDN(Fully Qualified Domain Name,完全合格域名)。
手工建立域名和地址之间的对应关系。当用户使用域名进行某些应用时,系统查找静态域名解析表,从中获取指定域名对应的地址。
DNS代理(DNS proxy)用来在DNS client和DNS server之间转发DNS请求和应答报文。局域网内的DNS client把DNS proxy当作DNS server,将DNS请求报文发送给DNS proxy。DNS proxy将该请求报文转发到真正的DNS server,并将DNS server的应答报文返回给DNS client,从而实现域名解析。
使用DNS proxy功能后,当DNS server的地址发生变化时,只需改变DNS proxy上的配置,无需改变局域网内每个DNS client的配置,从而简化了网络管理。
IGMP snooping(Internet Group Management Protocol snooping,互联网组管理协议窥探)运行在二层设备上,通过侦听三层设备与接收者主机间的IGMP报文建立IGMP snooping转发表,并根据该表指导组播数据的转发。
IGMP snooping转发表的表项由VLAN、组播组地址、组播源地址和成员端口四个元素构成,其中成员端口是指二层设备上朝向组播组成员的端口。
MLD snooping(Multicast Listener Discovery snooping,组播侦听者发现协议窥探)运行在二层设备上,通过侦听三层设备与接收者主机间的MLD报文建立MLD snooping转发表,并根据该表指导IPv6组播数据的转发。
MLD snooping转发表的表项由VLAN、IPv6组播组地址、IPv6组播源地址和成员端口四个元素构成,其中成员端口是指二层设备上朝向IPv6组播组成员的端口。
ARP(Address Resolution Protocol,地址解析协议)是将IP地址解析为以太网MAC地址(或称物理地址)的协议。
设备通过ARP协议解析到目的MAC地址后,将会在自己的ARP表中增加IP地址和MAC地址映射关系的表项,以用于后续到同一目的地报文的转发。
ARP表项分为两种:动态ARP表项、静态ARP表项。
动态ARP表项由ARP协议通过ARP报文自动生成和维护,可以被老化,可以被新的ARP报文更新,可以被静态ARP表项覆盖。当到达老化时间、接口状态down时,系统会删除相应的动态ARP表项。
动态ARP表项可以固化为静态ARP表项,但被固化后无法再恢复为动态ARP表项。
为了防止部分接口下的用户占用过多的ARP资源,可以通过设置接口学习动态ARP表项的最大个数来进行限制。
静态ARP表项通过手工创建或由动态ARP表项固化而来,不会被老化,不会被动态ARP表项覆盖。
配置静态ARP表项可以增加通信的安全性。静态ARP表项可以限制和指定IP地址的设备通信时只使用指定的MAC地址,此时攻击报文无法修改此表项的IP地址和MAC地址的映射关系,从而保护了本设备和指定设备间的正常通信。
在配置静态ARP表项时,如果管理员希望用户使用某个固定的IP地址和MAC地址通信,可以将该IP地址与MAC地址绑定;如果进一步希望限定用户只在指定VLAN的特定接口上连接,则需要进一步指定报文转发的VLAN和出接口。
一般情况下,ARP动态执行并自动寻求IP地址到以太网MAC地址的解析,无需管理员的介入。
当静态ARP表项中的IP地址与VLAN虚接口的IP地址属于同一网段时,该静态ARP表项才能正常指导转发。
如果ARP请求是从一个网络的主机发往同一网段却不在同一物理网络上的另一台主机,那么连接它们的具有代理ARP功能的设备就可以回答该请求,这个过程称作代理ARP。
代理ARP功能屏蔽了分离的物理网络这一事实,使用户使用起来,好像在同一个物理网络上。
代理ARP分为普通代理ARP和本地代理ARP,二者的应用场景有所区别:
· 普通代理ARP:想要互通的主机分别连接到设备的不同三层接口上,且这些主机不在同一个广播域中。
· 本地代理ARP:想要互通的主机连接到设备的同一个三层接口上,且这些主机不在同一个广播域中。
在配置本地代理ARP时,用户也可以指定进行ARP代理的IP地址范围。
免费ARP报文是一种特殊的ARP报文,该报文中携带的发送端IP地址和目标IP地址都是本机IP地址。
设备通过对外发送免费ARP报文来实现以下功能:
· 确定其它设备的IP地址是否与本机的IP地址冲突。当其它设备收到免费ARP报文后,如果发现报文中的IP地址和自己的IP地址相同,则给发送免费ARP报文的设备返回一个ARP应答,告知该设备IP地址冲突。
· 设备改变了硬件地址,通过发送免费ARP报文通知其它设备更新ARP表项。
启用了学习免费ARP报文功能后,设备会根据收到的免费ARP报文中携带的信息(发送端IP地址、发送端MAC地址)对自身维护的ARP表进行修改。设备先判断ARP表中是否存在与此免费ARP报文中的发送端IP地址对应的ARP表项:
· 如果没有对应的ARP表项,设备会根据该免费ARP报文中携带的信息新建ARP表项;
· 如果存在对应的ARP表项,设备会根据该免费ARP报文中携带的信息更新对应的ARP表项。
关闭学习免费ARP报文功能后,设备不会根据收到的免费ARP报文来新建ARP表项,但是会更新已存在的对应ARP表项。如果用户不希望通过免费ARP报文来新建ARP表项,可以关闭学习免费ARP报文功能,以节省ARP表项资源。
开启回复免费ARP报文功能后,当设备收到非同一网段的ARP请求时发送免费ARP报文。关闭该功能后,设备收到非同一网段的ARP请求时不发送免费ARP报文。
用户可以配置某些接口定时发送免费ARP报文,以便及时通知下行设备更新ARP表项或者MAC地址表项,主要应用场景如下:
· 防止仿冒网关的ARP攻击
如果攻击者仿冒网关发送免费ARP报文,就可以欺骗同网段内的其它主机,使得被欺骗的主机访问网关的流量被重定向到一个错误的MAC地址,导致其它主机用户无法正常访问网络。
为了降低这种仿冒网关的ARP攻击所带来的影响,可以在网关的接口上启用定时发送免费ARP功能。启用该功能后,网关接口上将按照配置的时间间隔周期性发送接口主IP地址和手工配置的从IP地址的免费ARP报文。这样,每台主机都可以学习到正确的网关,从而正常访问网络。
· 防止主机ARP表项老化
在实际环境中,当网络负载较大或接收端主机的CPU占用率较高时,可能存在ARP报文被丢弃或主机无法及时处理接收到的ARP报文等现象。这种情况下,接收端主机的动态ARP表项会因超时而老化,在其重新学习到发送设备的ARP表项之前,二者之间的流量就会发生中断。
为了解决上述问题,可以在网关的接口上启用定时发送免费ARP功能。启用该功能后,网关接口上将按照配置的时间间隔周期性发送接口主IP地址和手工配置的从IP地址的免费ARP报文。这样,接收端主机可以及时更新ARP映射表,从而防止了上述流量中断现象。
ARP协议有简单、易用的优点,但是也因为其没有任何安全机制而容易被攻击发起者利用。目前ARP攻击和ARP病毒已经成为局域网安全的一大威胁,为了避免各种攻击带来的危害,设备提供了多种技术对攻击进行防范、检测和解决。
不同设备支持配置的ARP攻击防御功能如下:
· 网关设备支持配置的功能包括:ARP黑洞路由、ARP源抑制、源MAC地址一致性检查、ARP主动确认、源MAC地址固定的ARP攻击检测、授权ARP和ARP扫描;
· 接入设备支持配置的功能包括:ARP Detection。
如果网络中有主机通过向设备发送大量目标IP地址不能解析的IP报文来攻击设备,则会造成下面的危害:
· 设备向目的网段发送大量ARP请求报文,加重目的网段的负载。
· 设备会试图反复地对目标IP地址进行解析,增加了CPU的负担。
为避免这种IP报文攻击所带来的危害,设备提供了下列两个功能:
· ARP黑洞路由功能:开启该功能后,一旦接收到目标IP地址不能解析的IP报文,设备立即产生一个黑洞路由,使得设备在一段时间内将去往该地址的报文直接丢弃。等待黑洞路由老化时间过后,如有报文触发则再次发起解析,如果解析成功则进行转发,否则仍然产生一个黑洞路由将去往该地址的报文丢弃。这种方式能够有效地防止IP报文的攻击,减轻CPU的负担。
· ARP源抑制功能:如果发送攻击报文的源是固定的,可以采用ARP源抑制功能。开启该功能后,如果网络中每5秒内从某IP地址向设备某接口发送目的IP地址不能解析的IP报文超过了设置的阈值,则设备将不再处理由此IP地址发出的IP报文直至该5秒结束,从而避免了恶意攻击所造成的危害。
ARP报文源MAC地址一致性检查功能主要应用于网关设备上,防御以太网数据帧首部中的源MAC地址和ARP报文中的源MAC地址不同的ARP攻击。
配置本特性后,网关设备在进行ARP学习前将对ARP报文进行检查。如果以太网数据帧首部中的源MAC地址和ARP报文中的源MAC地址不同,则认为是攻击报文,将其丢弃;否则,继续进行ARP学习。
ARP的主动确认功能主要应用于网关设备上,防止攻击者仿冒用户欺骗网关设备。
启用ARP主动确认功能后,设备在新建或更新ARP表项前需进行主动确认,防止产生错误的ARP表项。
使能严格模式后,新建ARP表项前,ARP主动确认功能会执行更严格的检查:
· 收到目标IP地址为自己的ARP请求报文时,设备会发送ARP应答报文,但不建立ARP表项;
· 收到ARP应答报文时,需要确认本设备是否对该报文中的源IP地址发起过ARP解析:若发起过解析,解析成功后则设备启动主动确认功能,主动确认流程成功完成后,设备可以建立该表项;若未发起过解析,则设备丢弃该报文。
本特性根据ARP报文的源MAC地址对上送CPU的ARP报文进行统计,在5秒内,如果收到同一源MAC地址(源MAC地址固定)的ARP报文超过一定的阈值,则认为存在攻击,系统会将此MAC地址添加到攻击检测表项中。在该攻击检测表项老化之前,如果设置的检查模式为过滤模式,则会打印日志信息并且将该源MAC地址发送的ARP报文过滤掉;如果设置的检查模式为监控模式,则只打印日志信息,不会将该源MAC地址发送的ARP报文过滤掉。
对于网关或一些重要的服务器,可能会发送大量ARP报文,为了使这些ARP报文不被过滤掉,可以将这类设备的MAC地址配置成保护MAC地址,这样,即使该设备存在攻击也不会被检测、过滤。
所谓授权ARP,就是动态学习ARP的过程中,只有和DHCP服务器生成的租约或DHCP中继生成的安全表项一致的ARP报文才能够被学习。
使能接口的授权ARP功能后,系统会禁止该接口学习动态ARP表项,可以防止用户仿冒其他用户的IP地址或MAC地址对网络进行攻击,保证只有合法的用户才能使用网络资源,增加了网络的安全性。
启用ARP扫描功能后,设备会对局域网内的邻居自动进行扫描(向邻居发送ARP请求报文,获取邻居的MAC地址,从而建立动态ARP表项)。
ARP扫描功能一般与ARP固化功能配合使用。ARP固化功能用来将当前的ARP动态表项(包括ARP扫描生成的动态ARP表项)转换为静态ARP表项。通过对动态ARP表项的固化,可以有效防止攻击者修改ARP表项。
建议在网吧这种环境稳定的小型网络中使用这两个功能。
ARP Detection功能主要应用于接入设备上,对于合法用户的ARP报文进行正常转发,否则直接丢弃,从而防止仿冒用户、仿冒网关的攻击。
ARP Detection包含三个功能:用户合法性检查、ARP报文有效性检查、ARP报文强制转发。
(1) 用户合法性检查
如果仅在VLAN上开启ARP Detection功能,则仅进行用户合法性检查。
对于ARP信任接口,不进行用户合法性检查;对于ARP非信任接口,需要进行用户合法性检查,以防止仿冒用户的攻击。
用户合法性检查是根据ARP报文中源IP地址和源MAC地址检查用户是否是所属VLAN所在接口上的合法用户,包括基于IP Source Guard静态绑定表项的检查、基于DHCP Snooping表项的检查。只要符合任何一个,就认为该ARP报文合法,进行转发。如果所有检查都没有找到匹配的表项,则认为是非法报文,直接丢弃。
(2) ARP报文有效性检查
对于ARP信任接口,不进行报文有效性检查;对于ARP非信任接口,需要根据配置对MAC地址和IP地址不合法的报文进行过滤。可以选择配置源MAC地址、目的MAC地址或IP地址检查模式。
· 源MAC地址的检查模式:会检查ARP报文中的源MAC地址和以太网报文头中的源MAC地址是否一致,一致则认为有效,否则丢弃报文。
· 目的MAC地址的检查模式(只针对ARP应答报文):会检查ARP应答报文中的目的MAC地址是否为全0或者全1,是否和以太网报文头中的目的MAC地址一致。全0、全1、不一致的报文都是无效的,需要被丢弃。
· IP地址检查模式:会检查ARP报文中的源IP或目的IP地址,如全1、或者组播IP地址都是不合法的,需要被丢弃。对于ARP应答报文,源IP和目的IP地址都进行检查;对于ARP请求报文,只检查源IP地址。
(3) ARP报文强制转发
对于从ARP信任接口接收到的ARP报文不受此功能影响,按照正常流程进行转发;对于从ARP非信任接口接收到的并且已经通过用户合法性检查的ARP报文的处理过程如下:
· 对于ARP请求报文,通过信任接口进行转发。
· 对于ARP应答报文,首先按照报文中的以太网目的MAC地址进行转发,若在MAC地址表中没有查到目的MAC地址对应的表项,则将此ARP应答报文通过信任接口进行转发。
IPv6邻居发现(Neighbor Discovery,ND)协议使用五种类型的ICMPv6消息(如表1-7所示),实现地址解析、验证邻居是否可达、重复地址检测、路由器发现/前缀发现、地址自动配置和重定向等功能。
表1-7 ND使用的ICMPv6消息
ICMPv6消息 |
类型号 |
作用 |
邻居请求消息NS(Neighbor Solicitation) |
135 |
获取邻居的链路层地址 |
验证邻居是否可达 |
||
进行重复地址检测 |
||
邻居通告消息NA(Neighbor Advertisement) |
136 |
对NS消息进行响应 |
节点在链路层变化时主动发送NA消息,向邻居节点通告本节点的变化信息 |
||
路由器请求消息RS(Router Solicitation) |
133 |
节点启动后,通过RS消息向路由器发出请求,请求前缀和其他配置信息,用于节点的自动配置 |
路由器通告消息RA(Router Advertisement) |
134 |
对RS消息进行响应 |
在没有抑制RA消息发布的条件下,路由器会周期性地发布RA消息,其中包括前缀信息选项和一些标志位的信息 |
||
重定向消息(Redirect) |
137 |
当满足一定的条件时,缺省网关通过向源主机发送重定向消息,使主机重新选择正确的下一跳地址进行后续报文的发送 |
邻居表项保存的是设备在链路范围内的邻居信息,设备邻居表项可以通过邻居请求消息NS及邻居通告消息NA来动态创建,也可以通过手工配置来静态创建。
目前,静态邻居表项有两种配置方式:
· 配置本节点的三层接口相连的邻居节点的IPv6地址和链路层地址。
· 配置本节点VLAN中的二层端口相连的邻居节点的IPv6地址和链路层地址。
对于VLAN接口,可以采用上述两种方式来配置静态邻居表项:
· 采用第一种方式配置静态邻居表项后,设备还需要解析该VLAN下的二层端口信息。
· 采用第二种方式配置静态邻居表项后,需要保证该二层端口属于指定的VLAN,且该VLAN已经创建了VLAN接口。
设备为同一链路上的主机发布RA报文,主机可以根据RA报文中的信息进行无状态自动配置等操作。设备可以抑制RA报文的发送,也可以周期性发送RA报文,相邻两次RA报文发送时间间隔是在最大时间间隔与最小时间间隔之间随机选取的一个值。最小时间间隔应该小于等于最大时间间隔的0.75倍。
RA报文中的参数和参数描述如表1-8所示。
表1-8 RA报文中的参数
参数 |
描述 |
地址前缀/前缀长度 |
主机根据该地址前缀/前缀长度生成对应的IPv6地址,完成无状态自动配置操作 |
有效生命期 |
表示前缀有效期。在有效生命期内,通过该前缀自动生成的地址可以正常使用;有效生命期过期后,通过该前缀自动生成的地址变为无效,将被删除 |
首选生命期 |
表示首选通过该前缀无状态自动配置地址的时间。首选生命期过期后,节点通过该前缀自动配置的地址将被废止。节点不能使用被废止的地址建立新的连接,但是仍可以接收目的地址为被废止地址的报文。首选生命期必须小于或等于有效生命期 |
不用于无状态配置标识 |
选择了该标识,则指定前缀不用于无状态地址配置 |
不是直连可达标识 |
选择了该标识,则表示该前缀不是当前链路上直连可达的 |
MTU |
发布链路的MTU,可以用于确保同一链路上的所有节点采用相同的MTU值 |
不指定跳数限制标识 |
选择了该标识,则表示RA消息中不带有本设备的跳数限制 |
被管理地址配置标志位(M flag) |
用于确定主机是否采用有状态自动配置获取IPv6地址 如果选择了该标志位,主机将通过有状态自动配置(例如DHCPv6服务器)来获取IPv6地址;否则,将通过无状态自动配置获取IPv6地址,即根据自己的链路层地址及路由器发布的前缀信息生成IPv6地址 |
其他信息配置标志位(O flag) |
用于确定主机是否采用有状态自动配置获取除IPv6地址外的其他信息 如果选择了其他信息配置标志位,主机将通过有状态自动配置(例如DHCPv6服务器)来获取除IPv6地址外的其他信息;否则,将通过无状态自动配置获取其他信息 |
路由器生存时间(Router Lifetime) |
用于设置发布RA消息的路由器作为主机的默认路由器的时间。主机根据接收到的RA消息中的路由器生存时间参数值,就可以确定是否将发布该RA消息的路由器作为默认路由器。发布RA消息中路由器生存时间为0的路由器不能作为默认路由器 |
邻居请求重传间隔(Retrans Timer) |
设备发送NS消息后,如果未在指定的时间间隔内收到响应,则会重新发送NS消息 |
配置路由优先级 ( Router Preference ) |
用于设置发布RA消息的路由器的路由器优先级,主机根据接收到的RA消息中的路由器优先级,可以选择优先级最高的路由器作为默认网关。在路由器的优先级相同的情况下,遵循“先来先用”的原则,优先选择先接收到的RA消息对应的发送路由器作为默认网关 |
保持邻居可达时间(Reachable Time) |
当通过邻居可达性检测确认邻居可达后,在所设置的可达时间内,设备认为邻居可达;超过设置的时间后,如果需要向邻居发送报文,会重新确认邻居是否可达 |
如果NS请求是从一个网络的主机发往同一网段却不在同一物理网络上的另一台主机,那么连接它们的具有代理功能的设备就可以代答该请求,回应NA报文,这个过程称作ND代理(ND Proxy)。
ND Proxy功能屏蔽了分离的物理网络这一事实,使用户使用起来,好像在同一个物理网络上。
ND Proxy功能根据应用场景不同分为普通ND Proxy和本地ND Proxy。
普通ND Proxy的典型应用环境如图1-4所示。Device通过两个三层接口Int A和Int B连接两个网络,两个三层接口的IPv6地址不在同一个网段,接口地址分别为4:1::99/64、4:2::99/64。但是两个网络内的主机Host A和Host B的地址通过掩码的控制,既与相连设备的接口地址在同一网段,同时二者也处于同一个网段。
图1-4 普通ND代理的典型应用环境
在这种组网情况下,当Host A需要与Host B通信时,由于目的IPv6地址与本机的IPv6地址为同一网段,因此Host A会直接发出请求Host B硬件地址的NS请求。但是,此时的两台主机处于不同的广播域中,Host B无法收到Host A的NS请求报文,当然也就无法应答。
通过在Device上启用普通ND Proxy功能,可以解决此问题。在接口Int A和Int B上启用普通ND Proxy后,Router可以应答Host A的NS请求。同时,Device作为Host B的代理,把其它主机发送过来的报文转发给Host B。这样,实现Host A与Host B之间的通信。
本地ND Proxy的应用场景如图1-5所示。Host A属于VLAN 2,Host B属于VLAN 3,它们分别连接到端口Int A和Int C上。
图1-5 本地ND代理的应用场景
在这种组网情况下,当Host A需要与Host B通信时,由于目的IPv6地址与本机的IPv6地址为同一网段,因此Host A会直接发出请求Host B硬件地址的NS请求。但是,因为连接两台主机处于不同的VLAN中,Host B无法收到Host A的NS请求报文。
通过在Device A上启用本地ND Proxy功能,可以解决此问题。在接口Int B上启用本地ND Proxy后,Device A会代替Host B回应NA,Host A发给Host B的报文就会通过Device A进行转发,从而实现Host A与Host B之间的通信。
为了方便用户对网络设备进行配置和维护,设备提供了Web登录功能。用户可以通过PC登录到设备上,使用Web界面直观地配置和维护设备。
设备支持的Web登录方式有以下两种:
· HTTP登录方式:HTTP(Hypertext Transfer Protocol,超文本传输协议)用来在Internet上传递Web页面信息。目前,设备支持的HTTP协议版本为HTTP/1.0。
· HTTPS登录方式:HTTPS(Hypertext Transfer Protocol Secure,超文本传输协议的安全版本)是支持SSL(Secure Sockets Layer,安全套接字层)协议的HTTP协议。HTTPS通过SSL协议,能对客户端与设备之间交互的数据进行加密,能为设备制定基于证书属性的访问控制策略,提高了数据传输的安全性和完整性,保证合法客户端可以安全地访问设备,禁止非法客户端访问设备,从而实现了对设备的安全管理。
采用HTTPS登录时,设备上只需使能HTTPS服务,用户即可通过HTTPS登录设备。此时,设备使用的证书为自签名证书,使用的SSL参数为各个参数的缺省值。(自签名证书指的是服务器自己生成的证书,无需从CA获取)
通过引用ACL(Access Control List,访问控制列表),可以对访问设备的登录用户进行控制:
· 当未引用ACL、引用的ACL不存在或者引用的ACL为空时,允许所有登录用户访问设备;
· 当引用的ACL非空时,则只有ACL中permit的用户才能访问设备,其它用户不允许访问设备,可以避免非法用户使用Web页面登录设备。
设备可以开启Telnet服务器功能,以便用户能够通过Telnet登录到设备进行远程管理和监控。
通过引用ACL(Access Control List,访问控制列表),可以对访问设备的登录用户进行控制:
· 当未引用ACL、引用的ACL不存在或者引用的ACL为空时,允许所有登录用户访问设备。
· 当引用的ACL非空时,则只有ACL中permit的用户才能访问设备,其它用户不允许访问设备,可以避免非法用户通过Telnet访问设备。
SSH是Secure Shell(安全外壳)的简称,是一种在不安全的网络环境中,通过加密机制和认证机制,实现安全的远程访问以及文件传输等业务的网络安全协议。
SSH协议采用了典型的客户端/服务器模式,并基于TCP协议协商建立用于保护数据传输的会话通道。
本设备可作为SSH服务器,为SSH客户端提供以下几种应用:
· Secure Telnet:简称Stelnet,可提供安全可靠的网络终端访问服务。
· Secure FTP:简称SFTP,基于SSH2,可提供安全可靠的网络文件传输服务。
· Secure Copy:简称SCP,基于SSH2,可提供安全的文件复制功能。
SSH协议有两个版本,SSH1.x和SSH2.0(本文简称SSH1和SSH2),两者互不兼容。SSH2在性能和安全性方面比SSH1有所提高。设备作为SSH服务器时,非FIPS模式下支持SSH2和SSH1两个版本,FIPS模式下只支持SSH2版本。
设备作为SSH服务器时,利用本地密码认证机制验证SSH客户端的用户名和密码的合法性。身份认证通过后,SSH客户端将与SSH服务器建立相应的会话,并在该会话上进行数据信息的交互。
NTP(Network Time Protocol,网络时间协议)可以用来在分布式时间服务器和客户端之间进行时间同步,使网络内所有设备的时间保持一致,从而使设备能够提供基于统一时间的多种应用。
NTP通过时钟层数来定义时钟的准确度。时钟层数的取值范围为1~15,取值越小,时钟准确度越高。
在某些网络中,例如无法与外界通信的孤立网络,网络中的设备无法与权威时钟进行时间同步。此时,可以从该网络中选择一台时钟较为准确的设备,指定该设备与本地时钟进行时间同步,即采用本地时钟作为参考时钟,使得该设备的时钟处于同步状态。该设备作为时间服务器为网络中的其他设备提供时间同步,从而实现整个网络的时间同步。
通过Web页面可以配置本地时钟作为参考时钟。
LLDP(Link Layer Discovery Protocol,链路层发现协议)提供了一种标准的链路层发现方式,可以将本端设备的信息(包括主要能力、管理地址、设备标识、接口标识等)组织成不同的TLV(Type/Length/Value,类型/长度/值),并封装在LLDPDU(Link Layer Discovery Protocol Data Unit,链路层发现协议数据单元)中发布给与自己直连的邻居,邻居收到这些信息后将其以标准MIB(Management Information Base,管理信息库)的形式保存起来,以供网络管理系统查询及判断链路的通信状况。
LLDP代理是LLDP协议运行实体的一个抽象映射。一个接口下,可以运行多个LLDP代理。目前LLDP定义的代理类型包括:最近桥代理、最近非TPMR桥代理和最近客户桥代理。LLDP在相邻的代理之间进行协议报文交互,并基于代理创建及维护邻居信息。
在指定类型LLDP代理下,当端口工作在TxRx或Tx模式时,设备会以报文发送时间间隔为周期,向邻居设备发送LLDP报文。如果设备的本地配置发生变化则立即发送LLDP报文,以将本地信息的变化情况尽快通知给邻居设备。但为了防止本地信息的频繁变化而引起LLDP报文的大量发送,可以配置限制发送报文速率的令牌桶大小来作限速处理。
当设备的工作模式由Disable/Rx切换为TxRx/Tx,或者发现了新的邻居设备(即收到一个新的LLDP报文且本地尚未保存发送该报文设备的信息)时,该设备将自动启用快速发送机制,即将LLDP报文的发送周期设置为快速发送周期,并连续发送指定数量(快速发送LLDP报文的个数)的LLDP报文后再恢复为正常的发送周期。
当端口工作在TxRx或Rx模式时,设备会对收到的LLDP报文及其携带的TLV进行有效性检查,通过检查后再将邻居信息保存到本地,并根据Time To Live TLV中TTL(Time To Live,生存时间)的值来设置邻居信息在本地设备上的老化时间,若该值为零,则立刻老化该邻居信息。
由于TTL=Min(65535,(TTL乘数×LLDP报文的发送间隔+1)),即取65535与(TTL乘数×LLDP报文的发送间隔+1)中的最小值,因此通过调整TTL乘数可以控制本设备信息在邻居设备上的老化时间。
当端口的LLDP工作模式发生变化时,端口将对协议状态机进行初始化操作。为了避免端口工作模式频繁改变而导致端口不断执行初始化操作,可配置端口初始化延迟时间,当端口工作模式改变时延迟一段时间再执行初始化操作。
如果开启了发送LLDP Trap功能,设备可以通过向网管系统发送Trap信息以通告如发现新的LLDP邻居、与原来邻居的通信链路发生故障等重要事件。
TLV是组成LLDP报文的单元,每个TLV都代表一个信息。LLDP可以封装的TLV包括基本TLV、802.1 TLV、802.3 TLV和LLDP-MED(Link Layer Discovery Protocol Media Endpoint Discovery,链路层发现协议媒体终端发现) TLV。
基本TLV是网络设备管理基础的一组TLV,802.1 TLV、802.3 TLV和LLDP-MED TLV则是由标准组织或其他机构定义的TLV,用于增强对网络设备的管理,可根据实际需要选择是否在LLDPDU中发送。
设备产生的日志信息按严重性可划分为如表1-9所示的八个等级,各等级的严重性依照数值从0~7依次降低。
数值 |
信息等级 |
描述 |
0 |
emergency |
表示设备不可用的信息,如系统授权已到期 |
1 |
alert |
表示设备出现重大故障,需要立刻做出反应的信息,如流量超出接口上限 |
2 |
critical |
表示严重信息,如设备温度已经超过预警值,设备电源、风扇出现故障等 |
3 |
error |
表示错误信息,如接口链路状态变化等 |
4 |
warning |
表示警告信息,如接口连接断开,内存耗尽告警等 |
5 |
notification |
表示正常出现但是重要的信息,如通过终端登录设备,设备重启等 |
6 |
informational |
表示需要记录的通知信息,如通过命令行输入命令的记录信息,执行ping命令的日志信息等 |
7 |
debugging |
表示调试过程产生的信息 |
系统可以向日志缓冲区(logbuffer)、日志主机(loghost)等方向发送日志信息。日志信息的各个输出方向相互独立,可在页面中分别设置。
包过滤是指采用ACL规则对接口入方向或出方向的报文进行过滤,即对匹配上ACL规则的报文按照其中定义的匹配动作允许或拒绝通过,对未匹配上任何ACL规则的报文则按照指定的缺省动作进行处理。
QoS即服务质量。对于网络业务,影响服务质量的因素包括传输的带宽、传送的时延、数据的丢包率等。在网络中可以通过保证传输的带宽、降低传送的时延、降低数据的丢包率以及时延抖动等措施来提高服务质量。
QoS策略包含了三个要素:类、流行为、策略。用户可以通过QoS策略将指定的类和流行为绑定起来,灵活地进行QoS配置。
类用来定义一系列的规则来对报文进行分类。
流行为用来定义针对报文所做的QoS动作。
策略用来将指定的类和流行为绑定起来,对符合分类条件的报文执行流行为中定义的动作。
设备支持基于接口应用QoS策略,对通过接口接收或发送的流量生效。接口的每个方向(出和入两个方向)只能应用一个策略。如果QoS策略应用在接口的出方向,则QoS策略对本地协议报文不起作用。一些常见的本地协议报文如下:链路维护报文、SSH等。
报文在进入设备以后,设备会根据映射规则分配或修改报文的各种优先级的值,为队列调度和拥塞控制服务。
优先级映射功能通过报文所携带的优先级字段来映射其他优先级字段值,就可以获得决定报文调度能力的各种优先级字段,从而为全面有效的控制报文的转发调度等级提供依据。
如果配置了优先级信任模式,即表示设备信任所接收报文的优先级,会自动解析报文的优先级或者标志位,然后按照映射表映射到报文的优先级参数。
如果没有配置优先级信任模式,并且配置了端口优先级值,则表明设备不信任所接收报文的优先级,而是使用端口优先级,按照映射表映射到报文的优先级参数。
按照接收端口的端口优先级,设备通过一一映射为报文分配优先级。
根据报文自身的优先级,查找优先级映射表,为报文分配优先级参数,可以通过配置优先级信任模式的方式来实现。
在配置接口上的优先级模式时,用户可以选择下列信任模式:
· Untrust:不信任任何优先级。
· Dot1p:信任报文自带的802.1p优先级,以此优先级进行优先级映射。
· DSCP:信任IP报文自带的DSCP优先级,以此优先级进行优先级映射。
报文在进入设备以后,设备会根据映射规则分配或修改报文的各种优先级的值,为队列调度和拥塞控制服务。
优先级映射功能通过报文所携带的优先级字段来映射其他优先级字段值,就可以获得决定报文调度能力的各种优先级字段,从而为全面有效的控制报文的转发调度等级提供依据。
设备中提供了多张优先级映射表,如果缺省优先级映射表无法满足用户需求,可以根据实际情况对映射表进行修改。
802.1X协议是一种基于端口的网络接入控制协议,即在局域网接入设备的端口上对所接入的用户和设备进行认证,以便控制用户设备对网络资源的访问。
802.1X系统中包括三个实体:
· 客户端:请求接入局域网的用户终端,由局域网中的设备端对其进行认证。客户端上必须安装支持802.1X认证的客户端软件。
· 设备端:局域网中控制客户端接入的网络设备,位于客户端和认证服务器之间,为客户端提供接入局域网的端口,并通过与认证服务器的交互来对所连接的客户端进行认证。
· 认证服务器端:用于对客户端进行认证、授权和计费,通常为RADIUS(Remote Authentication Dial-In User Service,远程认证拨号用户服务)服务器。认证服务器根据设备端发送来的客户端认证信息来验证客户端的合法性,并将验证结果通知给设备端,由设备端决定是否允许客户端接入。
在接入设备上,802.1X认证方法有三种方式:
· CHAP或PAP认证方法。在这种方式下,设备对EAP认证过程进行终结,将收到的EAP报文中的客户端认证信息封装在标准的RADIUS报文中,与服务器之间采用PAP或CHAP方法进行认证。CHAP以密文的方式传送密码,而PAP是以明文的方式传送密码。
· EAP认证方法。在这种方式下,设备端对收到的EAP报文进行中继,使用EAPOR(EAP over RADIUS)封装格式将其承载于RADIUS报文中发送给RADIUS服务器。
端口支持以下两种接入控制方式:
· 基于端口认证:只要该端口下的第一个用户认证成功后,其它接入用户无须认证就可使用网络资源,但是当第一个用户下线后,其它用户也会被拒绝使用网络。
· 基于MAC认证:该端口下的所有接入用户均需要单独认证,当某个用户下线后,也只有该用户无法使用网络。
端口支持以下三种授权状态:
· 强制授权:表示端口始终处于授权状态,允许用户不经认证即可访问网络资源。
· 强制非授权:表示端口始终处于非授权状态。设备端不为通过该端口接入的客户端提供认证服务。
· 自动识别:表示端口初始状态为非授权状态,仅允许EAPOL报文收发,不允许用户访问网络资源;如果用户通过认证,则端口切换到授权状态,允许用户访问网络资源。
该功能开启后,设备会根据周期性重认证时间间隔定期向该端口在线802.1X用户发起重认证,以检测用户连接状态的变化、确保用户的正常在线,并及时更新服务器下发的授权属性(例如ACL、VLAN、User Profile)。
该功能开启后,设备会根据周期发送握手请求报文时间间隔定期向通过802.1X认证的在线用户发送握手报文,以定期检测用户的在线情况。如果设备连续多次没有收到客户端的响应报文,则会将用户置为下线状态。
在线用户握手功能处于开启状态的前提下,还可以通过开启在线用户握手安全功能,来防止在线的802.1X认证用户使用非法的客户端与设备进行握手报文的交互,而逃过代理检测、双网卡检测等iNode客户端的安全检查功能。
设备端主动触发方式用于支持不能主动发送EAPOL-Start报文的客户端,例如Windows XP自带的802.1X客户端。设备主动触发认证的方式分为以下两种:
· 单播触发:当设备收到源MAC地址未知的报文时,主动向该MAC地址单播发送Identity类型的EAP-Request帧来触发认证。若设备端在设置的时长内没有收到客户端的响应,则重发该报文。
· 组播触发:设备每隔一定时间(缺省为30秒)主动向客户端组播发送Identity类型的EAP-Request帧来触发认证。
EAD(Endpoint Admission Defense,端点准入防御)作为一个网络端点接入控制方案,它通过安全客户端、安全策略服务器、接入设备以及第三方服务器的联动,加强了对用户的集中管理,提升了网络的整体防御能力。但是在实际的应用过程中EAD客户端的部署工作量很大,例如,需要网络管理员手动为每一个EAD客户端下载、升级客户端软件,这在EAD客户端数目较多的情况下给管理员带来了操作上的不便。
802.1X认证支持的EAD快速部署功能就可以解决以上问题,它允许未通过认证的802.1X用户访问一个指定的IP地址段(称为Free IP),并可以将用户发起的HTTP访问请求重定向到该IP地址段中的一个指定的URL,实现用户自动下载并安装EAD客户端的目的。
开启了SmartOn功能的端口上收到802.1X客户端发送的EAPOL-Start报文后,将向其回复单播的EAP-Request/Notification报文,并开启SmartOn通知请求超时定时器定时器等待客户端响应的EAP-Response/Notification报文。若SmartOn通知请求超时定时器超时后客户端仍未回复,则设备会重发EAP-Request/Notification报文,并重新启动该定时器。当重发次数达到规定的最大次数后,会停止对该客户端的802.1X认证;若在重发次数达到最大次数之前收到了该Notification报文的回复报文,则获取该报文中携带的Switch ID和SmartOn密码的MD5摘要,并与设备本地配置的SmartOn的Switch ID以及SmartOn密码的MD5摘要值比较,若相同,则继续客户端的802.1X认证,否则中止客户端的802.1X认证。
802.1X SmartOn功能与在线用户握手功能互斥,建议两个功能不要同时开启。
设备对用户的管理是基于ISP(Internet Service Provider,互联网服务提供者)域的,一个ISP域对应着一套实现AAA(Authentication、Authorization、Accounting,认证、授权、计费)的配置策略,它们是管理员针对该域用户制定的一套认证、授权、计费方法,可根据用户的接入特征以及不同的安全需求组合使用。
设备支持的认证方法包括:
· 不认证:对用户非常信任,不对其进行合法性检查,一般情况下不采用这种方法。
· 本地认证:认证过程在接入设备上完成,用户信息(包括用户名、密码和各种属性)配置在接入设备上。优点是速度快,可以降低运营成本;缺点是存储信息量受设备硬件条件限制。
· 远端认证(RADIUS):认证过程在接入设备和远端的服务器之间完成,接入设备和远端服务器之间通过RADIUS协议通信。优点是用户信息集中在服务器上统一管理,可实现大容量、高可靠性、支持多设备的集中式统一认证。当远端服务器无效时,可配置备选认证方式完成认证。
设备支持的授权方法包括:
· 不授权:接入设备不请求授权信息,不对用户可以使用的操作以及用户允许使用的网络服务进行授权。此时,认证通过的login用户只有系统所给予的缺省用户角色,其中FTP/SFTP/SCP用户的工作目录是设备的根目录,但并无访问权限;认证通过的非login用户,可直接访问网络。
· 本地授权:授权过程在接入设备上进行,根据接入设备上为本地用户配置的相关属性进行授权。
· 远端授权(RADIUS):授权过程在接入设备和远端服务器之间完成。RADIUS协议的认证和授权是绑定在一起的,不能单独使用RADIUS进行授权。RADIUS认证成功后,才能进行授权,RADIUS授权信息携带在认证回应报文中下发给用户。当远端服务器无效时,可配置备选授权方式完成授权。
设备支持的计费方法包括:
· 不计费:不对用户计费。
· 本地计费:计费过程在接入设备上完成,实现了本地用户连接数的统计和限制,并没有实际的费用统计功能。
· 远端计费(RADIUS):计费过程在接入设备和远端的服务器之间完成。当远端服务器无效时,可配置备选计费方式完成计费。
每个用户都属于一个ISP域。为便于对不同接入方式的用户进行区分管理,提供更为精细且有差异化的认证、授权、计费服务,设备将用户划分为以下几个类型:
· LAN接入用户:例如802.1X认证用户。
· 登录用户:例如Telnet、FTP、终端接入用户(即从Console等接口登录的用户)。
· Portal用户。
在多ISP的应用环境中,不同ISP域的用户有可能接入同一台设备,因此系统中可以存在多个ISP域,其中包括一个缺省存在的名称为system的ISP域。如果某个用户在登录时没有提供ISP域名,系统将把它归于缺省的ISP域。系统缺省的ISP域可以手工修改为一个指定的ISP域。
用户认证时,设备将按照如下先后顺序为其选择认证域:接入模块指定的认证域-->用户名中指定的ISP域-->系统缺省的ISP域。其中,仅部分接入模块支持指定认证域,例如802.1X认证。
RADIUS(Remote Authentication Dial-In User Service,远程认证拨号用户服务)是一种分布式的、客户端/服务器结构的信息交互协议,能保护网络不受未授权访问的干扰,常应用在既要求较高安全性、又允许远程用户访问的各种网络环境中。
· RADIUS客户端:一般位于接入设备上,可以遍布整个网络,负责将用户信息传输到指定的RADIUS服务器,然后根据服务器返回的信息进行相应处理(如接受/拒绝用户接入)。
· RADIUS服务器:一般运行在中心计算机或工作站上,维护用户的身份信息和与其相关的网络服务信息,负责接收接入设备发送的认证、授权、计费请求并进行相应的处理,然后给接入设备返回处理结果(如接受/拒绝认证请求)。
RADIUS协议使用UDP作为封装RADIUS报文的传输层协议,通过使用共享密钥机制来保证客户端和RADIUS服务器之间消息交互的安全性。
当接入设备对用户提供AAA(Authentication、Authorization、Accounting,认证、授权、计费)服务时,若要对用户采用RADIUS服务器进行认证、授权、计费,则作为RADIUS客户端的接入设备上需要配置相应的RADIUS服务器参数。
设备重启后,重启前的原在线用户可能会被RADIUS服务器认为仍然在线而短时间内无法再次登录。为了解决这个问题,需要开启Accounting-on功能。
开启了Accounting-on功能后,设备会在重启后主动向RADIUS服务器发送Accounting-on报文来告知自己已经重启,并要求RADIUS服务器停止计费且强制通过本设备上线的用户下线。若设备发送Accounting-on报文后RADIUS服务器无响应,则会在按照一定的时间间隔尝试重发几次。分布式设备单板重启时,Accounting-on功能的实现需要和H3C IMC网管系统配合使用。
H3C的iMC RADIUS服务器使用session control报文向设备发送授权信息的动态修改请求以及断开连接请求。设备上开启接收session control报文的开关后,会打开知名UDP端口1812来监听并接收RADIUS服务器发送的session control报文。
需要注意的是,该功能仅能和H3C的iMC RADIUS服务器配合使用。
本地用户泛指由接入设备对用户进行认证、授权和计费,进行本地认证的用户的信息(包括用户名、密码和各种属性)配置在接入设备上。
为使某个请求网络服务的用户可以通过本地认证,需要在设备上添加相应的用户条目。所谓用户,是指在设备上设置的一组用户属性的集合,该集合以用户名唯一标识。
为了简化用户的配置,增强用户的可管理性,引入了用户组的概念。用户组是一系列公共用户属性的集合,某些需要集中管理的公共属性可在用户组中统一配置和管理,属于该用户组的所有用户都可以继承这些属性。
设备产生的日志信息按照严重性可以分为八个等级,主要用于记录日常信息、调试信息、系统跟踪调试信息等,具体信息等级及描述如下:
表3-1 系统日志等级列表
信息等级 |
描述 |
emergency |
表示设备不可用的信息,如系统授权已到期 |
alert |
表示设备出现重大故障,需要立刻做出反应的信息,如流量超出接口上限 |
critical |
表示严重信息,如设备温度已经超过预警值,设备电源、风扇出现故障等 |
error |
表示错误信息,如接口链路状态变化等 |
warning |
表示警告信息,如接口连接断开,内存耗尽告警等 |
notification |
表示正常出现但是重要的信息,如通过终端登录设备,设备重启等 |
informational |
表示需要记录的通知信息,如通过命令行输入命令的记录信息,执行ping命令的日志信息等 |
debugging |
表示调试过程产生的信息 |
ACL(Access Control List,访问控制列表)是一或多条规则的集合,用于识别报文流。这里的规则是指描述报文匹配条件的判断语句,匹配条件可以是报文的源地址、目的地址、端口号等。设备依照这些规则识别出特定的报文,并根据预先设定的策略对其进行处理。
ACL包括表3-2所列的几种类型,它们的主要区别在于规则制订依据不同:
表3-2 ACL分类
ACL分类 |
规则制定依据 |
|
IPv4 ACL |
基本ACL |
依据报文的源IPv4地址制订规则 |
高级ACL |
依据报文的源/目的IPv4地址、源/目的端口号、优先级、承载的IPv4协议类型等三、四层信息制订规则 |
|
IPv6 ACL |
基本ACL |
依据报文的源IPv6地址制订规则 |
高级ACL |
依据报文的源/目的IPv6地址、源/目的端口号、优先级、承载的IPv6协议类型等三、四层信息制订规则 |
|
二层ACL |
依据报文的源/目的MAC地址、802.1p优先级、链路层协议类型等二层信息 |
一个ACL中可以包含多条规则,设备将报文按照一定顺序与这些规则进行匹配,一旦匹配上某条规则便结束匹配过程。规则匹配顺序有两种:
· 配置顺序:按照规则编号由小到大进行匹配。
· 自动排序:按照“深度优先”原则由深到浅进行匹配,见表3-3(自定义ACL不支持自动排序):
表3-3 各类型ACL的“深度优先”排序法则
ACL分类 |
规则制定依据 |
|
IPv4 ACL |
基本ACL |
1. 先比较源IPv4地址的范围,较小者(即通配符掩码中“0”位较多者)优先 2. 如果源IPv4地址范围相同,再比较配置的先后次序,先配置者优先 |
高级ACL |
3. 先比较协议范围,指定有IPv4承载的协议类型者优先 4. 如果协议范围相同,再比较源IPv4地址范围,较小者优先 5. 如果源IPv4地址范围也相同,再比较目的IPv4地址范围,较小者优先 6. 如果目的IPv4地址范围也相同,再比较TCP/UDP端口号的覆盖范围,较小者优先 7. 如果TCP/UDP端口号的覆盖范围无法比较,则比较配置的先后次序,先配置者优先 |
|
IPv6 ACL |
基本ACL |
1. 先比较源IPv6地址的范围,较小者(即前缀较长者)优先 2. 如果源IPv6地址范围相同,再比较配置的先后次序,先配置者优先 |
高级ACL |
1. 先比较协议范围,指定有IPv6承载的协议类型者优先 2. 如果协议范围相同,再比较源IPv6地址范围,较小者优先 3. 如果源IPv6地址范围也相同,再比较目的IPv6地址范围,较小者优先 4. 如果目的IPv6地址范围也相同,再比较TCP/UDP端口号的覆盖范围,较小者优先 5. 如果TCP/UDP端口号的覆盖范围无法比较,则比较配置的先后次序,先配置者优先 |
|
二层ACL |
1. 先比较源MAC地址范围,较小者(即掩码中“1”位较多者)优先 2. 如果源MAC地址范围相同,再比较目的MAC地址范围,较小者优先 3. 如果目的MAC地址范围也相同,再比较配置的先后次序,先配置者优先 |
比较IPv4地址范围的大小,就是比较IPv4地址通配符掩码中“0”位的多少:“0”位越多,范围越小。
比较IPv6地址范围的大小,就是比较IPv6地址前缀的长短:前缀越长,范围越小。
比较MAC地址范围的大小,就是比较MAC地址掩码中“1”位的多少:“1”位越多,范围越小。
每条规则都有自己的编号,这个编号可由手工指定或由系统自动分配。由于规则编号可能影响规则的匹配顺序,因此当系统自动分配编号时,为方便后续在已有规则之间插入新规则,通常在相邻编号之间留有一定空间,这就是规则编号的步长。系统自动分配编号的方式为:从0开始,按照步长分配一个大于现有最大编号的最小编号。比如原有编号为0、5、9、10和12的五条规则,步长为5,则系统将自动为下一条规则分配编号15。如果步长发生了改变,则原有全部规则的编号都将自动从0开始按新步长重新排列。比如原有编号为0、5、9、10和15的五条规则,当步长变为2后,这些规则的编号将依次变为0、2、4、6和8。
时间段(Time Range)定义了一个时间范围。用户通过创建一个时间段并在某业务中将其引用,就可使该业务在此时间段定义的时间范围内生效。但如果一个业务所引用的时间段尚未配置或已被删除,该业务将不会生效。
譬如,当一个ACL规则只需在某个特定时间范围内生效时,就可以先配置好这个时间段,然后在配置该ACL规则时引用此时间段,这样该ACL规则就只能在该时间段定义的时间范围内生效。
时间段可分为以下两种类型:
· 周期时间段:表示以一周为周期(如每周一的8至12点)循环生效的时间段。
· 绝对时间段:表示在指定时间范围内(如2011年1月1日8点至2011年1月3日18点)生效时间段。
每个时间段都以一个名称来标识,一个时间段内可包含一或多个周期时间段和绝对时间段。当一个时间段内包含有多个周期时间段和绝对时间段时,系统将先分别取各周期时间段的并集和各绝对时间段的并集,再取这两个并集的交集作为该时间段最终生效的时间范围。
设备上的一个存储介质即称为一个文件系统。
设备仅支持固定存储介质flash,其文件系统名称为flash:。
文件系统名称中的英文字符输入时区分大小写,必须为小写字符。
缺省文件系统是指用户登录设备后默认工作在的文件系统。用户在对文件或者文件夹进行操作时,如果不指定文件系统,则表示对设备的缺省文件系统进行操作。例如,在保存当前配置时,如果不输入任何保存位置信息,则下次启动配置文件将保存在缺省文件系统的根目录下。
本设备的文件系统采用树形目录结构,用户可以通过文件夹操作来改变目录层级,方便的管理文件。
(1) 根目录
根目录用“/”来表示。
(2) 工作目录
工作目录也被称为当前工作目录。
用户登录设备后,缺省的工作目录为设备Flash的根目录。
(3) 文件夹的命名
文件夹名称中可以包含数字、字母或特殊字符(除了*|\/?<>":)。给文件夹命名时,首字母请不要使用“.”。因为系统会把名称首字母为“.”的文件夹当成隐藏文件夹。
(4) 常用文件夹
设备出厂时会携带一些文件夹,在运行过程中可能会自动产生一些文件夹,这些文件夹包括:
· diagfile:用于存放诊断信息文件的文件夹
· logfile:用于存放日志文件的文件夹
· seclog:用于存放安全日志文件的文件夹
· versionInfo:用于存放版本信息文件的文件夹
· 其它名称的文件夹
(1) 文件的命名
文件名中可以输入以数字、字母、特殊字符为组合的字符串(除了*|\/?<>":)。给文件命名时,首字母请不要使用“.”。因为系统会把名称首字母为“.”的文件当成隐藏文件。
(2) 常见文件类型
设备出厂时会携带一些文件,在运行过程中可能会自动产生一些文件,这些文件包括:
· xx.ipe(复合软件包套件,是启动软件包的集合)
· xx.bin(启动软件包)
· xx.cfg(配置文件)
· xx.mdb(二进制格式的配置文件)
· xx.log(用于存放日志的文件)
· 其它后缀的文件
(3) 隐藏文件和文件夹
文件/文件夹分为隐藏的、非隐藏的。因为有些系统文件/文件夹是隐藏文件/文件夹,所以对于隐藏文件/文件夹,请不要修改或删除,以免影响对应功能;对于非隐藏的文件/文件夹,请完全了解它的作用后再执行文件/文件夹操作,以免误删重要文件/文件夹。
文件操作是指对指定的文件路径下的文件进行相应操作,目前文件操作分为以下三类:
· 上传:设备支持上传版本文件、配置文件、证书、本地portal页面、MAP文件、特殊AP版本文件等。
· 下载:设备支持下载版本文件、配置文件、一键诊断信息及之前上传的信息文件等。
· 删除:设备支持选择删除设备上的非隐性文件。
目前删除之后的文件无法恢复,请确保删除文件准确无误。
管理员通过HTTP、HTTPS、SSH、Telnet、FTP、PAD方式登录到设备上之后,可以对设备进行配置和管理。对登录用户的管理和维护主要涉及以下几个部分:
· 帐户管理:对用户的基本信息(用户名、密码)以及相关属性的管理。
· 角色管理:对用户可执行的系统功能以及可操作的系统资源权限的管理。
· 密码管理:对用户登录密码的设置、老化、更新以及用户登录状态等方面的管理。
为使请求某种服务的用户可以成功登录设备,需要在设备上添加相应的帐户。所谓用户,是指在设备上设置的一组用户属性的集合,该集合以用户名唯一标识。一个有效的用户条目中可包括用户名、密码、角色、可用服务、密码管理等属性。
对登录用户权限的控制,是通过为用户赋予一定的角色来实现。一个角色中定义了允许用户执行的系统功能以及可操作的系统资源,具体实现如下:
· 通过角色规则实现对系统功能的操作权限的控制。例如,定义用户角色规则允许用户配置A功能,或禁止用户配置B功能。
· 通过资源控制策略实现对系统资源(接口、VLAN)的操作权限的控制。例如,定义资源控制策略允许用户操作VLAN 10,禁止用户操作接口GigabitEthernet1/0/1。
一个角色中可以包含多条规则,规则定义了允许/禁止用户操作某类实体的权限。
系统支持的实体类型包括:
· 命令行:控制用户权限的最小单元,具体可分为读、写、执行类型的命令行。
· 特性:与一个功能相关的所有命令的集合。系统中的所有特性及其包含的命令都是系统预定义的,不允许用户自定义。
· 特性组:一个或者多个特性的集合。系统预定义了两个特性组L2和L3。L2中包含了所有的二层协议相关功能的命令,L3中包含了所有三层协议相关功能的命令。管理员可以根据需要自定义特性组,但不能修改和删除系统预定义的特性组L2和L3。各个特性组之间包含的特性允许重叠。
· Web菜单:通过Web对设备进行配置时,各配置页面以Web菜单的形式组织,按照层次关系,形成多级菜单的树形结构。
· XML元素:与Web菜单类似,XML对于配置对象的组织也呈现树状结构,每一个XML元素代表XML配置中的一个XML节点。
· SNMP OID:对象标识符,SNMP协议通过OID唯一标识一个被管理对象。
对实体的操作权限包括:
· 读权限:可查看指定实体的配置信息和维护信息。
· 写权限:可配置指定实体的相关功能和参数。
· 执行权限:可执行特定的功能,如与FTP服务器建立连接。
定义一个规则,就等于约定允许或禁止用户针对某类实体具有哪些操作权限,具体分为:
· 控制命令行的规则:用来控制一条命令或者与指定的命令特征字符串相匹配的一类命令是否允许被执行。
· 控制特性的规则:用来控制特性包含的命令是否允许被执行。因为特性中的每条命令都属于读类型、写类型或执行类型,所以在定义该类规则时,可以精细地控制特性所包含的读、写或执行类型的命令能否被执行。
· 控制特性组的规则:此规则和基于特性的规则类似,区别是一条基于特性组的规则中可同时对多个特性包含的命令进行控制。
· 控制Web菜单的规则:用来控制指定的Web菜单选项是否允许被操作。因为每个菜单项中的操作控件具有相应的读,写或执行属性,所以定义基于Web菜单的规则时,可以精细地控制菜单项中读、写或执行控件的操作。
· 控制XML元素的规则:用来控制指定的XML元素是否允许被执行。XML元素也具有读,写或执行属性。
· 控制OID的规则:用来控制指定的OID是否允许被SNMP访问。OID具有读,写和执行属性。
一个用户角色中可以定义多条规则,各规则以创建时指定的编号为唯一标识,被授权该角色的用户可以执行的命令为这些规则中定义的可执行命令的并集。若这些规则定义的权限内容有冲突,则规则编号大的有效。例如,规则1允许执行命令A,规则2允许执行命令B,规则3禁止执行命令A,则最终规则2和规则3生效,即禁止执行命令A,允许执行命令B。
资源控制策略规定了用户对系统资源的操作权限。
· 对于登录命令行的用户而言,对接口/VLAN的操作是指创建并进入接口视图/VLAN视图、删除和应用接口/VLAN(在display命令中指定接口/VLAN参数并不属于应用接口/VLAN范畴)。
· 对于登录Web页面的用户而言,对接口/VLAN的操作是指创建接口/VLAN、配置接口/VLAN的属性、删除接口/VLAN和应用接口/VLAN。
资源控制策略需要与角色规则相配合才能生效。在用户执行命令的过程中,系统对该命令涉及的系统资源使用权限进行动态检测,因此只有用户同时拥有执行该命令的权限和使用该资源的权限时,才能执行该命令。例如,若管理员为某用户角色定义了一条规则允许用户创建VLAN,且同时指定用户具有操作VLAN 10的权限,则当用户被授权此角色并试图创建VLAN 10时,操作会被允许,但试图创建其它VLAN时,操作会被禁止。若管理员并没有为该角色定义允许用户创建VLAN的规则,则用户即便拥有该VLAN资源的操作权限,也无法执行相关的操作。
系统预定义了多种角色,角色名和对应的权限如表3-4所示。这些角色缺省均具有操作所有系统资源的权限,但具有不同的系统功能操作权限。如果系统预定义的用户角色无法满足权限管理需求,管理员还可以自定义用户角色来对用户权限做进一步控制。
角色名 |
权限 |
network-admin |
可操作系统所有功能和资源(除安全日志文件管理相关命令display security-logfile summary、info-center security-logfile directory、security-logfile save之外) |
network-operator |
· 可执行系统所有功能和资源的相关display命令(除display history-command all、display security-logfile summary等命令,具体请通过display role命令查看) · 如果用户采用本地认证方式登录系统并被授予该角色,则可以修改自己的密码 · 可执行进入XML视图的命令 · 可允许用户对所有Web菜单选项进行读操作 · 可允许用户对所有XML元素进行读操作 · 可允许用户对所有SNMP OID进行读操作 |
level-n (n = 0~15) |
· level-0:可执行命令ping、tracert、ssh2、telnet和super,且管理员可以为其配置权限 · level-1:具有level-0用户角色的权限,并且可执行系统所有功能和资源的相关display命令(除display history-command all之外),以及管理员可以为其配置权限 · level-2~level-8和level-10~level-14:无缺省权限,需要管理员为其配置权限 · level-9:可操作系统中绝大多数的功能和所有的资源,且管理员可以为其配置权限,但不能操作display history-command all命令、RBAC的命令(Debug命令除外)、文件管理、设备管理以及本地用户特性。对于本地用户,若用户登录系统并被授予该角色,可以修改自己的密码 · level-15:具有与network-admin角色相同的权限 |
security-audit |
安全日志管理员,仅具有安全日志文件的读、写、执行权限,具体如下: · 可执行安全日志文件管理相关的命令(display security-logfile summary、info-center security-logfile directory、security-logfile save)。安全日志文件管理相关命令的介绍,请参见“网络管理与监控”中的“信息中心” · 可执行安全日志文件操作相关的命令,例如more显示安全日志文件内容;dir、mkdir操作安全日志文件目录等,具体命令的介绍请参见“基础配置命令参考”中的“文件系统管理” 以上权限,仅安全日志管理员角色独有,其它任何角色均不具备 |
guest-manager |
来宾用户管理员,只能查看和配置来宾用户管理相关Web页面,无命令行控制权限 |
只有具有network-admin或者level-15用户角色的用户登录设备后才可以执行RBAC特性的所有命令、修改用户线视图下的相关配置(包括user-role、authentication-mode、protocol inbound和set authentication password)以及执行创建/修改/删除本地用户和本地用户组;其它角色的用户,即使被授权对本地用户和本地用户组的操作权限,也仅仅具有修改自身密码的权限,没有除此之外的对本地用户和本地用户组的任何操作权限。
预定义的用户角色中,仅用户角色level-0~level-14可以通过自定义规则和资源控制策略调整自身的权限。需要注意的是,这种修改对于display history-command all命令不生效,即不能通过添加对应的规则来更改它的缺省执行权限。
根据用户登录方式的不同,为用户授权角色分为以下两类:
· 对于通过本地AAA认证登录设备的用户,由本地用户配置决定为其授权的用户角色。
· 对于通过AAA远程认证登录设备的用户,由AAA服务器的配置决定为其授权的用户角色。
将有效的角色成功授权给用户后,登录设备的用户才能以各角色所具有的权限来配置、管理或者监控设备。如果用户没有被授权任何角色,将无法成功登录设备。
一个用户可同时拥有多个角色。拥有多个角色的用户可获得这些角色中被允许执行的功能以及被允许操作的资源的集合。
定义控制命令行的规则时,通过输入命令特征字符串来指定要控制命令行的范围。特征字符串的输入需要遵循以下规则:
· 在输入命令特征字符串时必须指定该命令所在的视图,进入各视图的命令特征字符串由分号(;)分隔。分号将命令特征字符串分成多个段,每一个段代表一个或一系列命令,后一个段中的命令是执行前一个段中命令所进入视图下的命令。一个段中可以包含多个星号(*),每个星号(*)代表了0个或多个任意字符。例如:命令特征字符串“system ; interface * ; ip * ;” 代表从系统视图进入到任意接口视图后,以ip开头的所有命令。
· 当最后一个段中的最后一个可见字符为分号时,表示所指的命令范围不再扩展,否则将向子视图中的命令扩展。例如:命令特征字符串“system ; radius scheme * ;”代表系统视图下以radius scheme开头的所有命令;命令特征字符串“system ; radius scheme * ”代表系统视图下以radius scheme开头的所有命令,以及进入子视图(RADIUS方案视图)下的所有命令。
· 当星号(*)出现在一个段的首部时,其后面不能再出现其它可打印字符,且该段必须是命令特征字符串的最后一个段。例如:命令特征字符串“system ; *”就代表了系统视图下的所有命令,以及所有子视图下的命令。
· 当星号(*)出现在一个段的中间时,该段必须是命令特征字符串的最后一个段。例如:命令特征字符串“debugging * event”就代表了用户视图下所有模块的事件调试信息开关命令。
· 一个段中必须至少出现一个可打印字符,不能全部为空格或Tab。
· 对于能在任意视图下执行的命令(例如display命令)以及用户视图下的命令(例如dir命令),在配置包含此类命令的规则时,不需要在规则的命令匹配字符串中指定其所在的视图。
用户执行命令时,系统遵循以下匹配规则:
· 命令关键字与命令特征字符串是采用前缀匹配算法进行匹配的,即只要命令行中关键字的首部若干连续字符或全部字符与规则中定义的关键字相匹配,就认为该命令行与此规则匹配。因此,命令特征字符串中可以包括完整的或部分的命令关键字。例如,若规则“rule 1 deny command dis arp source *”生效,则命令display arp source-mac interface和命令display arp source-suppression都会被禁止执行。
· 基于命令的规则只对指定视图下的命令生效。若用户输入的命令在当前视图下不存在而在其父视图下被查找到时,用于控制当前视图下的命令的规则不会对其父视图下的命令执行权限进行控制。例如,定义一条规则“rule 1 deny command system ; interface * ; *”禁止用户执行接口视图下的任何命令。当用户在接口视图下输入命令acl basic 3000时,该命令仍然可以成功执行,因为系统在接口视图下搜索不到指定的acl命令时,会回溯到系统视图(父视图)下执行,此时该规则对此命令不生效。
· display命令中的重定向符(“|”、“>”、“>>”)及其后面的关键字不被作为命令行关键字参与规则的匹配。例如,若规则“rule 1 permit command display debugging”生效,则命令display debugging > log是被允许执行的,其中的关键字> log将被忽略,RBAC只对重定向符前面的命令行display debugging进行匹配。但是,如果在规则中配置了重定向符,则RBAC会将其作为普通字符处理。例如,若规则“rule 1 permit command display debugging > log”生效,则命令display debugging > log将会匹配失败,因为其中的关键字> log被RBAC忽略了,最终是命令display debugging与规则进行匹配。因此,配置规则时不要使用重定向符。
用户访问SNMP OID时,系统遵循以下匹配规则:
· 与用户访问的OID形成最长匹配的规则生效。例如用户访问的OID为1.3.6.1.4.1.25506.141.3.0.1,角色中存在“rule 1 permit read write oid 1.3.6”,“rule 2 deny read write oid 1.3.6.1.4.1”和“rule 3 permit read write oid 1.3.6.1.4”,其中rule 2与用户访问的OID形成最长匹配,则认为rule 2与OID匹配,匹配的结果为用户的此访问请求被拒绝。
· 对于定义的OID长度相同的规则,规则编号大的生效。例如用户访问的OID为1.3.6.1.4.1.25506.141.3.0.1,角色中存在“rule 1 permit read write oid 1.3.6”,“rule 2 deny read write oid 1.3.6.1.4.1”和“rule 3 permit read write oid 1.3.6.1.4.1”,其中rule 2和rule 3与访问的OID形成最长匹配,则rule 3生效,匹配的结果为用户的访问请求被允许。
为了提高用户登录密码的安全性,可通过定义密码管理策略对用户的登录密码进行管理,并对用户的登录状态进行控制。
管理员可以限制用户密码的最小长度。当设置用户密码时,如果输入的密码长度小于设置的最小长度,系统将不允许设置该密码。
管理员可以设置用户密码的组成元素的组合类型,以及至少要包含每种元素的个数。密码的组成元素包括以下4种类型:
· [A~Z]
· [a~z]
· [0~9]
· 32个特殊字符(空格~`!@#$%^&*()_+-={}|[]\:”;’<>,./)
密码元素的组合类型有4种,具体涵义如下:
· 组合类型为1表示密码中至少包含1种元素;
· 组合类型为2表示密码中至少包含2种元素;
· 组合类型为3表示密码中至少包含3种元素;
· 组合类型为4表示密码中包含4种元素。
当用户设置密码时,系统会检查设定的密码是否符合配置要求,只有符合要求的密码才能设置成功。
为确保用户的登录密码具有较高的复杂度,要求管理员为其设置的密码必须符合一定的复杂度要求,只有符合要求的密码才能设置成功。目前,可配置的复杂度要求包括:
· 密码中不能包含连续三个或以上的相同字符。例如,密码“a111”就不符合复杂度要求。
· 密码中不能包含用户名或者字符顺序颠倒的用户名。例如,用户名为“abc”,那么“abc982”或者“2cba”之类的密码就不符合复杂度要求。
管理员可以设置用户登录设备后修改自身密码的最小间隔时间。当用户登录设备修改自身密码时,如果距离上次修改密码的时间间隔小于配置值,则系统不允许修改密码。例如,管理员配置用户密码更新间隔时间为48小时,那么用户在上次修改密码后的48小时之内都无法成功进行密码修改操作。
有两种情况下的密码更新并不受该功能的约束:用户首次登录设备时系统要求用户修改密码;密码老化后系统要求用户修改密码。
当用户登录密码的使用时间超过老化时间后,需要用户更换密码。如果用户输入的新密码不符合要求,或连续两次输入的新密码不一致,系统将要求用户重新输入。对于FTP用户,密码老化后,只能由管理员修改FTP用户的密码;对于Telnet、SSH、Terminal(通过Console口登录设备)用户可自行修改密码。
在用户登录时,系统判断其密码距离过期的时间是否在设置的提醒时间范围内。如果在提醒时间范围内,系统会提示该密码还有多久过期,并询问用户是否修改密码。如果用户选择修改,则记录新的密码及其设定时间。如果用户选择不修改或者修改失败,则在密码未过期的情况下仍可以正常登录。对于FTP用户,只能由管理员修改FTP用户的密码;对于Telnet、SSH、Terminal(通过Console口登录设备)用户可自行修改密码。
管理员可以设置用户密码过期后在指定的时间内还能登录设备指定的次数。这样,密码老化的用户不需要立即更新密码,依然可以登录设备。例如,管理员设置密码老化后允许用户登录的时间为15天、次数为3次,那么用户在密码老化后的15天内,还能继续成功登录3次。
系统保存用户密码历史记录。当用户修改密码时,系统会要求用户设置新的密码,如果新设置的密码以前使用过,且在当前用户密码历史记录中,系统将给出错误信息,提示用户密码更改失败。另外,用户更改密码时,系统会将新设置的密码逐一与所有记录的历史密码以及当前密码比较,要求新密码至少要与旧密码有4字符不同,且这4个字符必须互不相同,否则密码更改失败。
可以配置每个用户密码历史记录的最大条数,当密码历史记录的条数超过配置的最大历史记录条数时,新的密码历史记录将覆盖该用户最老的一条密码历史记录。
由于为用户配置的密码在哈希运算后以密文的方式保存,配置一旦生效后就无法还原为明文密码,因此,用户的当前登录密码,不会被记录到该用户的密码历史记录中。
密码尝试次数限制可以用来防止恶意用户通过不断尝试来破解密码。
每次用户认证失败后,系统会将该用户加入密码管理的黑名单。可加入密码管理功能黑名单的用户包括:FTP用户和通过VTY方式访问设备的用户。不会加入密码管理功能黑名单的用户包括:用户名不存在的用户、通过Console口连接到设备的用户。
当用户连续尝试认证的失败累加次数达到设置的尝试次数时,系统对用户的后续登录行为有以下三种处理措施:
· 永久禁止该用户登录。只有管理员把该用户从密码管理的黑名单中删除后,该用户才能重新登录。
· 禁止该用户一段时间后,再允许其重新登录。当配置的禁止时间超时或者管理员将其从密码管理的黑名单中删除,该用户才可以重新登录。
· 不对该用户做禁止,允许其继续登录。在该用户登录成功后,该用户会从密码管理的黑名单中删除。
管理员可以限制用户帐号的闲置时间,禁止在闲置时间之内始终处于不活动状态的用户登录。若用户自从最后一次成功登录之后,在配置的闲置时间内再未成功登录过,那么该闲置时间到达之后此用户帐号立即失效,系统不再允许使用该帐号的用户登录。
系统设置功能用来对设备的名称、位置等信息以及设备时间进行设置。
为了便于管理,并保证与其它设备协调工作,设备需要准确的系统时间。系统时间由GMT时间、本地时区和夏令时运算之后联合决定。用户有两种方式获取GMT时间:
· 手工配置GMT时间。
· 通过NTP/SNTP协议获取GMT时间。
通过NTP/SNTP协议获取的GMT时间比命令行配置的GMT时间更精确。
NTP(Network Time Protocol,网络时间协议)可以用来在分布式时间服务器和客户端之间进行时间同步,使网络内所有设备的时间保持一致,从而使设备能够提供基于统一时间的多种应用。
SNTP(Simple NTP,简单NTP)采用与NTP相同的报文格式及交互过程,但简化了NTP的时间同步过程,以牺牲时间精度为代价实现了时间的快速同步,并减少了占用的系统资源。在时间精度要求不高的情况下,可以使用SNTP来实现时间同步。
NTP支持服务器模式和对等体模式两种时钟源工作模式,如表3-5所示。在服务器模式中,设备只能作为客户端;在对等体模式中,设备只能作为主动对等体。
SNTP只支持服务器模式这一种时钟源工作模式。在该模式中,设备只能作为客户端,从NTP服务器获得时间同步,不能作为服务器为其他设备提供时间同步。
表3-5 NTP时钟源工作模式
模式 |
工作过程 |
时间同步方向 |
应用场合 |
服务器模式 |
客户端上需要手工指定NTP服务器的地址。客户端向NTP服务器发送NTP时间同步报文。NTP服务器收到报文后会自动工作在服务器模式,并回复应答报文 一个客户端可以配置多个时间服务器,如果客户端从多个时间服务器获取时间同步,则客户端收到应答报文后,进行时钟过滤和选择,并与优选的时钟进行时间同步 |
客户端能够与NTP服务器的时间同步 NTP服务器无法与客户端的时间同步 |
该模式通常用于下级的设备从上级的时间服务器获取时间同步 |
对等体模式 |
主动对等体(Symmetric active peer)上需要手工指定被动对等体(Symmetric passive peer)的地址。主动对等体向被动对等体发送NTP时间同步报文。被动对等体收到报文后会自动工作在被动对等体模式,并回复应答报文 如果主动对等体可以从多个时间服务器获取时间同步,则主动对等体收到应答报文后,进行时钟过滤和选择,并与优选的时钟进行时间同步 |
主动对等体和被动对等体的时间可以互相同步 如果双方的时钟都处于同步状态,则层数大的时钟与层数小的时钟的时间同步 |
该模式通常用于同级的设备间互相同步,以便在同级的设备间形成备份。如果某台设备与所有上级时间服务器的通信出现故障,则该设备仍然可以从同级的时间服务器获得时间同步 |
NTP/SNTP时钟源身份验证功能可以用来验证接收到的NTP报文的合法性。只有报文通过验证后,设备才会接收该报文,并从中获取时间同步信息;否则,设备会丢弃该报文。从而,保证设备不会与非法的时间服务器进行时间同步,避免时间同步错误。
系统提供了诊断信息收集功能,便于用户对错误进行诊断和定位。.
通过使用Ping功能,用户可以检查指定地址的设备是否可达,测试链路是否通畅。
Ping功能是基于ICMP(Internet Control Message Protocol,互联网控制消息协议)协议来实现的:源端向目的端发送ICMP回显请求(ECHO-REQUEST)报文后,根据是否收到目的端的ICMP回显应答(ECHO-REPLY)报文来判断目的端是否可达,对于可达的目的端,再根据发送报文个数、接收到响应报文个数以及Ping过程报文的往返时间来判断链路的质量。
通过使用Tracert功能,用户可以查看IP报文从源端到达目的端所经过的三层设备,从而检查网络连接是否可用。当网络出现故障时,用户可以使用该功能分析出现故障的网络节点。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!