您的位置:首页 > 理论基础 > 计算机网络

网络规划设计师 视频笔记

2018-01-14 12:49 127 查看
网络规划设计师介绍考试要求
(1)系统掌握数据通信基本原理;
(2)系统掌握计算机网络的原理;
(3)系统掌握计算机系统的原理;
(4)系统掌握局域网、广域网、Internet的技术;
(5)系统掌握TCP/IP体系结构及协议;
(6)掌握网络计算机环境与网络应用;
(7)熟练掌握各类网络产品及其应用规范;
(8)掌握网络安全和信息安全技术、安全产品及其应用规范;
(9)熟练应用项目管理的方法和工具实施网络工程项目;
(10)具备大中型网络设计、部署和管理的实践经验和能力;
(11)具有大中型网络测试及评估的实践经验和能力;
(12)熟悉有关的法律法规与标准;
(13)具有应用数学、经济与管理科学的相关基础知识;
(14)熟练阅读和正确理解相关领域的英文文献;

网络规划设计师介绍
能力标准
通过本考试的合格人员应熟悉所涉及的应用领域的业务;在需求分析阶段,能分析用户的需求和约束条件,写出网络系统需求规格说明书;在规划设计阶段,能根据系统需求规格说明书,完成逻辑结构设计、物理结构设计,选用适宜的网络设备,按照标准规范编写系统设计文档及项目开发计划;在部署实施阶段,能按照系统设计文档和项目开发计划组织项目施工,对项目实施过程进行质量控制、进度控制、成本管理,能具体指导项目实施;在评测运维阶段,能根据相关标准和规范对网络进行评估测试,能制定运行维护、故障分析与处理机制,确保网络提供正常服务;能指导制定用户的数据和网络战略规划,能指导网络工程师进行系统建设实施;具有高级网络工程师的实际工作能力和业务水平。

综合知识
1、计算机网络原理
1.1计算机网络基础知识
1.2数据通信基础知识
1.3网络分层与功能
1.4网络设备与网络软件
1.4.1网卡
1.5局域网
1.6广域网与接入
1.7网络互连
1.8Internet协议
1.9网络管理
1.10服务质量控制技术

2、计算机网络规划与设计知识
2.2需求分析
2.3逻辑设计
2.4物理设计
2.5网络测试、优化和管理
2.6网络故障分析与处理
2.7网络系统性能评估技术和方法

3、网络资源设备
3.1网络服务器
3.2网络存储系统
3.3其他资源

4、网络安全
4.1网络不安全因素与网络安全体系
4.2恶意软件的防治
4.3******及预防方法
4.4防火墙应用
4.5ISA Server应用配置
4.6IDS与IPS
4.7访问控制技术
4.8***技术
4.9网络安全隔离
4.10安全认证方法与技术
4.11加密和数字签名
4.12网络安全应用协议
4.13安全审计
4.14安全管理

5、项目管理
5.1项目计划管理
5.2项目范围管理
5.3项目进度控制
5.4项目成本管理
5.5项目风险管理
5.6项目质量管理
5.7项目文档管理

6、标准化与法律法规
6.1标准的分类
6.2标准化机构
6.3知识产权
6.4互联网有关的法律法规

7、财务管理实务
7.1会计常识
7.2财务管理实务

8、应用数学
8.1概率统计应用
8.2图论应用
8.3组合分析
8.4运筹方法

9、专业英语
9.1具有高级工程师所要求的英文阅读水平
9.2熟悉网络规划设计师岗位相关领域的专业英语术语

案例分析
1、网络规划与设计
2、网络工程管理
3、网络优化
4、网络配置
5、网络性能分析与测试
6、网络故障分析

网络论文
根据试卷上给出的与网络规划与设计有关的若干论文题目,选择其中一个题目,按照规定的要求撰写论文。论文涉及的内容如下:
1、网络技术应用与对比分析
·交换技术类
·路由技术类
·网络安全技术类
·服务器技术类
·存储技术类

2、网络技术对应用系统建设的影响
·网络计算模式
·应用系统集成技术
·P2P技术
·容灾备份与灾难恢复
·网络安全技术
·基于网络的应用系统开发技术

3、专用网络需求分析、设计、实施和项目管理
·工业网络
·电子政务网络
·电子商务网络
·保密网络
·无线数字城市网络
应急指挥网络
·视频监控网络
·机房工程

4、下一代网络技术分析
·IPv6
·全光网络
·3G、B3G、4G、WiMAX、WMN等无线网络
·多网融合

RIP协议基本概念
RIP协议采用距离向量算法,再实际应用中已经较少使用。再默认情况下,RIP使用一种非常简单的度量制度;距离就是通往目的站点所需经过的链路数,取值为1-15,数值16表示无穷大。RIP进程使用UDP的520端口来发送和接收RIP分组。RIP分组分隔30s以广播的形式发送一次,为了防止出现“广播风暴”,其后续的分组将做随机延时后发送。再RIP,如果一个路由在180s内未被刷,则相应的距离就被设定成无穷大,并从路由表中删除该表项。RIP分组分为两种:请求分组和响应分组。
RIP通过广播UDP报文来交换路由信息,每30秒发送一次路由信息更新。RIP提供跳跃计数(hopcount)作为尺度来衡量路由距离,跳跃计数是一个包达到目标所必须经过的路由器的数目。如果到相同目标有二个不等速或不同带宽的路由器,但跳跃计数相同,则RIP认为两个路由是等距离的。RIP最多支持的跳数为15,即在源和目的网间所要经过的最多路由器的数目为15,跳数16表示不可达

局限性
协议中规定,一条有效的路由信息的度量(metric)不能超过15,这就使得该协议不能应用于很大型的网络,应该说正是由于设计者考虑到该协议只适合于小型网络所以才进行了这一限制。对于metric16的目标网络来说,即认为其不可到达。
2)该路由协议应用到实际中时,很容易出现“计数到无穷大”的现象,这使得路由收敛很慢,再网络拓扑结构变化以后需要很长时间路由信息才能稳定下来。
3)该协议以跳数,即报文经过的路由器个数为衡量标准,并以此来选择路由,这一措施欠合理性,因为没有考虑网络延时、可靠性、线路负荷等因素对传输质量和速度的影响。
4)计数到无穷大(Counting to Infinity)
前面的RIP的局限性一部分提到了可能出现的计数到无穷大的现象,下面就来分析一下该现象的产生原因与过程。考察下面的简单网络:
c(目的网络)——routerA——routerB
在正常情况下,对于目标网络,A路由器的metric值为1,B路由器的metric值为2。当目标网络与A路由器之间的链路发生故障而断掉以后:
c(目的网络)——||——routerA————routerB
A路由器会将针对目标网络C的路由表项的metric值置为16,即标记为目标网络不可达,并准备在每30秒进行一次的路由表更新中发送出去,如果在这条信息还未发出的时候,A路由器收到了来自B的路由更新报文,而B中包含着关于C的metric为2的路由信息,根据前面提到的路由更新方法,路由器A会错误的认为有一条通过B路由器的路径可以到达目标网络C,从而更新其路由表,将对于目标网络C的路由表项的metirc值由16改为3,而对于的du端口变为与B路由器相连接的端口。很明显,A会将该条信息发给B,B将无条件。更新其路由表,将metric改为4;该信息又从B发向A,A将metric改为5……最后双发的路由表关于目标网络C的metric值都变为16,此时,才真正得到了正确的路由信息。这种现象称为“计数到无穷大”现象,虽然最终完成了收敛,但是收敛速度很慢,而且浪费了网络资源来发送这些循环的分组。
另外,从这里我们也可以看出,metirc值的最大值的选择实际上存在着矛盾,如果选得太小,那么适用的网络规模太小,如果选得过大,那么在出现计数到无穷大现象的时候收敛时间会变得很长。

路由环路
在维护路由信息表信息的时候,如果在拓扑发生改变后,网络收敛缓慢产生了不协调或者矛盾的路由选择条目,就会发生路由环路的问题,这种条件下,路由器对无法到达的网络路由不予理睬,导致用户的数据包不停在网络上循环发送,最终造成网络资源的严重浪费。

路由环路产生的场景
当A路由器一侧的X网络发生故障,则A路由器收到故障信息,并把X网络设置为不可达,等待更新周期来通知相邻的B路由器。但是,如果相邻的B路由器的更新周期先来了,则A路由器讲从B路由器那学到了达到X网络的路由,就是错误路由,因此此时的X网络已经损坏,而A路由器却在自己的路由表内增加了一条经过B路由器达到X网络的路由。然后A路由器还会继续把该错误路由通告B路由器,B路由器更新路由表,认为达到X网络须经过B路由器,而B则认为到达X网络进行A路由器。

RIP协议中对路由环路解决方案
1、最大跳数:当一个路由条目作为副本发送出去的时候就会自加1跳,那么最大加到16跳,到16跳就已经视为最大条数不可达了。
2、水平分割:其规则就是不向原始路由更新来的方向再次发送路由更新信息(个人理解为单向更新,单向反馈)。比如有三台路由器ABC,B向C学习到访问网络10.4.0.0的路径以后,不再向C声明自己可以通过C访问10.4.0.0网络的路径信息,A向B学习到访问10.4.0.0网络路径信息后,也不再向B声明,而一旦网络10.4.0.0发生故障无法访问,C会向A和B发送该网络不可达到的路由更新信息,但不会再学习A和B发送的能够达到10.4.0.0的错误信息。
3、路由中毒(路由毒化):定义最大值在一定程度上解决了路由环路问题,但并不彻底,可以看到,在达到最大值之前,路由环路还是存在的。为此,路由中毒就可以彻底解决这个问题。其原理是这样的:假设有三台路由器ABC,当网络10.4.0.0出现故障无法访问的时候,路由器C便向邻居路由发送相关路由更新信息,并将其度量值标为无穷大,告诉它们网络10.4.0.0不可达到,路由器B收到毒化消息后将该链路路由表项标记为无穷大,表示该路径已经失效,并向邻居A路由器通告,依次毒化各个路由器,告诉邻居10.4.0.0这个网络已经失效,不再接收更新信息,从而避免了路由环路。
4、毒性逆转(也称为反向中毒):结合上面的例子,当路由器B看到到达网络10.4.0.0的度量值为无穷大的时候,就发送一个叫做毒化逆转的更新信息给C路由器,说明10.4.0.0这个网络不可达到,这是超越水平分割的一个特例,这样保证所有的路由器都接受了毒化的路由信息。
5、控制更新时间:当路由表中的某个条目所指网络消失时,路由器并不会立刻的删除该条目并学习新条目,而是严格按照我们前面所介绍的计时器时间现将条目设置为无效接着是挂起,在240秒时才删除该条目,这么做其实是为了尽可能的给予一个时间等待发生改变的网络恢复。比如收到从邻居发送来的更新信息,包含一个比原来路径具有更好度量值的路由,就标记为可以访问,并取消抑制计时器。
6、触发更新:因网络拓扑发生变化导致路由表发生改变时,路由器立刻产生更新通告直连邻居,不在需要等待30秒的更新周期,这样做是为了尽可能的将网络拓扑的改变通告给其他人。

