第 7章 路由技术
7,1 广域网技术概述
7,2 IP子网间的路由技术
7,3 访问控制列表
7.4 网络地址转换 ( NAT) 技术
服务供应商
企业网络拓扑结构
1 点对点链路
2 电路交换
3 虚拟电路 服务供应商
服务供应商
7.1.2 广域网接入技术 分类
数据报
数据流
每次会话建立一
条专用物理电路
SVC PVC
4 包交换
采用统计利用技术实现电路共享 ATM/帧中继 /X.25
7.1.3 广域网设备
1 广域网交换机
?工作在 OSI的 数据链路层,
?对帧中继,X.25以及 SMDS等数据流量进行操作
交换式多兆位数据服务( SDMS)是基于数据报的高速
分组交换 WAN技术,主要用于公用数据网络的通信。
SMDS可以采用光纤介质或铜介质,另外,SMDS的数
据单元比较大,可以包容 IEEE802.3,IEEE802.5和
FDDI的帧。
7.1.3 广域网设备
2 接入服务器
7.1.3 广域网设备
3 调制解调器
4 CSU/DSU
? 信道服务单元( CSU) /数据服务单元( DSU)
? 数据终端设备到数据通信设备的复用器
? 功能:信号再生,线路调节,误码纠正,信号
管理,同步和电路测试等
5 ISDN终端适配器
6 路由器 (Router)
服务供应商
广域网接入
常见的 DTE与 DCE之间的连接标准
★ EIA/TIA-232
★ V.35
DTE
(数据终端设备 )
DCE
(数据通讯设备 )
7.1.4 广域网中的数据链路层协议
? 定义数据如何封装和传输
? 包括点对点,多点和多路访问交换服务所
设计的协议
1,点到点协议( PPP)
2,高级数据链路控制( HDLC)协议
3,帧中继( Frame Relay)
专线
电路交换
分组交换
HDLC,PPP
PPP,HDLC
X.25,F-R
服务供应商
服务供应商
7.1.4 广域网中的数据链路层协议
F.R网络的组成
FRS FRS
FRSFRS
网桥
CSU/DSU
Router
Router
广域网
PSTN,X.25,DDN
Router
帧中继在
这里工作
Host
Bridge
LAN
LAN
L
A
N
TCP/IP
IPX/SPX PPP
SLIP
HDLC
AppleTalk
? HDLC,SLIP协议
– 只支持异步传输方式
– 只支持 IP协议
– 没有验证机制
? PPP协议
– 支持同异步传输方式
– 采用 NCP协议(如 IPCP,IPXCP),
支持更多的网络层协议
– 具有验证协议 CHAP,PAP,
更好了保证了网络的安全性
7.1.4 广域网中的数据链路层协议
7.1.5 点对点协议 (PPP)
?PPP是 SLIP( Serial Line Interface protocol)
的继承者
?同步和异步电路实现路由器到路由器和主机到网
络( host-to-network)的连接。
?PPP能支持差错检测,支持各种协议,在连接时 IP
地址可复制,具有身份验证功能,可以以各种方
式压缩数据、支持动态地址协商、支持多链路捆