定时器
RIP中一共使用了4个定时器:
updatetimer,timeourtimer,garbagetimer,holddowntimer。
Updatetimer用于每30秒发送路由更新报文。
Timeouttimer用于路由信息失效前的180秒的计时,每次收到同一条路由信息的更新信息就将该计数器复位。
Garbagetimer和holddowntimer同时用于将失效的路由信息删除前的计时;在holddowntimer的时间内,失效的路由信息不能被接收到的新信息更新;在garbagetimer计时器超时后,失效的路由信息被删除。
另外,在触发更新中,更新信息会需要1到5秒的随机延迟以后才被发出,这里也需要一个计时器。

RIPv2概述
RIP-v2不是一个新的协议,它只是在RIPv1协议的基础上增加了一些扩展特性,以适用于现代网络的路由选择环境。这些扩展特性有:
>每个路由条目都携带自己的子网掩码
>路由选择更新更具有认证功能
>每个路由条目都携带下一跳地址
>外部路由标志
>组播路由更新
最重要的一项是路由更新条目增加了子网掩码的字段,因而RIP协议可以使用可变长的子网掩码,从而使RIP-V2协议变成了一个无类别的路由协议。

RIPv1、v2区别
1.RIPv1是有类路由协议,RIPv2是无类路由协议
2.RIPv1不能支持VLSM,RIPv2可以支持VLSM
3.RIPv1没有认证的功能,RIPv2可以支持认证,并且有明文和MD5两种认证。
4.RIPv1没有手工汇总的功能,RIPv2可以在关闭自动汇总的前提下,进行手工汇总。
5.RIPv1是广播更新,RIPv2是组播更新。
6.RIPv1对路由没有标记的功能,RIPv2可以对路由打标记(tag),用于过滤和做策略。
7.RIPv1发送的updata最多可以携带25条路由条目,RIPv2在有认证的情况下最多只能携带24条路由。
8.RIPv1发送的updata包里面没有next-hop属性,RIPv2有next-hop属性,可以用于路由更新的重定。

RIP路由实例配置
四个位于不同地理位置的子网通过远程电缆连接在一起,现在要求使用RIP协议完成整个路由选择的配置



根据拓扑结构图的要求,正确配置各路由器的各接口地址。
RIP路由配置
路由器R1的RIP配置:
R1#config terminal
R1(config)#router rip
R1(config-router)#network 192.168.1.0
R1(config-router)#network 192.168.10.0
R1(config-router)#network 192.168.12.0
R1(config-router)#end
路由器R2的RIP配置:
R2#config terminal
R2(config)#router rip
R2(config-router)#network 192.168.2.0
R2(config-router)#network 192.168.10.0
R2(config-router)#network 192.168.13.0
R2(config-router)#end
路由器R3的RIP配置:
R3#config terminal
R3(config)#router rip
R3(config-router)#network 192.168.3.0
R3(config-router)#network 192.168.11.0
R3(config-router)#network 192.168.12.0
R3(config-router)#end
路由器R4的RIP配置:
R4#config terminal
R4(config)#router rip
R4(config-router)#network 192.168.13.0
R4(config-router)#network 192.168.4.0
R4(config-router)#network 192.168.11.0
R3(config-router)#end
查看路由表
在特权模式下,使用show ip route命令查看路由表。

最前面的C或R代表路由项的类别,C是直连,R代表是RIP协议生成的。
第二部分是目的网段。
[120/1]:表示RIP路由协议的管理距离为120,1则是路由器的度量值,即跳数。
第四部分表示下一跳的IP地址。
第五部分说明了路由产生的时间。
第六部分表示该路由所使用的接口。
测试网络连通性。
各路由器使用ping命令测试网络连通性

OSPF协议
1 OSPF术语
OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(interior Gateway Protocol,简称IGP),用于在单一自治系统(autonomous system,AS)内决策路由。是对链路状态路由协议的一种实现,故运作于自治系统内部。著名的迪克斯加算法被用来计算最短路径树。与RIP相比,OSPF是链路状态协议,而RIP是距离矢量协议。不同厂商管理距离不同,思科OSPF的协议管理距离(AD)是110,华为OSPF的协议管理距离是150。
链路是路由器接口的另一种说法,因此OSPF也称为接口状态路由协议。OSPF通过路由器之间通告网络接口的状态来建立链路状态数据库,生成最短路径树,每个OSPF路由器使用这些最短路径构造路由表。
1.1 Router-ID
如果路由器之间分不清谁是谁,没有办法确定各自的身份,那么通告的链路状态就是毫无意义的,所以必须给每一个OSPF路由器定义一个身份,就相当于人的名字,这就是Router-ID,并且Router-ID在网络中绝对不可以有重名,否则路由器收到的链路状态,就无法确定发起者的身份,也就无法通过链路状态信息确定网络位置,OSPF路由器发出的链路状态都会写上自己的Router-ID,可以理解为该链路的签名,不同路由器产生的链路状态,签名决不会相同。
每一台OSPF路由器只有一个Router-ID,Router-ID使用IP地址的形式来表示,确定Router-ID的方法为:
手工指定Router-ID

下例是某路由器的一段配置,可以看出该路由器的router-id为手工指定。
#
ospf 1 router-id 10.10.190.255
import-route static
area 0.0.0.0
network 10.10.168.12 0.0.0.3
#
2.路由器上活动loopback接口中IP地址最大的,也就是数字最大的,如C类地址优先于B类地址,一个非活动的接口的IP地址是不能被选为Router-ID的。
3.如果没有活动的loopback接口,则选择活动物理接口IP地址最大的。

Router-ID只在OSPF启动时计算,或者重置OSPF进程后计算。

1.2 COST
cost指接口上运行ospf协议所需的开销。ospf路由条目存在cost值,当数据包到达路由器后,如果存在多条到达同意目的段的ospf路由条目,路由表中出现的将是cost值最小的路由条目。如果这些条目的cost值一样,则多条路径可实现数据包的负载均衡。
OSPF使用接口的带宽来计算cost。例如一个10 Mbit/s的接口,计算Cost的方法为:100M/10M=0(其中100M为参考带宽,这个可以修改,但一般不推荐,因为参考带宽是一个全局性指标),所以一个10 Mbits/s的接口,OSPF认为该接口的Metric值为10,需要注意的是,计算中,带宽的单位取bit/s,而不是Kbits/s。如果路由器要经过两个接口才能到达目标网络,那么很显然,两个接口的Cost值要累加起来,才算是到达目标网络的Cost值,所以Cost值累加起来,在累加时,同时EIGRP一样,只计算出接口,不计算进接口。





OSPF会自动计算接口上的Cost值,但也可以通过手工指定该接口的Cost值,手工指定的优先于自动计算的值。OSPF计算的Cost,同样是和接口带宽成反比,带宽越高,Cost值越小。到达目标相同的Cost值的路径,可以执行负载均衡,最多6条链路同时执行负载均衡。
#
interface Vlanif2
ip address 192.168.1.1 255.255.255.0
ospf cost 2 //手工指定接口的cost值

1.3 链路(Link)
就是路由器上的接口,在这里,应该指运行在OSPF进程下的接口。

1.4 链路状态(Link-State)
链路状态(LSA)就是OSPF接口上的描述信息,例如接口上的IP地址,子网掩码,网络类型,Cost值等等。
OSPF路由器之间交换的并不是路由表,而是链路状态(LSA),OSPF通过获得网络中所有的链路状态信息,从而计算出到达每个目标精确的网络路径。OSPF路由器会将自己所有的链路状态毫不保留地全部发给邻居,邻居将收到的链路状态全部放入链路状态数据库(Link-State Database),邻居再发给自己的所有邻居,并且在传递过程中,绝对不会有任何更改。通过这样的过程,最终,网络中所有的OSPF路由器都拥有网络中所有的链路状态,并且所有路由器的链路状态应该能描绘出相同的网络拓扑。
比如,如今要计算一条铁路图,如上海地铁二号某段的图,如果不直接将该图给别人看,图好比是路由表,如今只是报给别人各个站的信息,该信息好比是链路状态,通过告诉别人各个站左边一站是什么,右边一站是什么,别人也能通过该信息(链路状态),画出完整的线路图(路由表),如得到如下各站信息(链路状态):
从以上计算过程可以知道,因为得到各站的信息,就能画出整条线路图,而OSPF也同样根据路由各接口的信息(链路状态),计算出网络拓扑图,OSPF之间交换链路状态,就像上面交换换各站信息,而不像RIP和EIGRP直接交换路由表,交换路由表,就等于直接给人家看线路图,可见OSPF的智能算法,比距离矢量协议对网络有更精确的认知。

1.5 OSPF区域
因为OSPF路由器之间会将所有的链路状态(LSA)相互交换,毫不保留,当网络规模达到一定程度时,LSA将形成一个庞大的数据库,势必会给OSPF计算带来巨大的压力;为了能够降低OSPF计算的复杂程度,缓存计算压力,OSPF采用分区域计算,将网络中所有OSPF路由器划分成不同的区域,每个区域负责各自区域精确的LSA传递与路由计算,然后再将一个区域的LSA简化和汇总之后转发到另外一个区域,这样一来,在区域内部,拥有网络精确的LSA,而在不同区域,则传递简化LSA。

OSPF协议区域
·OSPF使用Area实现了分层——两层模式
·区域号是一个32bit的整数
-定义为IP address格式
-也可以用一个十进制整数表示
-(ie.Area 0.0.0.0,or Area 0)
·区域0.0.0.0保留为骨干区
·非骨干区一定要连接到骨干区

区域的划分为了能够尽量设计成无环网络,所以采用了Hub-Spoke的拓扑架构,也就是采用核心与分支的拓扑,如下图:



区域的命名可以采用整数数字,如1、2、3、4,也可以采用IP地址的形式,0.0.0.1、0.0.0.2,因为采用了Hub-Spoke的架构,所以必须定义出一个核心,然后其它部分都与核心相连,OSPF的区域0就是所有区域的核心,称为BackBone区域(骨干区域),而其它区域称为Normal 区域(常规区域),在理论上,所有的常规区域应该直接和骨干区域相连,常规区域只能和骨干区域交换LSA,常规区域与常规区域之间即使直连也无法互换LSA,如上图Area 1、Area 2、Area 3、Area 4只能和Area 0互换LSA,然后再由Area 0互换LSA,然后再由Area 0转发,Area 0就像是一个中转站,两个常规区域需要交换LSA,只能先交给Area 0,再由Area 0转发,而常规区域之间无法互相转发。
OSPF区域是基于路由器的接口划分的,而不是基于整台路由器划分的,一台路由器可以属于单个区域,也可以属于多个区域,如下图



如果一台OSPF路由器属于单个区域,即该路由器所有接口都属于同一个区域,那么这台路由器称为Internal Router(IR),如上图中的R2,R3和R4;
如果一台OSPF路由器属于多个区域,即该路由器的接口不都属于一个区域,那么这台路由器称为Area Border Router(ABR),如上图中的R1,ABR可以将一个区域的LSA汇总后转发至另一个区域;
如果一台OSPF路由器将外部路由协议重分布进OSPF,那么这台路由器称为Autoomous System Boundary Router(ASBR),如上图中,R5将EIGRP重分进OSPF,那么R5就是ASBR,但是如果只是将OSPF重分布进其它路由协议,则不能称为ASBR。
下例是某台路由器的一段配置,可以看出该路由器充当ASBR的角色,因为它引入了静态路由。
#
ospf 1 router-id 10.10.190.255
import-route static
area 0.0.0.0
network 10.10.168.12 0.0.0.3
#
从它的邻居路由器上也可以看出它是一台ASBR路由器:



可以配置任何OSPF路由器成为ABR或ASBR。
由于OSPF有着多种区域,所有OSPF的路由在路由表中也以多种形式存在,共分为以下几种:
·如果是同区域的路由,叫做Intra-Area Route,在路由表中使用O来表示;
·如果是不同区域的路由,叫做Inter-Area Route或Summary Route,在路由表中使用OIA来表示;
·如果并非OSPF的路由,或者是不同OSPF进程的路由,只是被重分布到OSPF的,叫做External Route,在路由表中使用O E2或OE 1来表示。
·当存在多种路由可以到达同意目的地时,OSPF将根据先后顺序来选择要使用的路由,所有路由的先后顺序为:
Intra-Area — Inter-Area — External E1 — External E2,即 O —— O IA — O E1 — O E2。

1.6 邻居(Neighbor)
路由器会将链路状态数据库中所有的内容毫不保留地发给所有邻居,要想在OSPF路由器之间交换LSA,必须先形成OSPF邻居,OSPF邻居靠发送Hello包来建立和维护,Hello包会在启动了OSPF的接口上周期性发送,在不同的网络中,发送Hello包的间隔也会不同,当超过4倍的Hello时间,也就是Dead时间过后还没有收到邻居的Hello包,邻居关系将会断开。
下图是hello和dead时间:

两台OSPF路由器必须满足4个条件,才能形成OSPF邻居,4个必备条件如下:
·Area-id(区域号码)即路由器之间必须配置在相同的OSPF区域,否则无法形成邻居;
·Hello and Dead Interval(Hello时间与Dead时间)即路由器之间的Hello时间和Dead时间必须一致,否则无法形成邻居。
·Authentication(认证)路由器之间必须配置相同的认证密码,如果密码不同,则无法形成邻居。
·Stub Area Flag(末节标签)路由器之间的末节标签必须一致,即处在相同的末节区域内,否则无法形成邻居。

1.7 邻接(Adjacency)
两台OSPF路由器能够形成邻居,但并不一定能相互交换LSA,只要能交换LSA,关系则为邻接(Adjacency)。邻居之间只交换Hello包,而邻接(Adjacency)之间不仅交换Hello包,还要交换LSA

1.8 DR/BDR
当多台OSPF路由器连到同一个多路访问网段时,如果每台路由器之间都相互交换LSA,那么该网段将充满着众多LSA条目,为了能够尽量减少LSA的传播数量,通过在多路访问网段中选择出一个核心路由器,称为DR(Designated Router),网段中所有的OSPF路由器都和DR互换LSA,这样一来,DR就会拥有所有的LSA,并且将所有的LSA转发给每一台路由器;DR就像是该网段的LSA中转站,所有的路由器都与该中转站互换LSA,如果DR失效后,那么就会造成LSA的丢失与不完整,所以在多路访问网络中除了选举出DR之外,还会选举出一台路由器作为DR的备份,称为BDR(Backup Designated Router),BDR在DR不可用时,代替DR的工作,而既不是DR,也不是BDR的路由器称为Drother,事实上,Dother除了和DR互换LSA之外,同时还会和BDR互换LSA。



其实,DR与BDR并没有任何本质与功能的区别,只有在多路访问的网络环境,才需要DR和BDR,DR与BDR的选举是在一个二层网段内选举的,即在多个路由器互连的接口范围内,与OSPF区域没有任何关系,一个区域可能有多个多路访问网段,那么就会存在多个DR和BDR,但一个多路访问网段,只能有一个DR和BDR。

选举DR和BDR的规则为:
*比较接口优先级
选举优先级最高的为DR,优先级数字越大,表示优先级越高,被选为DR的几率就越大,次优先级的为BDR,优先级范围是0-255,默认为1,优先级为0表示没有资格选举DR和BDR。
*Route-Id大小
如果在优先级都相同的情况下,Route-Id最大的成为DR,其次是BDR,数字越大,被选为DR的几率就越大。
因为所有路由器都能与DR和BDR互换LSA,所以所有路由器都与DR和BDR都是邻接(Adjacency)关系,而Drother与Drother之间无法互换LSA,所以Drother与Drother之间只是邻居关系。
在一个多路访问网络中,选举DR和BDR是有时间限制的,该时间为Wait时间,默认为4倍的Hello时间,即与Dead时间相同,如果OSPF路由器在超过Wait时间后也没有其他路由器与自己竞争DR与BDR没有失效的情况下,不会进行重新选举,也就是在选举出DR与BDR之后,即使有更高优先级的路由器加入网络,也不会影响DR与BDR的角色,在越出选举时间(Wait时间)后,只有DR与BDR失效后,才会重新选举。DR失效后,会同时重新选举DR与BDR,而在BDR失效后,只会重新选举BDR。
DR和BDR才能接收和传递目标地址为224.0.0.6的数据包。
由此可见,Drother路由器将数据包发向目标地址224.0.0.6,只能被DR和BDR接收,其他Drother不能接收;而DR和BDR将数据包发向目标地址224.0.0.5,可以被所有路由器接收。

ACL访问控制列表
访问控制列表(Access Control List,ACL)是路由器和交换机接口的指令列表,用来控制端口进出的数据包。ACL适用于所有的被路由协议,如IP、IPX、AppleTalk等。
信息点间通信和内外网络的通信都是企业网络中必不可少的业务需求,为了保证内网的安全性,需要通过安全策略来保障非授权用户只能访问特定的网络资源,从而达到对访问进行控制的目的。简而言之,ACL可以过滤网络中的流量,是控制访问的一种网络技术手段。
配置ACL后,可以限制网络流量,允许特定设备访问,指定转发特定端口数据包等。如可以配置ACL,禁止局域网内的设备访问外部公共网络,或者只能使用FTP服务。ACL既可以在路由器上配置,也可以在具有ACL功能的业务软件上进行配置。
ACL是物联网中保障系统安全性的重要技术,在设备硬件层安全基础上,通过对在软件层面对设备间通信进行访问控制,使用可编程方法指定访问规则,防止非法设备破坏系统安全,非法获取系统数据。

作用
ACL可以限制网络流量、提高网络性能。例如,ACL可以根据数据包的协议,指定数据包的优先级。
ACL提供对通信流量的控制手段。例如,ACL可以限定或简化路由更新信息的长度,从而限制通过路由器某一网段的通信流量。
ACL是提供网络安全访问的基本手段。ACL允许主机A访问人力资源网络,而拒绝主机B访问。
ACL可以在路由器端口处决定哪些类型的通信流量被转发或被阻塞。例如,用户可以允许E-mail通信流量被路由,拒绝所有的Telnet通信流量。
例如,某部门要求只能使用WWW这个功能,就可以通过ACL实现;又例如,为了某部门的保密性,不允许其访问外网,也不允许外网访问它,就可以通过ACL实现。