?PPP协议是目前使用最广泛的广域网协议
PPP的特性
( 1) 能够控制数据链路的建立;
( 2) 能够对 IP地址进行分配和使用;
( 3) 允许同时采用多种网络层协议;
( 4) 能够配置和测试数据链路;
( 5) 能够进行错误检测;
( 6)有协商选项,能够对网络层的地址和
数据压缩等进行协商。
PPP的功能
( 1) PPP采用高级数据链路控制 ( HDLC) 作为在点
对点的链路上封装数据报的基本方法 。
( 2) 链路控制协议 LCP( Link Control Protocol)
用于启动线路, 测试, 任选功能的协商及关闭连
接 。
( 3 ) 网络控制协议 NCP ( Network Control
Protocol) 用来建立和配置不同的网络层协议 。
PPP协议允许同时采用多种网络层协议, 如 IP协议,
IPX协议和 DECnet协议 。 PPP协议使用 NCP对多种协
议进行封装 。
(EIA/TIA-232,449,520,V.21V.24,V.35,ISDN)
LCP(连接控制协议 )
NCP(网络控制协议 )
OSI
2
1
(IP,IPX,AppleTalk)3
PPP协议结构
BCP
IPCP
IPXCP
1,同步
2,异步
3,PPP会话建立的过程
?链路的建立和配置协调
?通信的发起方发送 LCP帧 来配置和检测数据链路,主要
用于协商选择将要采用的 PPP参数,包括身份验证、压缩、
回叫、多链路等。
?链路质量检测:
?在链路建立、协调之后,这一阶段是可选的
?网络层协议配置协调
?通信的发起方发送 NCP帧 以选择并配置网络层协议。配
置完成后,通信双方可以发送各自的网络层协议数据报。
?关闭链路
?通信链路将一直保持到 LCP或 NCP帧关闭链路
PAP or CHAP
认证
Authentication
PSTN/ISDN
PSTN/ISDN回拨
Callback
压缩
Compression
多链路捆绑
Multilink
包 Bundle
Data
链路的建立和配置协调阶段中的
PPP LCP选项
实例,PC终端首先通过调制解调器呼叫远程访问服务器
1,PC终端首先通过调制解调器呼叫 ISP的路由器。当路由器上的远程
访问模块应答了这个呼叫后,就建立起一个初始的物理连接
2,两端开始传送一系列经过 PPP封装的 LCP分组。如果有一方要求认证,
接下来就开始认证过程
3,如果认证失败,如错误的用户名、密码,则链路被终止,双方负责
通信的设备或模块(如用户端的调制解调器或服务器端的远程访问
模块)将关闭物理链路回到空闲状态。如果认证成功,通信双方开
始交换一系列的 NCP分组来配置网络层
4,如果网络层使用的是 IP协议,此过程是由 IPCP完成的。当 NCP配置
完成后,双方的逻辑通信链路就建立好了,双方可以开始在此链路
上交换上层数据。
5,当数据传送完成后,一方会发起断开连接的请求。这时,首先使用
NCP来释放网络层的连接,归还 IP地址,然后利用 LCP来关闭数据链
路层连接,最后,双方的通信设备或模块关闭物理链路回到空闲状
态。
4,PAP和 CHAP原理
? PPP提供了两种可选的身份认证方法:
1,口令验证协议( Password
Authentication Protocol,PAP)
2,挑战握手协议( Challenge Handshake
Authentication Protocol,CHAP)
身份认证, PAP
?PAP是一个简单的, 实用的身份验证协议, PAP认
证进程只在双方的通信链路建立初期进行 。 如果
认证成功, 在通信过程中不再进行认证 。 如果认
证失败, 则直接释放链路 。
?当双方都封装了 PPP协议且要求进行 PAP身份认证,
同时它们之间的链路在物理层己激活后,认证客
户端(被认证一端)会不停地发送身份认证请求,
直到身份认证成功。当认证客户端路由器发送了
用户名或口令后,认证服务器会将收到的用户名
和口令与本地数据库中的口令信息比较,如果正
确则身份认证成功,否则认证失败。
身份认证, PAP( 二次握手 )
PAP认证过程经过了两个阶段, 通常称为两次握手
阶段 1:被验证方 ( 远端路由器 ) 发送用户名和口令到验
证方
阶段 2:验证方 ( 中心路由器 ) 对用户名和口令进行认证,
根据结果返回接受或拒绝认证请求的信息 。
PAP认证可以在一方进行, 即由一方认证另一方的身份,
也可以进行双向身份认证 。 这时, 要求被认证的双方都
要通过对方的认证程序, 否则, 无法建立二者之间的链
路 。
PAP的弱点是用户的用户名和密码是明文发送的,有可能
被协议分析软件捕获而导致安全问题。但恰恰是这样,
认证只在链路建立初期进行,因此节省了宝贵的链路带
宽。
Client Server
Hostname,wz
Password,hyper123
username wz
password hyper123
Request(username,password)
Auth Nak
PPP PAP验证
Auth Ack
? 两次握手协议
? 明文方式进行验证
身份认证, CHAP
?CHAP认证比 PAP认证更安全, 因为 CHAP不在
线路上发送明文密码, 而是发送经过摘要
算法加工过的随机序列, 也被称为, 挑战
字符串, 。 同时, 身份认证可以随时进行,
包括在双方正常通信过程中 。 因此, 非法
用户就算截获并成功破解了一次密码, 此
密码也将在一段时间内失效 。
?CHAP对系统要求很高, 因为需要多次进行
身份质询, 响应 。 这需要耗费较多的 CPU资
源, 因此只用在对安全要求很高的场合 。
身份认证, CHAP(三次握手)
CHAP认证过程经过了三个阶段, 通常称为三次握手:
?阶段 1:当被验证方 ( 远端路由器 ) 向验证方 ( 中
心路由器 ) 发送用户名做请求连接后, 验证方向
被验证方发送一串随机字符 (, 挑战, 阶段 )
?阶段 2:被验证方利用口令和 MD5算法, 对随机字
符串进行加密产生密文, 并将密文发送给验证方
(, 回应, 阶段 )
?阶段 3:验证方利用同样的方式对随机字符串进行
加密产生密文, 并将它与接收到的密文进行比较,
然后根据比较结果接受或拒绝连接请求, 若比较
结果一致则接受, 否则拒绝 。
Client Server
Hostname,wz
Password,hyper123
username wz
password hyper123
Challenge
挑战字符串
Response
Success
PPP CHAP验证
Failure
? CHAP为三次握手协议
? 只在网络上传输用户名,而并不传输口令
? 安全性要比 PAP高,但认证报文浪费带宽
第一步
定义接口封装类型,
Router(config-if)#encapsulation ppp
第二步
定义本地数据库,
Router(config)#username username password password
PPP认证配置
第三步
定义 PAP认证,
Router(config-if)#ppp authentication pap <callin>
Router(config-if)#ppp pap sent-username username
password password
定义 CHAP认证,
Router(config-if)#ppp authentication chap <callin>
Router(config-if)#ppp chap hostname username
Router(config-if)#ppp chap password password
PPP认证配置
ISDN/PSTN
hostname left
username right password right1
int bri 0
encapsulation ppp
ppp authentication PAP
ip add 10.0.0.1 255.255.255.0
ppp pap sent-username left
password left1
hostname right
username left password left1
int bri 0
encapsulation ppp
ppp authentication PAP
ip add 10.0.0.2 255.255.255.0
ppp pap sent-username right
password right1
PPP PAP认证配置实例
ISDN/PSTN
Username right password starnet
hostname R1
int serial 0
encapsulation ppp
ppp authentication CHAP
ppp chap hostname left
ppp chap password starnet
PPP CHAP认证配置实例
Username left password starnet
hostname R2
int serial 0
encapsulation ppp
ppp authentication CHAP
ppp chap hostname right
ppp chap password starnet
Router#show interfaces serial <interface number>
PPP认证的调试
Router#debug ppp authentication
7.2 IP子网间的路由技术
7.2.1 什么是路由
7.2.2 路由算法
7.2.3 设计目标
7.2.4 路由协议
7.2.5 静态路由
7.2.6 缺省路由
7.2.7 动态路由
7.2.8 RIP路由信息协议
CERNET拓扑图
北京 Cernet主节点
网络实训室通过校园网访问 陈瑞球楼通过沙湾电信访问
7.2.1 什么是路由
? 路由,是把信息从源穿过网络传递到目的地行为
? 路由的两个动作,确定最佳路径和数据转发
1,路径选择
度量值 (Metric) 下一跳 目的网络
2,数据转发
不是同一网络的数据包总是发送给路由器
根据两个地址转发,下一跳路由器的 MAC地址
目的主机的 IP协议地址
3,端系统( ES--end system)
4,中介系统( IS--intermediate system)
域内 IS( intradomain IS)和域间 IS( interdomain IS)
7.2.2 路由算法
? 路由算法使用许多不同的 metric以确定最佳路