3P原则
记住3P原则,您便记住了在路由器上应用ACL的一般规则。您可以为每种协议(per protocol)、每个方向(per direction)、每个接口(per interface)配置一个ACL;
每种协议一个ACL:要控制接口上的流量,必须为接口上启用的每种协议定义相应的ACL。
每个方向一个ACL:一个ACL只能控制接口上一个方向的流量。要控制入站流量和出站流量,必须分别定义两个ACL。
每个接口一个ACL:一个ACL只能控制一个接口(例如快速以太网0/0)上的流量。
ACL的编写可能相当复杂而且极具挑战性。每个接口上都可以针对多种协议和各个方向进行定义。示例中的路由器有两个接口配置了IP、Appletalk和IPX。该路由器可能需要12个不同的ACL—协议数(3)乘以方向数(2),再乘以端口数(2)。

执行过程
一个端口执行哪条ACL,这需要按照列表中的条件语句执行顺序来判断。如果一个数据包的报头跟表中某个条件判断语句相匹配时,它才被交给ACL中的下一条判断语句进行比较。如果匹配(假设为允许发送),则不管是第一条还是最后一条语句,数据都会立即发送到目的接口。如果所有的ACL判断语句都检测完毕,仍没有匹配的语句出口,则该数据包将视为被拒绝而被丢弃。这里要注意,ACL不能对本路由器产生的数据包进行控制。
如果设备使用了TCAM,比如aute U3052交换机,那么所有的ACL是并行执行的。举例来说,如果一个端口设定了多条ACL规则,并不是逐条匹配,而是一次执行所有ACL语句。

ACL分类
目前有三种主要的ACL:标准ACL、扩展ACL及命名ACL。其他的还有标准MAC ACL、时间控制ACL、以太协议ACL、IPv6 ACL等。
标准的ACL使用1-99以及1300-1999之间的数字作为表号,扩展的ACL使用100-199以及2000-2999之间的数字作为表号。
标准ACL可以阻止来自某一网络的所有通信流量,或者允许来自某一特定网络的所有通信流量,或者拒绝某一协议簇(比如IP)的所有通信流量。
扩展ACL比标准ACL提供了更广泛的控制范围。例如,网路管理员如果希望做到“允许外来的Web通信流量通过,拒绝外来的FTP和Telnet等通信流量”,那么,他可以使用扩展ACL来到达目的,标准ACL不能控制这么精确。

在标准与扩展访问控制列表中均要使用表号,而在命名访问控制列表中使用一个字母或数字组合的字符串来代替前面所使用的数字。使用命名访问控制列表可以用来删除某一条特定的控制条目,这样可以让我们在使用过程中方便地修改。在使用命名访问控制列表时,要求路由器的IOS在11.2以上的版本,并且不能以同一名字命名多个ACL,不同类型的ACL也不能使用相同的名字。
随着网络的发展和用户要求的变化,从IOS 12.0开始,思科(Cisco)路由器就增加了一种基于时间的访问列表。通过它,可以根据一天中的不同时间,或者根据一星期中的不同日期,或二者相结合来控制网络数据包的转发。这种基于时间的访问列表,就是在原来的标准访问列表和扩展访问列表中,加入有效的时间范围来更合理有效地控制网络。首先定义一个时间范围,然后在原来的各种访问列表的基础上应用它。
基于时间访问列表的设计中,用time-range命令来指定时间范围的名称,然后用absolute命令,或者一个或多个periodic命令来具体定义时间范围。

基于时间
·概述
一个很通常的需求,就是在某个公司里,有时希望限制员工在某个时间范围内才可以访问网页,即HTTP服务,或其他服务,在时间范围之外,就不能访问,那么这样的需求,就可以通过配置基于时间的ACL来实现。
要通过ACL来限制用户在规定的时间范围内访问特定的服务,首先设备上必须配置好正确的时间。在相应的时间要允许相应的服务,这样的命令,在配置ACL时,是正常配置的,但是,如果就将命令正常配置之后,默认是在所有时间内允许的,要做到在相应的时间内允许,还必须为该命令加上一个时间限制,这样就使得这条ACL命令只在此时间范围内才能生效。而要配置这样的时间范围,是通过配置time-range来实现的,在time-range中定义好时间,再将此time-range跟在某ACL的条目之后,那么此条目就在该时间范围内其作用,其它时间是不起作用的。
在定义time-range时,常用的时间简单分为两种,第一种叫做绝对时间(absolute),即这个时间只生效一次,比如2010年1月1日15:00;另一种时间叫做周期时间(periodic),即这个时间是会多次重复的,比如每周一,或者每周一到周五。



1.应用ACL
r1(config)#int f0/1
r1(config-if)#ip access-group 150 out
1.测试时间范围内的流量情况
(1)查看当前R1的时间
r1#sh clock
14:34:33.002 GMT Thu Oct 2009
r1#
说明:当前时间为周四14:34,即在所配置的时间范围内。
(2)测试R2向R4发起telnet会话
r2#telnet 14.1.1.4
Trying 14.1.1.4
%Destination unreachable;gateway or host down
r2#
说明:可以看到,在规定的时间范围内,R2向R4发起telnet会话是被拒绝的。

(3)测试除telnet外的其它流量
r2#ping 14.1.1.4
Type escape sequence to abort.
Sending 5,100-byte ICMP Echos to 14.1.1.4,timeout is 2 seconds:
!!!!!
Success rate is 100 percent(5/5),round-trip min/avg/max=1/2/4 ms
r2#
说明:可以看到,在规定的时间范围内,除了telnet之外,其它流量不受限制。
(4)测试除R2之外的设备telnet情况
r3#telnet 14.1.1.4
Trying 14.1.1.4…Open
r4>
说明:可以看到,除R2之外,其它设备telnet并不受限制。
1.测试时间范围外的流量情况
(1)查看当前R1的时间
r1#sh clock
15:01:15.206 GMT Thu Oct 1 2009
r1#
说明:当前时间为周四15:01,即在所配置的时间范围之外。
(2)测试R2向R4发起telnet会话
r2#telnet 14.1.1.4
Typing 14.1.1.4…Open
r4>
说明:在时间范围之外,所限制的流量被放开。

正确放置
ACL通过过滤数据包并且丢弃不希望抵达目的地的数据包来控制通信流量。然而,网络能否有效地减少不必要的通信流量,这还要取决于网络管理员把ACL放置在哪个地方。
假设在的一个运行TCP/IP协议的网络环境中,网络只想拒绝从RouterA的T0接口连接的网络到RouterID的E1接口连接的网络的访问,即禁止从网络1到网络2的访问。
根据减少不必要通信流量的来源处,即RouterA。如果网管员使用标准ACL来进行网络流量限制,因为标准ACL只能检查源IP地址,所以实际执行情况为:凡事检查到源IP地址和网络1匹配的数据包将会被丢掉,即网络1到网络2、网络3和网络4的访问都将被禁止。由此可见,这个ACL控制方法不能达到网管员的目的。同理,将ACL放在RouterB和RouterC上也存在同样的问题。只有将ACL放在连接目标网络的RouterID上(E0接口),网络才能准确实现网管员的目标。由此可以得出一个结论:标准ACL要尽量靠近目的端
网络管理员如果使用扩展ACL来进行上述控制,则完全可以把ACL放在RouterA上,因为扩展ACL能控制源地址(网络1),也能控制目的地址(网络2),这样从网络1到网络2访问的数据包在RouterA上就被丢弃,不会传到RouterB、RouterC和RouterD上,从而减少不必要的网络流量。因此,我们可以得出另一个结论:扩展ACL要尽量靠近源端。ACL的主要命令描述access-list 定义访问控制列表参数ip access-group 指派一个访问列表到一个接口ip access-list extended定义一个扩展访问控制列表Remark注释一个访问控制列表show ip access-list显示已配置的访问控制列表。

定义规范
(1)ACL的列表号指出了是那种协议的ACL。各种协议有自己的ACL,而每个协议的ACL又分为标准ACL和扩展ACL。这些ACL是通过ACL列表号区别的。如果在使用一种访问ACL时用错了列表号,那么就会出错误。
(2)一个ACL的配置是每协议、每接口、每方向的。路由器的一个接口上每一种协议可以配置进方向和出方向两个ACL。也就是说,如果路由器上启用了IP和IPX两种协议栈,那么路由器的一个接口上可以配置IP、IPX两种协议,每种协议进出两个方向,共四个ACL。
(3)ACL的语句顺序决定了对数据包的控制顺序。在ACL中各描述语句的放置顺序是很重要的。当路由器决定某一数据包是被转发还是被阻塞时,会按照各项描述语句在ACL中的顺序,根据各描述语句的判断条件,对数据报进行检查,一旦找到了某一匹配条件就结束比较过程,不再检查以后的其他条件判断语句。
(4)最有限制性的语句应该放在ACL语句的首行。把最有限制性的语句放在ACL语句的首行或者语句中靠近前面的位置上,把“全部允许”或者“全部拒绝”这样的语句放在末行或接近末行,可以防止出现诸如本该拒绝(放过)的数据包被放过(拒绝)的情况。
(5)新的表项只能被添加到ACL的末尾,这意味着不可能改变已有访问控制列表的功能。如果必须改变,只有先删除已存在的ACL,然后创建一个新ACL,将新ACL应用到相应的接口上。
(6)在将ACL应用到接口之前,一定要先建立ACL。首先在全局模式下建立ACL,然后把它应用在接口的出方向上。在接口上应用一个不存在的ACL是不可能的。
(7)ACL语句不能被逐条的删除,只能一次性删除整个ACL。
(8)在ACL的最后,有一条隐含的“全部拒绝”的命令,所以在ACL里一定至少有一条“允许”的语句。
(9)ACL只能过滤穿过路由器的数据流量,不能过滤由路由器上发出的数据包。
(10)在路由器选择进行以前,应用在接口进入方向的ACL起作用。
(11)在路由器选择决定以后,应用在接口离开方向的ACL起作用。

常见问题
1.“ACL的最后一条语句都是隐式拒绝语句”是什么意思?
每个ACL的末尾都会自动插入一条隐含的deny语句,虽然ACL中看不到这条语句,它仍起作用。隐含的deny语句会阻止所有流量,以防不受欢迎的流量意外进入网络。
1.配置ACL后为什么没有生效?
在创建访问控制列表之后,必须将其应用到某个接口才可开始生效。ACL控制的对象是进出接口的流量。

命令格式
access-list命令
(1)标准访问列表
access-list access-list-number {permit | deny}{source [source-wildcard] | any}
命令解释如下。
access-list:访问列表命令。
access-list-number:访问列表号码,值为1-99
permit:允许
deny:拒绝
source:源IP地址。
source-wildcard:源IP地址的通配符。
(2)扩展访问列表
access-list access-list-number { permit | deny } {protocol \ protocol-keyword }:可使用的协议,包括IP、ICMP、IGRP、EIGRP、OSPF等。
destination destination-wild:目的IP地址,格式与源IP地址相同。
protocol-specific options:协议制定的选项。
log:记录有关数据报进入访问列表的信息。

NAT技术
NAT(Network Address Translation,网络地址转换)是1994年提出的。当在专用内部的一些主机本来已经分配到了本地IP地址(即仅在本专用网内使用的专用地址),但现在又想和因特网的主机通信(并不需要加密)时,可使用NAT方法。
这种方法需要在专用网连接到因特网的路由器上安装NAT软件。装有NAT软件的路由器叫做NAT路由器,它至少有一个有效的外部全球IP地址。这样,所有使用本地地址的主机在和外界通信时,都要在NAT路由器上将其本地地址转换成全球IP地址,才能和因特网连接。
另外,这种通过使用少量的公有IP地址代表较多的私有IP地址的方式,将有助于减缓可用的IP地址空间的枯竭。在RFC1632中有对NAT的说明。

NAT功能
NAT不仅能解决了IP地址不足的问题,而且还能够有效地避免来自网络外部的×××,隐藏并保护网络内部的计算机
1、宽带分享:这是NAT主机的最大功能;
2、安全防护:NAT之内的PC联机到Internet上面时,他所显示的IP是NAT主机的公共IP,所以Client端的PC当然就具有一定程度的安全了,外界在进行portscan(端口扫描)的时候,就侦测不到源Client端的PC。

NAT的实现方式
NAT的实现有三种,即静态转换Static Nat、动态转换Dynamic Nat和端口多路复用Overload。
静态转换是指将内部网络的私有IP地址转换为公有IP地址,IP地址对是一对一的,是一成不变的,某个私有IP地址只转换为某个公有IP地址。借助于静态转换,可以实现外部网络对内部网络中某些特定设备(如服务器)的访问。
动态转换是指将内部网络的私有IP地址转换为公用IP地址时,IP地址是不确定的,是随机的,所有被授权访问上Internet的私有IP地址可随机转换为任何指定的合法IP地址。也就是说,只要指定哪些内部地址可以转换,以及用哪些合法地址作为外部地址时,就可以进行动态转换。动态转换可以使用多个合法外部地址集。当ISP提供的合法IP地址略少于网络内部的计算机数量时。可以采用动态转换的方式。

端口多路复用(Port address Translation,PAT)是指改变外出数据包的源端口并进行端口转换,即端口地址转换(PAT,Port Address Translation)采用端口多路复用方式。内部网络的所有主机均可共享一个合法外部IP地址实现对Internet的访问,从而可以最大限度地节约IP资源。同时,又可隐藏网络内部的所有主机,有效避免来自internet的×××。因此,目前网络中应用最多的就是端口多路复用方式。
ALG(Application Level Gateway),即应用程序级网关技术:传统的NAT技术只对IP层和传输层头部进行转换处理,但是一些应用层协议,在协议数据报文中包含了地址信息。为了使得这些应用也能透明地完成NAT转换,NAT使用一种称作ALG的技术,它能对这些应用程序在通信时所包含的地址信息也进行相应的NAT转换。例如:对于FTP协议的PORT/PASV命令、DNS协议的“A”和“PTR” queries命令和部分ICMP消息类型等都需要相应的ALG来支持。
如果协议数据报文中不包含地址信息,则很容易利用传统的NAT技术来完成透明的地址转换功能,通常我们使用的如下应用就可以直接利用传统的NAT技术:HTTP、TELNET、FINGER、NTP、NFS、ARCHIE、RLOGIN、RSH、RCP等。

·NAT的技术背景
要真正了解NAT就必须先了解现在IP地址的适用情况,私有IP地址是指内部网络或主机的IP地址,公有IP地址是指在因特网上全球唯一的IP地址。RFC 1918为私有网络预留出了三个IP地址块,如下:
A类:10.0.0.0-10.255.255.255
B类:172.16.0.0-172.31.255.255
C类:192.168.0.0-192.168.255.255
上述三个范围内的地址不会出现在因特网上被分配,因此可以不必向ISP或注册中心申请而在公司或企业内部自由使用。
随着接入Internet的计算机数量的不断猛增,IP地址资源也就愈加显得捉襟见肘。事实上,除了中国教育和科研计算机网(CERNET)外,一般用户几乎申请不到整段的C类IP地址。在其他ISP那里,即使是拥有几百台计算机的大型局域网用户,当他们申请IP地址时,所分配的地址也不过只有几个或几十个IP地址。显然,这样少的IP地址根本无法满足网络用户的需求,于是也就产生了NAT技术。
虽然NAT可以借助于某些代理服务器来实现,但考虑到运算成本和网络性能,很多时候都是在路由器上来实现。

·NAPT
NAPT(Network Address Port Translation),即网络端口地址转换,可将多个内部地址映射为一个合法公网地址,但以不同的协议端口号与不同的内部地址相对应,也就是<内部地址+内部端口>与<外部地址+外部端口>之间的转换。NAPT普遍用于接入设备中,它可以将中小型的网络隐藏在一个合法的IP地址后面。NAPT也被称为“多对一”的NAT,或者叫PAT(Port Address Translations,端口地址转换)、地址超载(address overloading)。
NAPT与动态地址NAT不同,它将内部连接映射到外部网络中的一个单独的IP地址上,同时在该地址上加上一个由NAT设备选定的TCP端口号。NAPT算得上是一种较流行的NAT变体,通过转换TCP或UDP协议端口号以及地址来提供并发性。除了一对源和目的IP地址之外,这个表还包括一对源和目的协议端口号,以及NAT盒使用的一个协议端口号。
NAPT的主要优势在于,能够使用一个全球有效IP地址获得通用性。主要缺点在于其通信仅限于TCP或UDP。当所有通信都采用TCP或UDP,NAPT允许一台内部计算机访问多台外部计算机,并允许多台内部主机访问同一台外部计算机,相互之间不会发生冲突。

NAT工作原理
借助于NAT,私有(保留)地址的“内部”网络通过路由器发送数据包时,私有地址被转换成合法的IP地址,一个局域网只需使用少量IP地址(甚至是1个)即可实现私有地址网络内所有计算机与Internet的通信需求。
NAT将自动修改IP报文的源IP地址和目的IP地址,IP地址校验则在NAT处理过程中自动完成。有些应用程序将源IP地址嵌入到IP报文的数据部分中,所以还需要同时对报文的数据部分进行修改,以匹配IP头中已经修改过的源IP地址。否则,在报文数据部分嵌入IP地址的应用程序就不能正常工作。
1、如图这个client(终端)的gateway(网关)设定为NAT主机,所以当要连上Internet的时候,该封包就会被送到NAT主机,这个时候的封包Header之source IP(源IP)为192.168.1.100;
2、而透过这个NAT主机,它会将client的对外联机封包的source IP(192.168.1.100)伪装成ppp0(假设为拨接情况)这个接口所具有的公共IP,因为是公共IP了,所以这个封包就可以连上Internet了,同时NAT主机并会记忆这个联机的封包是由哪一个(192.168.1.100)client端传送来的;



3、由Internet传送回来的封包,当然由NAT主机来接收了,这个时候,NAT主机会去查询原本记录的路由信息,并将目标IP由ppp0上面的公共改回原来的192.168.1.100;
4、最后则由NAT主机将封包传送给原先发送封包的Clinet。

配置NAT
在配置NAT(网络地址转换之前),首先需要了解内部本地地址和内部全局地址的分配情况。根据不同的需求,执行以下不同的配置任务。
·内部源地址NAT配置
·内部源地址NAPT配置
·重叠地址NAT配置
·TCP负载均衡

·配置内部源地址静态NAT
当内部网络需要与外部网络通讯时,需要配置NAT,将内部私有IP地址转换成全局唯一IP地址。您可以配置静态或动态的NAT来实现互联互通的目的,或者需要同时配置静态和动态的NAT。
静态NAT,是建立内部本地地址和内部全局地址的一对一永久映射。当外部网络需要通过固定的全局可路由地址访问内部主机,静态NAT就显得十分重要。要配置静态NAT,在全局配置模式中执行以下命令:
命令
作用
R(config)#ip nat inside source static
local-address global-address [permit-inside] [vrf vrf_name]
定义内部源地址静态转换关系
R(config)#interface interface-type
interface-number
进入接口配置模式
R(config-if)#ip nat inside
定义该接口连接内部网络
R(config)#interface interface-type
interface-number

进入接口配置模式
R(config-if)ip nat outside
定义该接口连接外部网络
以上配置较为简单,可以配置多个Inside和outside接口。

·配置内部源地址动态NAT
动态NAT,是建立内部本地地址和内部全局地址池的临时映射关系,过一段时间没有用就会删除映射关系。要配置动态NAT,在全局配置模式中执行以下命令:
命令
作用
R(config)#ip nat pool address-pool
start-address end-address {netmask mask | prefix-length prefix-length}
定义全局IP地址池
R(config)#access-list access-list-number
permit ip-address wildcard