? 常用的 metric如下:
1 路径长度
2 可靠性
3 延迟
4 带宽
5 负载
6 通信代价
7.2.3 设计目标
路由算法通常具有下列设计目标的一个或多个:
1 优化
2 简单, 低耗
3 健壮, 稳定
4 快速聚合
5 灵活性
7.2.4 路由协议
? 路由协议 ( Routing Protocol),用于路
由器动态寻找网络最佳路径, 保证所有路
由器拥有相同的路由表, 一般路由协议决
定数据包在网络上的行走路径 。
? RIP,IGRP,EIGRP,OSPF,IS-IS,EGP,BGP
? 路由协议通过提供共享路由选择信息的机
制来支持可路由协议
? 路由协议消息在路由器之间传送, 路由协
议允许路由器与其他路由器通信来修改和
维护路由选择表 。
7.2.4 路由协议
1 Routed Protocol( 可被路由的协议 )
? IP,DECnet,AppleTalk,Novell NetWare
2 路由动作包括,寻址和转发
3 路由表
在路由器的内部都有一个路由表, 这
个路由表中包含有该路由器知道的目的网
络地址以及通过此路由器到达这些网络的
最佳路径, 如某个接口或下一跳的地址,
正是由于路由表的存在, 路由器可以依据
它进行转发 。
7.2.4 路由协议
4 路由选择算法
必须启动并维护包含路由信息的路由表,
其中路由信息依赖于所用的路由选择算法
却不尽相同 。 路由选择算法将收集到的不
同信息填入路由表中, 并根据路由表可将
目的网络与下一站 ( nexthop) 的关系告
诉路由器 。
5 路由器就是互联网中的中转站
7.2.4 路由协议
6 Router( 路由器 ) 可以路由数据包,必须至
少知道以下状况:
1) 目标地址 ( destination address)
2) 可以学习到远端网络状态的邻居 router
3) 到达远端网络的所有路径
4) 到达远端网络的最佳路径
5) 如何保持和验证路由信息
7.2.4 路由协议
7 典型的路由选择方式有两种:
静态路由和动态路由
1) 动态路由与静态路由发生冲突时, 以静态
路由为准
2) 路由器中进行寻径时, 路由器首先查找静
态路由, 如果查到则根据相应的静态路由
转发分组;否则再查找动态路由 。
7.2.5 静态路由
? 静态路由是指由网络管理员手工配置
? 静态路由 的 路由器之间没有必要进行路由
信息的交换
? 动态路由因为需要路由器之间频繁地交换
各自的路由表, 而对路由表的分析可以揭
示网络的拓扑结构和网络地址等信息, 因
此存在一定的不安全性, 而静态路由不存
在这样的问题, 故出于安全方面的考虑也
可以采用静态路由 。
? 大型和复杂的网络环境通常不宜采用静态
路由
7.2.5 静态路由
点对点或
电路交换连接
A
B
Network 1
只有一个网络
连接没有必要
进行路由信息
的更改
router(config)#ip route [网络编号 ] [子网掩码 ]
[转发路由器的 IP地址 /本地接口 ]
配置静态路由
ip route
静态路由的一般配置步骤
1.为每条链路确定地址 ( 包括子网地址和网络地
址 )
2.为每个路由器,标识非直连的链路地址
3.为每个路由器写出未直连的地址的路由语句(
写出直连地址的语句是没必要的)
router(config)#ip route 172.16.1.0 255.255.255.0 172.16.2.1或
router(config)#ip route 172.16.1.0 255.255.255.0 serial 0
172.16.2.1
S0
172.16.1.0
B
172.16.2.2
网络
A
10.0.0.0
静态路由配置实例
删除静态路由用命令 no ip route
router( config) #no ip route [网络编号 ] [子网掩码 ]
172.16.2.1
SO
172.16.1.0
B172.16.2.2
网络
A B0.0.0.0
router(config)#ip route 0.0.0.0 0.0.0.0 172.16.2.2
7.2.6缺省(默认)路由
Internet 上 大约 99.99%
的路由器上都存在一条
缺省路由 !
缺省路由一般使用在 stub网络中(称末端或存根网
络),stub网络是只有 1条出口路径的网络。
所有未明确指明目标网络的数据
包都按缺省路由进行转发 。
7.2.7 动态路由
?动态路由是指路由器能够自动地建立自己
的路由表,并且能够根据实际情况的变化
适时地进行调整。
7.2.7 动态路由
?动态路由机制的运作依赖路由器的两个基
本功能:对路由表的维护,路由器之间适
时的路由信息交换。 路由协议 路由协议
路由信息表 路由信息表
路由器 1 路由器 2
动态路由协议的分类