定义访问列表,只有匹配该列表的地址才转换
R(config)#ip nat inside source list access-list-number pool address-pool [vrf vrf_name]
定义内部源地址动态转换关系
R(config)#interface interface-type interface-number
进入接口配置模式
R(config-if)#ip nat inside
定义接口连接内部网络
R(config)#interface interface-type interface-number
进入接口配置模式
R(config-if)#ip nat outside
定义接口连接外部网络
需要注意的是:访问列表的定义,使得只在列表中许可的源地址才可以被转换,必须注意访问列表最后一个规则是否定全部。访问列表不能定义太宽,要尽量准确,否则将出现不可预知的结果。

·配置内部源地址NAPT
传统的NAT一般是指一对一的地址映射,不能同时满足所有的内部网络主机与外部网络通讯的需要。使用NAPT(网络地址端口转换),可以将多个内部本地地址映射到一个内部全局地址。
NAPT分为静态NAPT和动态NAPT。静态NAPT一般应用在将内部网指定主机的指定端口映射到全局地址的指定端口上。而前一小节提及的静态NAT,是将内部主机映射成全局地址。
要配置静态NAPT,在全局配置模式中执行以下命令:
命令
作用
R(config)#ip nat inside source static {UDP|TCP} local-address port global-address
port [permit-inside] [vrf vrf_name]

定义内部源地址静态转换关系
R(config)#interface interface-type interface-number
进入接口配置模式
R(config-if)# ip nat inside
定义该接口连接内部网络
R(config)#interface interface-type interface-number
进入接口配置模式
R(config-if)#ip nat outside
定义接口连接外部网络
NAPT可以使用地址池中的IP地址,也可以直接使用接口的IP地址。一般来说一个地址就可以满足一个网络的地址转换需要,一个地址最多可以提供64512个NAT地址转换。如果地址不够,地址池可以多定义几个地址。

NAT配置实例
在配置网络地址转换的过程之前,首先必须搞清楚内部接口和外部接口,以及在哪个外部接口上启用NAT。通常情况下,连接到用户内部网络的接口是NAT内部接口,而连接到外部网络(如Internet)的接口是NAT外部接口。

·静态地址转换的实现
假设内部局域网使用的IP地址段为192.168.0.1-192.168.0.254,路由器局域网端(即默认网关)的IP地址为192.168.0.1,子网掩码为255.255.255.0。网络分配的合法IP地址范围为61.159.62.128-61.159.62.135,路由器在广域网中的IP地址为61.159.62.129,子网掩码为255.255.255.248可用于转换的IP地址范围为61.159.62.130-61.159.62.134。要求将内部网址192.168.0.2-192.168.0.6分别转换为合法IP地址61.159.62.130-61.159.62.134。
第一步,设置外部端口。
interface serial 0
ip address 61.159.62.129 255.255.255.248
ip nat outside
第二步,设置内部端口
interface ethernet 0
ip address 192.168.0.1 255.255.255.0
ip nat inside
第三步,在内部本地与外部合法地址之间建立静态地址转换。
ip nat inside source static 内部本地地址 外部合法地址。

示例:
ip nat inside source static 192.168.0.2 61.159.62.130 //将内部网络地址 192.168.0.2转换为合法IP地址61.159.62.130
ip nat inside source static 192.168.0.3 61.159.62.131 //将内部网络地址 192.168.0.3转换为合法IP地址61.159.62.131
ip nat inside source static 192.168.0.4 61.159.62.132 //将内部网络地址 192.168.0.4转换为合法IP地址61.159.62.132
ip nat inside source static 192.168.0.5 61.159.62.133 //将内部网络地址 192.168.0.5转换为合法IP地址61.159.62.133
ip nat inside source static 192.168.0.6 61.159.62.134 //将内部网络地址 192.168.0.6转换为合法IP地址61.159.62.134
至此,静态地址转换配置完毕。

·动态地址转换的实现
假设内部网络使用的IP地址段为172.16.100.1-172.16.100.254,路由器局域网端口(即默认网关)的IP地址为172.16.100.1,子网掩码为255.255.255.0。网络分配的合法IP地址范围为61.159.62.128-61.159.62.191,路由器在广域网中的IP地址为61.159.62.129,子网掩码为255.255.255.192,可用于转换的IP地址范围为61.159.62.130-61.159.62.190。要求将内部网址172.16.100.2-172.16.100.254动态转换为合法IP地址61.159.62.130-61.159.62.190。
第一步,设置外部端口.
设置外部端口命令的语法如下:
ip nat outside
示例:
interface serial 0 //进入串行端口 serial 0
ip address 61.159.62.129 255.255.255.192 //将其IP地址指定为61.159.62.129,子网掩码为255.255.255.192
ip nat outside //将串行口serial 0设置为外网端口
注意,可以定义多个外部端口。

第二步,设置内部端口
设置内部接口命名的语法如下:
ip nat inside
示例:
interface ethernet 0 //进入以太网端口 Ethernet 0
ip address 172.16.100.1 255.255.255.0 //将其IP地址指定为172.16.100.1,子网掩码为255.255.255.0
ip nat inside //将Ethernet 0 设置为内网端口。
注意,可以定义多个内部端口。

第三步,定义合法IP地址池。
定义合法IP地址池命令的语法如下:
ip nat pool 地址池名称起始IP地址 终止IP地址子网掩码
其中,地址池名字可以任意设定。
示例:
ip nat pool chinanet,IP范围为61.159.62.130 61.159.62.190 netmask 255.255.255.192 //指明地址缓冲池的名称为chinanet,IP地址范围是61.159.62.130-61.159.62.190,子网掩码为255.255.255.192。需要注意的是,即使掩码为255.255.255.0,也会由起始IP地址和终止IP地址对IP地址池进行限制。
或ip nat pool test 61.159.62.130 61.159.62.190 prefix-length 26
注意,如果有多个合法IP地址范围,可以分别添加。例如,如果还有一段合法IP地址范围为“211.82.216.1-211.82.216.254”,那么,可以再通过下述命令将其添加至缓冲池中。
ip nat pool cernet 211.82.216.1 211.82.216.254 netmask 255.255.255.0

ip nat pool test 211.82.216.1 211.82.216.254 prefix-length 24

第四步,定义内部网络中允许访问Internet的访问列表。
定义内部访问列表命令的语法如下:
access-list 标号 permit 源地址通配符(其中,标号为1-99之间的整数)
access-list 1 permit 172.16.100.0 0.0.0.255 //允许访问Internet的网段为172.16.100.0-172.16.100.255,反掩码为0.0.0.255。需要注意的是,在这里采用的是反掩码,而非子网掩码。反掩码。反掩码与子网掩码的关系为:反掩码+子网掩码=255.255.255.255。例如,子网掩码为255.255.0.0,则反掩码为0.0.255.255;子网掩码为255.0.0.0,则反掩码为0.255.255.255;子网掩码为255.252.0.0,则反掩码为0.3.255.255;子网掩码为255.255.255.192,则反掩码为0.0.0.63。
另外,如果想将多个IP地址段转换为合法IP地址,可以添加多个访问列表。例如,当欲将172.16.98.0-172.16.98.255和172.16.99.0-172.16.99.255转换为合法IP地址时,应当添加下述命令:
access-list2 permit 172.16.98.0 0.0.0.255
access-list3 permit 172.99.0.0 0.0.0.255

示例:ip nat pool chinanet 61.159.62.130 61.159.62.190 netmask 255.255.255.192 //指明地址缓冲池的名称为chinanet,IP地址范围为61.159.62..130-61.159.62.190,子网掩码为255.255.255.192。需要注意的是,即使掩码为255.255.255.0,也会由起始IP地址和终止IP地址对IP地址池进行限制。
或ip nat pool test 61.159.62.130 61.159.62.190 prefix-length 26
注意,如果有多个合法IP地址范围,可以分别添加。例如,如果还有一段合法IP地址范围为“211.82.216.1-211.82.216.254”,那么,可以再通过下述命令将其添加至缓冲池中。
ip nat pool cernet 211.82.216.1 211.82.216.254 netmask 255.255.255.0

ip nat pool test 211.82.216.1 211.82.216.254 prefix-length 24

第五步,实现网络地址转换
在全局设置模式下,将第四步由access-list指定的内部本地地址列表与第三步指定的合法IP地址池进行地址转换。命令语法如下:
ip nat inside source list 访问列表标号 pool 内部合法地址池名字
示例:
ip nat inside source list 1 pool chinanet
如果有多个内部访问列表,可以一一添加,以实现网络地址转换,如
ip nat inside source list 2 pool chinanet
ip nat inside source list 3 pool chinanet
如果有多个地址池,也可以一一添加,以增加合法地址范围,如
ip nat inside source list 1 pool cernet
ip nat inside source list 2 pool cernet
ip nat inside source list 3 pool cernet
至此,动态地址转换设置完毕

·端口复用动态地址转换(PAT)
内部网络使用的IP地址段为10.100.100.1-10.100.100.254,路由器局域网端口(即默认网关)的IP地址为10.100.100.1,子网掩码为255.255.255.0。网络分配的合法IP地址范围为202.99.160.0-202.99.160.3,路由器广域网中的IP地址为202.99.160.1,子网掩码为255.255.255.252,可用于转换的IP地址为202.99.160.2。要求将内部网址10.100.100.1-10.100.100.254转换为合法IP地址202.99.160.2。
第一步,设置外部端口。
interface serial 0
ip address 202.99.160.1 255.255.255.252
ip nat outside
第二步,设置内部端口
interface ethernet 0
ip address 10.100.100.1 255.255.255.0
ip nat inside
第三步,定义合法IP地址池
ip nat pool onlyone 202.99.160.2 202.99.160.2 netmask 255.255.255.252 //指明地址缓冲池的名称为onlyone,IP地址范围为202.99.160.2,子网掩码为255.255.255.252。由于本例只有一个IP地址可用,所以,起始IP地址与终止IP地址均为202.99.160.2。如果有多个IP地址,则应当分别键入起止的IP地址。
第四步,定义内部访问列表
access-list 1 permit 10.100.100.0 0.0.0.255
允许访问internet的网段为10.100.100.0-10.100.100.255,子网掩码为255.255.255.0。需要注意的是,在这里子网掩码的顺序跟平常所写的顺序相反,即0.0.255.255。
第五步,设置复用动态地址转换
在全局模式下,设置在内部的本地地址与内部合法IP地址间建立复用动态地址转换。命令语法如下:
ip nat inside source list 访问列表号 pool 内部合法地址池名字 overload
示例:
ip nat inside source list 1pool onlyone overload //以端口复用方式,将访问列表1中的私有IP地址转换为onlyone IP地址池中定义的合法IP地址。
注意:overload是复用动态地址转换的关键词。
至此,端口复用动态地址转换完成。
还可以这样写:
ip nat inside source list 1 interface serial 0 overload

CIDR技术
概念
超网(supernetting)是与子网类似的概念--IP地址根据子网掩码被分为独立的网络地址和主机地址。但是,与子网把大网络分成若干个小网络相反,它是把一些小网络组合成一个大网络--超网。
超网创建用来解决路由列表超出现有软件和管理人力的问题以及提供B类网络地址空间耗尽的解决办法。超网允许一个路由列表入口表示一个网络集合,就如一个区域代码表示一个区域的电话号码的集合一样。
目前盛行的外部网关协议边界网关协议(BGP)以及开放式最短路径优先(OSPF)路由协议都支持超网技术。
子网划分将一个单一的IP地址划分成多个子网,以延缓大型网络地址(主要是B类)的分配速度。子网划分从20世纪80年代提出以后的确起到了这个作用。但是到了20世纪90年代,子网划分也就无法阻止B类网络地址最好耗尽的趋势。原因很简单,B类地址只有一万六千多个。而人们为中等大小的网络申请地址时,更倾向于使用B类地址,并在其上进行子网划分,以避免由于多个C类地址给网络配置和管理带来的不便。因此,B类地址分配的速度很快,而C类地址的分配速度则慢很多。为了解决B类地址空间紧张的问题,并充分利用C类地址空间(C类网络的数量有2百多万个),人们有提出了超网技术。

超网的功能是将多个连续的c类的网络地址聚合起来映射到一个物理网络上。这样,这个物理网络就可以使用这个聚合起来的c类地址的共同地址前缀作为其网络号。
超网创建用来解决路由列表超出现有软件和管理人力的问题以及提供B类网络地址空间耗尽的解决办法。超网允许一个路由列表入口表示一个网络集合,就如一个区域代码表示一个区域的电话号码的集合一样。
目前盛行的外部网关协议边界网关协议(BGP)以及开放式最短路径优先(OSPF)路由协议都支持超网技术。

优点和不足
超网的优点是可以充分利用C类网络空间资源。在多数情况下,使用超网地址分配乐意使分配的网络空间与实际所需的节点数量相匹配,因而提高了地址空间的利用率。例如,一个4000个节点的物理网络,分配一个B类地址显然是浪费,但C类地址又太小,那么我们可以为该物理网络分配一个4000个节点的物理网络,分配一个B类地址显然是浪费,但C类地址又太小,那么我们可以为该物理网络分配一个由16个连续C类网络构成的地址空间块。
超网方式也带来了新的问题:路由表规模的增长。路由表规模与网络数量成正比。一个物理网络对应多个C类网络地址,使得该网络在路由表对应于多个C类的前缀表项,使路由表过于庞大。路由协议为交换路由信息而带来的开销也急剧增加。这个问题可采用无类型域间路由就(CIDR,Class Inter-Domain-Routing)技术来解决。尽管一个物理网络在路由表中对应多个表项,但所有表项必然指向同一个下一跳地址,因此有可能对表项进行聚合。CIDR技术可以把路由表中连续的C类网络地址聚合的C类网络地址必须是连续的,且地址块的数量为2的幂。聚合以后的CIDR地址块的网络前缀的长度。显然,子网掩码的长度将小于24(C类网络掩码长度)。与子网选路中采用的表示形式一样,CIDR定义得地址块也统一表示成“网络前缀/子网掩码位数”的形式。

CIDR的特点
(1)CIDR消除了传统的A类、B类和C类地址以及划分子网的概念,可以更加有效的分配IP地址空间。CIDR使用各种长度的“网络前缀”来代替分类地址中的网络号和子网号,而不是像分类地址中只能使用1字节、2字节、3字节的网络号。CIDR不再使用“子网”的概念而使用网络前缀,使用IP地址从三级编址又回到了两级编址,即无分类的两级编址。
IP地址::={<网络前缀>,<主机号>}
CIDR也使用“斜线记法”,即在IP地址后写上网络前缀所占的位数(对应子网掩码中1的个数)。
(2)CIDR把网络前缀都相同的连续的IP地址组成“CIDR地址块”,一个CIDR地址块由地址块的起始地址(即地址块中地址数值最小的一个)和地址块中的地址数来定义的。CIDR地址块也可用斜线记法来表示。
由于一个CIDR地址块可以表示很多地址,所以在路由表中就利用CIDR地址块来查找目的网络。这种地址的聚合通常称为路由聚合,它使得路由表中的一个项目可以表示原来传统分类地址的很多个路由。路由聚合也称为构成超网。路由聚合有利于减少路由器之间的路由选择信息的交换,从而提高了整个因特网的性能。

应用举例
一个4000个节点的物理网络通过路由器R连接到Internet,并且被分配了有连续的16个C类网络地址构成的地址空间。为了将该网络作为一个统一的网络进行选路,在路由器R上,可利用CIDR将这16个C类地址的路由表项聚合成一个表项来进行选路。网络中的各路由器路由表中都只需记录一条网络地址的路由表项,而不需要为其中的每一个C类网络地址分别记录单独的表项了。
这种用符合“网络前缀/子网掩码”表示的连续C类地址块被称为CIDR块。作为降低IP地址分配速度以及减少Internet路由器中表项数的一种方法,CIDR技术已经被广泛认同,在地址分配中也被广泛使用。申请Internet地址,从地址分配机构获得的Internet地址往往都是一个CIDR块,而不是传统的分类地址。
实际上,CIDR中并未限制网络地址必须为C类。因此,CIDR提供的的确是一种“无类型”的地址分配方式。在路由表表示及选路操作上,CIDR与子网都是相似的。
IETF将整个IP地址空间中的一部分CIDR块保留用于专用网络,称为专用地址(Private Address)。这些地址不会被Internet地址管理机构分配给Internet中的网络和结点。专用地址不会被Internet地址管理机构分配给Internet中的网络和结点。专用地址不是Internet中的合法地址,因此专用网的地址空间与Internet地址空间是隔离的。这种隔离提供了一种安全手段防止内部网络遭受来自网布的***。当然,隔离也使专用网的内结点不能直接访问Internet,需要在网络入口使用代理或者NAT(网络地址翻译)等机制。

在做ACL时,为了节省开支(即用尽量少的ACL条目)会用到超网技术。因此涉及到超网的计算和划分。下面列举几例说明计算超网的方法:
1.由2048个C类网络组成,从192.24.0.0到192.31.255.0,哪个掩码可表示此地址范围?
192.24.0.0划成2进制为
11000000.00011 000.00000000.00000000
192.31.0.0划成2进制为
11000000.00011 111.00000000.00000000
相同位
从左到右相同的位数为子网掩码位数,即:13位,掩码为255.248.0.0

2.在配置ACL时碰到这样一个地址范围:59.39.80.0-59.39.127.0如何划分超网才使ACL条目最少呢?

59.39.80.0转化为2进制为
00111011.00100111.01010000.00000000
取全0之前位数为网络地址位,即59.39.80.0/20(59.39.80.0-59.39.95.255)得到一个超网
然后余下的地址以59.39.96.0开始
59.39.96.0转化为2进制为:
00111011.00100111.01100000.00000000
取全0之前位数为网络地址位,即59.39.96.0/19[59.39.96.0-59.39.127.255],全部覆盖此地址池
一共得到两条ACL,分别为:59.39.80.0/20、59.39.96.0/19

VLSM技术
VLSM(可变长子网掩码)是为了有效的使用无类别域间路由(CIDR)和路由汇聚(route summary)来控制路由表的大小,网络管理员使用先进的IP寻址技术,VLSM就是其中的常用方式,可以对子网进行层次化编址,以便最有效的利用现有的地址空间。
VLSM(Varable Length Subnet Mask,可变长子网掩码)规定了如何在一个进行了子网划分的网络中的不同部分使用不同的子网掩码。这对于网络内部不同网段需要不同大小子网的情形来说很有效。
简介
VLSM其实就是相对于类的IP地址来说的。A类的第一段是网络号(前八位),B类地址的前两段是网络号(前十六位),C类的前三段是网络号(前二十四位)。而VLSM的作用就是在类的IP地址的基础上,从它们的主机号部分借出相应的位数来做网络号,也就是增加网络号的位数。各类网络可以用来划分子网的位数为:A类有二十四位可以借,B类有十六位可以借,C类有八位可以借(可以再划分的位数就是主机号的位数。实际上不可以都借出来,因为IP地址中必须要有主机号的部分,而且主机号部分剩下一位是没有意义的,所以在实际中可以借的位数是在上面那些数字中再减去2,借的位作为子网部分)。
这是一种产生不同大小子网的网络分配机制,指一个网络可以配置不同的掩码。开发可变长度子网掩码的想法就是在每个子网上保留足够的主机数的同时,把一个子网进一步分成多个小子网时有更大的灵活性。如果没有VLSM,一个子网掩码只能提供给一个网络。这样就限制了要求的子网数上的主机数。另外,VLSM是基于比特位的,而类网络是基于8位组的。
在实际工程实践中,能够进一步将网络划分成三级或更多级子网。同时,能够考虑使用全0或全1子网以节省网络地址空间。某局域网上使用了27位的掩码,则每个子网可以支持30台主机(2^5-2=30);而对于WAN连接而言,每个连接只需要2个地址,理想的方案是使用30位掩码(2^5=30),然而同主类别网络相同掩码的约束,WAN之间也必须使用27位掩码,这样就浪费28个地址。
基本算法
VLSM是将大范围的IP网络划分成多个小范围的IP网络,为某一个单位或企业的不同部分对内可显示不同的网络,对外可显示同一个IP网络。提到VLSM,不得不提出的是掩码。掩码同IP一样,具有32位的二进制,用于与某一个IP进行运算,算出该IP的网络号。即将32位的IP与32位的掩码进行“与运算”,这样就可以得出网络号。
如:IP为:21.31.233.69与掩码255.255.255.192的网络号:
21.31.233.69=00010101 00011111 11101001 01000101
255.255.255.192=11111111 11111111 11111111 11000000=00010101 00110001 11101001 01000000=21.31.233.64
故:
21.31.233.69&255.255.255.192=21.31.233.64
所以该子网网络号为21.31.233.64。