IGP
EGP
链路状态协议 ( OSPF,IS-IS)
距离矢量协议 ( RIPv1,RIPv2,IGRP,
EIGRP)
EGP( 外部网关协议 )
BGP( 边界网关协议 )
外部网关协议,在自治系统之间交换路由选择
信息的互联网络协议, 如 BGP。
内部网关协议,在自治系统内交换路由选择信
息的路由协议, 常用的因特网内部网关协议有
OSPF,RIP。
动态路由协议的分类
1,距离矢量路由协议
2,链路状态路由协议
OSPF:开放式最短路径优先( Open Shortest
Path First)是一种链路状态路由协议。每一个
OSPF路由器都维护一个相同的网络拓扑数据库,
从这个数据库中,可以构造一个最短路径树来计
算路由表。 OSPF的收敛速度比 RIP要快,而且在
更新路由信息时,产生的流量也较少。为了管理
大规模的网络,OSPF采用分层的连接结构,将自
治系统分为不同的区域,以减少路由重计算的时
间。
7.2.8 RIP
?RIP( Routing Information Protocols,路由
信息协议)
?是典型的距离矢量协议,通过计算抵达目
的地的最少跳数( hop)来选取最佳路径
?路由器每 30秒相互发送广播信息
?RIP协议的跳数最多计算到 15跳
?网络上的路由器在一条路径不能用时必须
经历决定替代路径的过程,这个过程称为
收敛
?RIP收敛 时间长
7.2.8 RIP
?RIP协议的原始版本(版本 1,即 RIPv1)不能应用
VLSM,因此不能分割地址空间以最大效率地应用
有限的 IP地址。 RIP协议的后来版本(版本 2,即
RIPv2)通过引入子网屏蔽与每一路由广播信息一
起使用实现了这个功能。
?路由协议还应该能防止数据包进入循环,或落入
路由选择循环,这是由于多余连接影响网络的问
题。 RIP协议假定如果从网络的一个终端到另一个
终端的路由跳数超过 15个,那么一定牵涉到了循
环,因此当一个路径达到 16跳,将被认为是达不
到的。显然,这限制了 RIP协议在网络上的使用。
7.2.8 RIP
?RIP协议设计用于使用同种技术的中小型网
络,适用于大多数的校园网和使用速率变
化不是很大的连续性的地区性网络
?RIP的路由信息都封装在 UDP的数据报中,
RIP在 UDP的 520端口上
7.2.8 RIP
? 路由更新
早期的 RIP路由协议中路由的更新是通过定时广播实现
的 。 缺省情况下, 路由器每隔 30秒 向与它相连的网络
广播自己的路由表, 接到广播的路由器将收到的信
息添加至自身的路由表中 。 每个路由器都如此广播, 最
终网络上所有的路由器都会得知全部的路由信息 。 正常
情况下, 每 30秒路由器就可以收到一次路由信息确认,
如果经过 180秒, 即 6个更新周期, 一个路由项还没有
得到确认, 路由器就认为它已 失效 了 。 如果经过 240
秒, 即 8个更新周期, 路由项仍没有得到确认, 它就被
从路由表中删除 。 上面的 30秒, 180秒和 240秒的延
时都是由计时器控制的, 它们分别是更新计时器
( Update Timer), 无效计时器 ( Invalid Timer) 和
刷新计时器 ( Flush Timer) 。
1.启用 RIP进程
router(config)#router rip
router(config-router)#
2.配置 network命令
router(config-router)#network <主类网络号 >
含义,1.公布属于该主类的子网
2.包含在该主类内的接口发送接收路由信息
3.指定 RIP版本
router(config-router)#VERSION {1|2}
配置 RIP
配置举例
在路由器 Router1上的 RIP配置如下:
1.启用 RIP进程
router( config) #router rip
2.配置 network命令
router( config-router) #network 172.16.0.0
验证 RIP的配置
router#show ip protocols
显示路由表的信息
router#show ip route
清除 IP路由表的信息
router#clear ip route *
在控制台显示 RIP的工作状态
router#debug ip rip
RIP的调试
RIP的缺陷
1,过于简单, 以跳数为依据计算度量值, 经
常得出非最优路由;
2.度量值以 16为限, 不适合大的网络;
3.性能差, 接受来自任何设备的路由更新;
4.支持无类 IP地址和 VLSM( Variable Length
Subnet Mask,变长子网掩码 ) ;
5.收敛缓慢, 时间经常大于 5分钟;
6.带宽很大。
7.3 访问控制列表
?访问控制列表( access control lists),
也称为访问列表( access lists),在有
的文档中还称之为包过滤,是通过定义一
些准则对经过路由器接口上的数据报文进
行控制:转发或丢弃。
?基本访问控制列表
?包括标准访问控制列表
?和扩展访问控制列表
?高级访问控制列表(动态访问控制列表)
7.3 访问控制列表
?为什么要配置访问列表
?限制路由更新
?限制网络访问
?什么时候配置访问列表
?访问列表编号
?列表要指定一个唯一的名称或编号,以便在协议
内部能够唯一标识每个访问列表
?标准编号为,1-99
?扩展编号为,100-199
7.3 基本访问控制列表配置准则
1 基本准则
?典型准则主要有以下:
? 源地址
?目标地址
?上层协议
?标准 IP访问列表 ( 1- 99) 主要是根据源地
址来进行转发或阻断分组的, 扩展 IP访问
列表 ( 100- 199) 使用以上三种组合来进
行转发或阻断分组的 。
7.3 基本访问控制列表配置准则
2 隐含, 拒绝所有数据流, 准则语句 典型准则
在每个访问列表的末尾隐含着一条, 拒绝所有数据
流, 准则语句, 因此如果分组与任何准则都不匹配, 将被
拒绝 。
3,输入准则语句的顺序
?加入的每条准则都被追加到访问列表的最后, 语句被创建
以后, 就无法单独删除它, 而只能删除整个访问列表 。 所
以访问列表语句的次序非常重要 。 路由器在决定转发还是
阻断分组时, 路由器按语句创建的次序将分组与语句进行
比较, 找到匹配的语句后, 便不再检查其他准则语句 。
?假设创建了一条语句, 它允许所有的数据流通过, 则后面
的语句将不被检查 。
7.4 网络地址转换( NAT)
?NAT最初的目的也是通过允许较少的
公用 IP地址代表多数的专有 IP地址来
减缓 IP地址空间枯竭的速度
?在 RFC3022中描述的 IP地址转换操作
扩展了 RFC1631介绍的地址转换,包
括了一类的网络地址和 TCP/UDP端口
转换。
用 NAT实现 PC1访问 PC2
NAT技术的双向性
Packet 1
源地址,192.168.1.100
目标地址,203.4.5.6
Packet 2
源地址,203.4.5.6
目标地址,192.168.1.100
Packet 1
源地址,202.1.2.3
目标地址,192.168.2.50
Packet 2
源地址,192.168.2.50
目标地址,202.1.2.3
192.168.1.100 192.168.2.50
内部
PC 1 PC 2
NAT路由器
外部
NAT技术的地址概念
?NAT技术把地址分成两大部分,即内部地
址和外部地址。
?内部地址分为:
?内部本地( IL,Inside Local)地址
?内部全局( IG,Inside Global)地址
?外部地址分为:
?外部本地( OL,Outside Local)地址
?外部全局( OG,Outside Global)地址
NAT技术的应用
?NAT技术中最常用的两种实现模式:静态
NAT和动态 NAT
?静态 NAT是建立内部本地地址和内部全局
地址的一对一的永久映射。当外部网络需
要通过固定的全局可路由地址访问内部主
机时,静态 NAT就显得十分重要
?动态 NAT是建立内部本地地址和内部全局
地址池的临时对应关系,如果经过一段时
间,内部本地地址没有向外的请求或者数
据流,该对应关系将被删除。
内部源地址 NAT的过程
7.4.2 网络地址端口转换( NAPT)
NAPT则是把内部地址映射到外部网络的一个 IP
地址的不同端口上
NAPT普遍应用于接入设备中,它可以将中小型
的网络隐藏在一个合法的 IP地址后面。 NAPT与
动态地址 NAT不同,它将内部连接映射到外部
网络中的一个单独的 IP地址上,同时在该地址
上加上一个由 NAT设备选定的 TCP端口号
NAPT类型
?静态 NAPT
?需要向外网络提供信息服务的主机
?永久的一对一, IP地址 + 端口, 映射关系
?动态 NAPT
?只访问外网服务,不提供信息服务的主机
?临时的一对一, IP地址+ 端口, 映射关系
内部网络 NAPT的整个过程