实例分析
例如:某公司有两个主要部分:市场部和技术部。技术部又分为硬件部和软件部两个部分。该公司申请到了一个完整的C类IP地址段:210.31.233.0,子网掩码255.255.255.0。为了便于分级管理,该公司采用VSLM技术,将原主网络划分称为两级子网(未考虑全0和全1子网)。
市场部分得了一级子网中的第1个子网,即210.31.233.0,子网掩码255.255.255.192,该一级子网共有62个IP地址可供分配,用于主机使用。
技术部将所分得的一级子网中的第2个子网210.31.233.128,子网掩码255.255.255.192。又进一步划分成了两个二级子网。其中第1个二级子网210.31.233.128,子网掩码255.255.255.224划分给技术部的下属分部-硬件部,该二级子网共有30个IP地址可供分配。技术部的下属分部-软件部分得了第2个二级子网210.31.233.160,子网掩码255.255.255.224,该二级子网共有30个IP地址可供分配。
VLSM技术对高效分配IP地址(较少浪费)以及减少路由表大小都起到非常重要的作用。这在超网和网络聚合中非常有用。但是需要注意的是使用VLSM时,所采用的路由协议必须能够支持它,这些路由协议包括RIP2,OSPF,EIGRP,IS-IS和BGP。
无类路由选择网络可以使用vlsm,而有类路由选择网络中不能使用vlsm。

划分子网的几个捷径
1.你所选择的子网掩码将会产生多少个子网?:2的x次方(x代表掩码位,即2进制为1的部分)
2.每个子网能有多少个主机?:2的y次方-2(y代表主机位,即2进制为0的部分)
3.有效子网是?:有效子网号=256-10进制的子网掩码(结果叫做block size或base number)
4.每个子网的广播地址是?:广播地址=下个子网号-1
5.每个子网的有效主机分别是?:忽略子网全为0和全为1的地址剩下的就是有效主机地址。最后有效1个主机地址=下个子网号-2(即广播地址-1)

C类地址例子:网络地址 192.168.10.0;子网掩码 255.255.255.192/26
1.子网数=2*2=4
2.主机数=2的6次方-2=62
3.有效子网?:block size=256-192=64;所以第一个子网为192.168.10.0,第二个为192.168.10.64,第三个为192.168.10.128,第四个为192.168.10.192
4.广播地址:下个子网-1,所以4个子网的广播地址分别是192.168.10.63、192.168.10.127和192.168.10.191、192.168.10.255
5.有效主机范围是:第一个子网的主机地址是192.168.10.1-192.168.10.62;第二个是192.168.10.65-192.168.10.126;第三个192.168.10.129-192.168.10.190;第四个是192.168.10.193-192.168.10.254

B类地址例子1:网络地址:172.16.0.0;子网掩码255.255.192.0/18
1.子网数=2*2=4
2.主机数=2的14次方-2=16382
3.有效子网?:block size=256-192=64;所以第一个子网为172.16.0.0,第二个为172.16.64.0,第三个为172.16.128.0,第四个为172.16.192.0
4.广播地址:下个子网-1.所以4个子网的广播地址分别是172.16.63.255、172.16.127.255,172.16.191.255,172.16.255.255
5.有效主机范围是:第一个子网的主机地址是172.16.0.1到172.16.63.254;第二个是172.16.64.1到172.16.127.254;第三个是172.16.128.1到172.16.191.254;第四个是172.16.128.1到172.16.255.254

VLAN技术
什么是VLAN?VLAN(Virtual LAN),翻译成中文是“虚拟局域网”。LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成的企业网络。
VLAN所指的LAN特指使用路由器分割的网络——也就是广播域。
在此让我们先复习一下广播域的概念。广播域,指的是广播帧(目标MAC地址全部为1)所能传递到的范围,亦即能够直接通信的范围。严格来说,并不仅仅是广播帧,多播帧(Multicast Frame)和目标不明的单播帧(Unknown Unicast Frame)也能在同一个广播域中畅行无阻。本来,二层交换机只能构建单一的广播域,不过使用VLAN功能后,它能够将网络分割成多个广播域。
未分割广播域时,,,,
那么为什么需要分割广播域呢?那是因为,如果仅有一个广播域,有可能会影响到网络整体的传输性能。具体原因,请参看附图加深理解。



图中,是一个由5台二层交换机(交换机1-5)连接了大量客户机构成的网络。假设这时,计算机A需要与计算机B通信。在基于以太网的通信中,必须在数据帧中指定目标MAC地址才能正常通信,因此计算机A必须先广播“ARP请求(ARP Request)信息”,来尝试获取计算机B的MAC地址。交换机1收到广播帧(ARP请求)后,会将它转发给除接收端口外的其他所有端口,也就是Flooding了。接着,交换机2收到广播帧后也会Foolding。交换机3、4、5也还会Flooding。最终ARP请求会被转发到同一网络中的所有客户机上。



请大家注意一下,这个ARP请求原本是为了获得计算机B的MAC地址而发出的。也就是说:只要计算机B能收到就万事大吉了。可是事实上,数据帧却传遍了整个网络,导致所有的计算机都收到了它。如此一来,一方面广播信息消耗了网络整体的带宽,另一方面,收到广播信息的计算机还要消耗一部分CPU时间来对它进行处理。造成了网络带宽和CPU运算能力的大量无谓消耗。
广播信息是那么经常发出的吗?读到这里,您也许会问:广播信息真是那么频繁出现的吗?答案是:是的!实际上广播帧会非常频繁地出现。利用TCP/IP协议栈通信时,除了前面出现的ARP外,还有可能需要发出DHCP、RIP等很多其他类型的广播信息。ARP广播,是在需要与其他主机通信时发出的。当客户机请求DHCP服务器分配IP地址时,就必须发出DHCP的广播。而使用RIP作为路由协议时,每隔30秒路由器都会对邻近的其他路由器广播一次路由信息。RIP以外的其他路由协议使用多播传输Apple Talk等协议也经常需要用到广播。例如在Windows下双击打开“网络计算机”时就会发出广播(多播)信息。(Windows XP除外,,,,)总之,广播就在我们身边。
下面是一些常见的广播通信:ARP请求:建立IP地址和MAC地址的映射关系。RIP:一种路由协议。DHCP:用于自动设定IP地址的协议。NETBEUI:Windows下使用的网络协议。IPX:Novell Netware使用的网络协议。Apple Talk:苹果公司的Macintoshi计算机使用的网络协议。

广播域的分割与VLAN的必要性分割广播时,一般都必须使用到路由器。使用路由器后,可以以路由器上的网络接口(LAN interface)为单位分割广播域。但是,通常情况下路由器上不会有太多的网络接口,其数目多在1-4个左右。随着宽带连接的普及,宽带路由器(或者叫IP共享器)变得较为常见,但是需要注意的是,它们上面虽然带着多个(一般为4个左右)连接LAN一侧的网络接口,但那实际上是路由器内置的交换机,并不能分割广播域。况且使用路由器分割广播域的话,所能分割的个数完全取决于路由器的网络接口个数,使得用户无法自由地根据实际需要分割广播域。与路由器相比,二层交换机一般带有多个网络接口。因此如果能使用它分割广播域,那么无疑运用上的灵活性会大大提高。用于在二层交换机上分割广播域的技术,就是VLAN。通过利用VLAN,我们可以自由设计广播域的构成,提高网络设计的自由度。

实现VLAN的机制
在理解了“为什么需要VLAN”之后,接下来让我们来了解一下交换机是如何使用VLAN分割广播域的。首先,在一台未设置任何VLAN的二层交换机上,任何广播域都会被转发给除接收端口外的所有其他端口(Flooding)。例如,计算机A发送广播信息后,会被转发给端口2、3、4。



这时,如果在交换机上生成红、蓝两个VLAN;同时设置端口1、2属于红色VLAN、端口3、4属于蓝色VLAN。再从A发出广播帧的话,交换机就只会把它转发给同属于一个VLAN的其他端口——也就是同属于红色VLAN的端口2,不会再转发给属于蓝色VLAN的端口。同样,C发送广播信息时,只会被转发给其他属于蓝色VLAN的端口,不会被转发给属于红色VLAN的端口。



直观地描述VLAN如果要更为直观地描述VLAN的话,我们可以把它理解为将一台交换机在逻辑上分割成了数台交换机。在一台交换机上生成红、蓝两个VLAN,也可以看作是将一台交换机换做一红一蓝两台虚拟的交换机。



在红、蓝两个VLAN之外生成新的VLAN时,可以想象成又添加了新的交换机。但是,VLAN生成的逻辑上的交换机是互不想通的。因此,在交换机上设置VLAN后,如果未做其他处理,VLAN间是无法通信的。明明接在同一个交换机上,但却偏偏无法通信——这个事实也许让人难以接受。但它既是VLAN方便易用特征,又是使VLAN令人难以理解的原因。
需要VLAN间通信时怎么办?
那么,当我们需要在不同的VLAN间通信时又该如何是好呢?请大家再次回忆一下:VLAN是广播域。而通常两个广播域之间由路由器提供中继服务。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  网规