任务二 路由器与网关
知识点
1.任务描述
在网络层实现网络互连的设备要求具有路由功能,网络互连的设备主要采用路由器或在更高层的互连设备网关。本任务介绍路由器的种类、路由选择方法、网络互连设备的使用等内容。
2.路由器的工作原理
定义:路由器在网络层实现网络互连,它除具有网桥的全部功能外,还具备路径选择功能,可以互联多个网络及多种类型的网络。
概念模型(图 7-12)的读法:左右两边是主机的分层结构(应用层、传输层、网络层、网络接口层),中间是路由器;路由器内部每个端口都有一套“网络层 + 网络接口层”模块,两个端口之间靠网络层相连。
由图得出的三条结论:
- 每个路由器至少有两个端口,每个端口都有一个最高到网络层的模块相连;
- 从端口进入的数据,经过网络接口层处理后递交到网络层;
- 网络层数据包中有源地址和目标地址(如 IP 地址),路由器通过 IP 地址来确定信息发送的网络:
- 源地址和目标地址的网络 ID 相同 → 说明源主机与目标主机在同一网络 → 路由器不转发该数据包;
- 网络 ID 不相同 → 查找路由表,从相应端口将该信息送出。
与交换机的时延对比(常考):
| 设备 | 处理要升到哪一层 | 时延 |
|---|---|---|
| 交换机 | 数据链路层 | 小 |
| 路由器 | 网络层(要把收到的数据上升到网络层处理) | 大得多 |
3.路由器的工作过程(四步)
- 排队——数据包到达路由器,排到等待处理队列,按照**“先来先出”**的原则等待;
- 查表——路由器提取目标地址,查看路由表;
- 选路——如果有多条路径,选择一条最佳路径;
- 分段——如果下一个网络允许的数据包长度比源路径数据包长度小,则路由器进行分段。
记忆口诀:排队 → 查表 → 选最优 → 大了就切。
4.路由器的分类
最常用:按网络协议分类
| 类型 | 能力 |
|---|---|
| 单协议路由器 | 只能实现具有相同网络层协议的网络互连 |
| 多协议路由器 | 可以实现具有不同网络层协议的网络互连;具有处理多种不同协议分组的能力,可以为不同类型的协议建立和维护路由表 |
其他分类角度:
- 按连接范围:区域路由器、企业级路由器、园区路由器;
- 按成本:访问路由器、连接路由器。
5.路由的分类(四种)
依据:路由信息产生的方式和特点,路由分为直连路由、静态路由、缺省路由、动态路由四种。
(1)直连路由(direct)
定义:路由器接口上配置的网段地址会自动出现在路由表中并与接口关联,这种路由方式叫直连路由。它是数据链路层发现的。
产生条件:接口配置了网络协议地址且状态正常(物理连接正常),并且可以正常检测到数据链路层协议的链路保持信息时,接口上配置的网段地址自动出现在路由表中并与接口关联。
关键参数:产生方式(owner)为直连(direct),路由优先级为 0,即拥有最高路由优先级。
随接口状态自动变化:接口的物理层与数据链路层状态正常时,直连路由自动出现;路由器检测到此接口关闭后,此条路由自动消失。
| 优点 | 缺点 |
|---|---|
| 自动发现,开销小 | 只能发现本接口所属网段 |
(2)静态路由(static)
定义:系统管理员手工设置的路由,一般是在系统安装时就根据网络的配置情况预先设定,它不会随未来网络拓扑结构的改变而自动改变。
关键参数:产生方式(owner)为静态(static),路由优先级为 1,度量值为 0。
| 优点 | 缺点 |
|---|---|
| 不占用网络和系统资源,较为安全 | 网络出问题后不会自动修正,必须由网络管理员手工逐条配置,不能自动对网络状态变化做出调整 |
适用:拓扑稳定的网络中,细心设置静态路由可以改进网络性能、保障重要应用的带宽;在无冗余连接的网络中,静态路由是最佳的路由方式。
(3)缺省路由(默认路由)
定义:缺省路由也是路由表中的一个条目,用来指明一些在下一跳没有明确地列于路由表中的数据单元该如何转发。在路由表中找不到明确路由条目的所有数据包,都将按照缺省路由指定的接口和下一跳地址进行转发。
表现形式:在路由表中,缺省路由以到网络 0.0.0.0(掩码为 0.0.0.0) 的路由形式出现,可通过命令 Show ip route 的输出查看它是否被设置。如果报文的目标地址不能与路由表的任何入口项相匹配,该报文将选取缺省路由;如果没有缺省路由且目标地址不在路由表中,报文被丢弃,同时向源节点返回一个 ICMP 报文,指出该目标地址或网络不可达。缺省路由是否出现在路由表中取决于本地的出口状态。
为什么有用:在一个包含上百个路由器的典型网络中,选择动态路由协议可能耗费较大量的带宽资源,运用缺省路由意味着采用适当带宽的链路来代替高带宽的链路,以满足大量用户通信的需要。Internet 上大约 99.99% 的路由器上都存在缺省路由;缺省路由不一定都是手工配置的静态路由,有时也可由动态路由协议产生(如工作于 OSPF 协议并配置了 Stub 区域的路由器会动态产生一条缺省路由)。
| 优点 | 缺点 |
|---|---|
| 极大减少路由表条目 | 配置不正确可能导致路由环路;可能导致产生非最佳路由 |
(4)动态路由
定义:路由表可以是由管理员设置好的固定静态路由表,也可以是由动态路由协议根据网络的运行情况自动调整产生的。动态路由可以自动学习和记忆网络运行情况,在需要时自动计算数据传输的最佳路由,适应大规模、复杂的网络环境。
工作机制:配置了动态路由选择协议后,协议通过自动交换路由信息,生成并维护转发所需的路由表;当网络拓扑结构改变时,协议可以自动更新路由表,并负责决定数据传输最佳路径。
| 优点 | 缺点 |
|---|---|
| 自动适应网络状态变化,自动维护路由信息而不需要管理员参与 | 需要交换路由信息,占用网络带宽与系统资源;安全性不如静态路由 |
适用:有冗余连接的复杂、大型网络。
四种路由总览表:
| 类型 | 产生方式 | 优先级 | 优点 | 缺点 | 适用 |
|---|---|---|---|---|---|
| 直连路由 | 接口配置地址后自动出现 | 0(最高) | 自动发现、开销小 | 只能发现本接口网段 | 所有直连网段 |
| 静态路由 | 管理员手工配置 | 1 | 不占资源、安全 | 不自动修正 | 拓扑稳定的网络 |
| 缺省路由 | 手工配置或动态协议产生(0.0.0.0/0) | — | 大幅精简路由表 | 配置错会环路、可能非最佳 | 末梢网络、出口 |
| 动态路由 | 协议自动交换路由信息 | 各协议不同 | 自动适应变化 | 占带宽与资源、安全性低 | 大型、有冗余的网络 |
6.路由的优先级
取值范围:0~255。
比较的前提(易错点):必须是完全相同的一条路由才进行路由优先级的比较。例如 10.0.0.0/16 和 10.0.0.0/24 是两条不相同的路由——如果 RIP 学到了其中一条、OSPF 学到了另一条,则两条路由都会被加入路由表,但这两条路由不会进行优先级的比较。
表 7-1 各种路由的优先级(必背):
| 路由选择协议 | 优先级 |
|---|---|
| 直连路由 | 0 |
| 静态路由 | 1 |
| 外部 BGP(EBGP)协议 | 20 |
| OSPF 协议 | 110 |
| RTP 协议(教材原文,业界标准写法为 RIP 协议) | 120 |
| 内部 BGP(IBGP)协议 | 200 |
| Special(内部处理使用) | 255 |
三条赋值原则(必背):
- 直连路由具有最高优先级;
- 人工设置的路由条目优先级高于动态学习到的路由条目;
- 度量值算法复杂的路由协议优先级高于度量值算法简单的路由协议。
管理距离:各种路由协议(包括静态路由)都被赋予了一个管理距离。当存在多个路由信息源时,具有较小管理距离数值的路由协议发现的路由为最佳路由,并被加入路由表中。
注意:对不同路由协议的路由优先级的赋值是各个设备厂商自行决定的,没有统一标准,所以不同厂商设备上路由优先级可能不一样,并且网络管理员通过配置可以修改缺省路由优先级。
考点提示:教材表 7-1 中 OSPF 下方 120 那一行印的是**“RTP 协议”**,这是教材的笔误,业界标准(华为设备)为 RIP 协议 = 120。答题按教材填 RTP,讲解时说明是 RIP。
7.IP 分组的交付
为什么 IP 是无连接的:IP 协议为面向无连接的协议,原因是数据包在互联网中通过的网络可能是异构的网络;如果设计成面向连接的,则互联网中所有网络层必须是面向连接的,但这是不可能的。
两种交付方式:
| 方式 | 条件 | 过程 |
|---|---|---|
| 直接交付 | 目标站点与发送站点连接在同一个网络中 | 发送站点直接通过目标 IP 地址找出目标物理地址,IP 协议将目标 IP 地址和目标物理地址一起传递给数据链路层,以便进行实际的交付 |
| 间接交付 | 目标站点与发送站点不在同一个网络 | 分组从一个路由器传到另一个路由器,直到到达与最终目标站点连接在一个网络上的路由器为止 |
三条重要说明:
- 一次交付过程包括一个直接交付和零个(或多个)间接交付,最后的交付总是直接交付;
- 直接交付时,地址的转换是在最终的 IP 地址与最终的物理地址之间进行的;
- 间接交付时,地址的转换是在下一个路由器的 IP 地址与下一个路由器的物理地址之间进行的。
图 7-13 的结论:直接交付不通过路由器,而间接交付必须通过路由器。图中共有 1 次直接交付(首)+ 2 次间接交付 + 1 次直接交付(尾)。
8.路由选择的方法(四种策略)
问题的由来:把每一端口所连接的地址都存放在路由表中的做法已经不适用了,需要通过一些技术使路由表的大小成为可管理的。
| 方法 | 做法 | 效果 |
|---|---|---|
| ① 下一跳路由选择 | 路由表中只保留下一跳的地址,而不是保留完整的路由信息 | 表项最短 |
| ② 特定网络路由选择 | 不为同一物理网络上的每台主机各设一项,而仅用一项保留这个网络的地址;凡交付到该网络的分组都通过一个接口转发 | 同一网络的所有主机共用一项 |
| ③ 特定主机路由选择 | 与②相反,路由表中给出的是某一主机地址 | 用牺牲效率来换取其他优点,实现对路由选择的更多控制(特定路由选择、检查路由、提供安全措施) |
| ④ 默认路由选择 | 路由表中只需一条默认路由指向出口路由器 | 不必列出因特网中所有网络 |
图 7-14 实例:主机 A 通过两个路由器连接到网络上(N1 连 R1、R1 连 N2;R2 为默认路由器,下连因特网)。
主机 A 的路由表:
| 目的站 | 下一跳 |
|---|---|
| N2 | R1 |
| … | … |
| 默认 | R2 |
解释:路由器 R1 将分组转发到连接在网络 N2 上的主机,需要设置特定路由选择;对互联网的访问使用路由器 R2。此时不必将整个因特网中的所有网络都列出,只需将主机 A 的默认路由器设置为 R2 即可。
9.路由选择和路由表
(1)路由器查找路由的顺序(必背)
当一个 IP 分组到达路由器后,在路由表中按照顺序查找匹配项。路由表中按照 直接交付 → 特定主机交付 → 特定网络交付 → 默认交付 的顺序放置路由项。
记忆口诀:先直连、再单机、再整网、最后默认(越具体越优先)。
(2)路由表的 7 个字段
掩码、目标地址、下一跳地址、标志、引用计数、使用、接口。
| 字段 | 含义 |
|---|---|
| 掩码 | 为计算目标网络地址或子网地址;特定主机交付为 255.255.255.255,默认交付为 0.0.0.0;不划分子网的网络是该类网络的默认掩码 |
| 目标地址 | 该路由项指向的目的网络或主机 |
| 下一跳地址 | 到达该目的地的下一个路由器接口地址 |
| 标志 | 5 个字母,见下表 |
| 引用计数 | 使用该路由项的次数 |
| 使用 | 经过本路由器发送到相应目的地的分组数 |
| 接口 | 路由器相应接口的名字 |
5 个标志位:
| 标志 | 名称 | 含义 |
|---|---|---|
| U | 工作(Up) | 指示路由器是否正在工作 |
| G | 网关(Gateway) | 指示目标地址是否在另一个网络;无此标志表示目的地是本网络 |
| H | 特定主机(Host) | 地址字段是一个特定主机地址;无此标志表示目标地址是网络地址 |
| D | 因改变路由而增加的 | 在主机路由表中增加了到目标地址的路由选项信息 |
| M | 因改变路由而修改的 | 修改了到这个目标地址的路由选择信息 |
(3)表 7-2 路由表实例(图 7-15 中路由器 R1 的路由表)
| 掩码 | 目的地址 | 下一跳 | 接口 |
|---|---|---|---|
| 255.0.0.0 | 111.0.0.0 | — | m0 |
| 255.255.255.224 | 193.14.5.160 | — | m2 |
| 255.255.255.224 | 193.14.5.192 | — | M1 |
| 255.255.255.255 | 194.17.21.16 | 111.20.18.14 | m0 |
| 255.255.255.0 | 192.16.7.0 | 111.15.17.32 | m0 |
| 255.255.255.0 | 194.17.21.0 | 111.20.18.14 | m0 |
| 0.0.0.0 | 0.0.0.0 | 111.30.31.18 | m0 |
读表技巧(四行对照四种情况):
- 下一跳为空(—):说明是直连(掩码 255.0.0.0 对应 111.0.0.0 大网段;两条 /27 对应 193.14.5.160 与 193.14.5.192 两个子网);
- 掩码 255.255.255.255:特定主机路由(194.17.21.16 这一台主机);
- 掩码 255.255.255.0:特定网络路由(192.16.7.0、194.17.21.0 两个网段);
- 掩码 0.0.0.0:默认路由(去往因特网的其他部分)。
10.网关
定义:网关(Gateway)是一个网络连接到另一个网络的“关口”,它具有将不同体系结构的网络连接在一起的功能。按照不同的分类标准,网关有很多种;TCP/IP 协议里的网关是最常用的,本书所述“网关”均指 TCP/IP 协议下的网关。
实质:网关实质上是一个网络通向其他网络的 IP 地址。
教材示例:
| 网络 | IP 地址范围 | 子网掩码 | 网关 |
|---|---|---|---|
| 网络 A | 192.168.1.1 ~ 192.168.1.254 | 255.255.255.0 | 192.168.1.1 |
| 网络 B | 192.168.2.1 ~ 192.168.2.254 | 255.255.255.0 | 192.168.2.1 |
为什么必须用网关:在没有路由器的情况下,两个网络之间不能进行 TCP/IP 通信——即使两个网络连接在同一台交换机(或集线器)上也不行,因为 TCP/IP 协议会根据子网掩码(255.255.255.0)判断两个网络中的主机处在不同的网中。
转发过程(图 7-16):
- 网络 A 中的主机发现数据包的目标主机不在本地网络中;
- 把数据包转发给自己的网关(192.168.1.1);
- 网关转发给网络 B 的网关(192.168.2.1);
- 网络 B 的网关再转发给网络 B 中的某个主机;
- 网络 B 向网络 A 转发数据包的过程也是如此。
结论:只有设置好网关的 IP 地址,并连接相应的网关设备,TCP/IP 协议才能实现不同网络之间的相互通信。网关的 IP 地址是具有路由功能的设备的 IP 地址,具有路由功能的设备有路由器、运行路由协议的服务器和代理服务器。
11.互联设备的选择
图 7-17 的层次关系(由内到外逐层升高):
中继器(物理层)→ 网桥、交换机(数据链路层)→ 路由器(网络层)→ 网关(高层)。图中从左到右的网段 1、网段 2 靠中继器互连;LAN1、LAN2 靠网桥(交换机)互连;网间 1、网间 2 靠路由器互连;网络 1、网络 2 靠网关互连。
表 7-3 几种网络互联设备的比较(必背):
| 互联设备 | OSI 层次 | 作用 | 寻址功能 |
|---|---|---|---|
| 中继器、集线器 | 物理层 | 在电缆段间复制比特,放大电信号,扩展网络长度 | 无地址 |
| 网桥、交换机 | 数据链路层 | 在 LAN 之间存储转发数据链路帧 | MAC 地址 |
| 路由器 | 网络层 | 在异型网络间存储转发分组 | 网络地址 |
| 网关 | 传输层及以下(教材原文,应为传输层及以上) | 在第四层或第四层以上实现不同网络体系间的互联接口 | — |
(1)中继器、集线器
中继器:使用中继器连接网段,安装容易、使用方便、价格便宜,并能保持原来的传输速率。然而由于在物理层进行互联,它不具有差错检查和纠正功能,也不具有隔离冲突的功能,只负责将信号从一种线缆段传输到另一种线缆段上,而不管信号是否正常——即错误的数据经中继器后仍被复制到另一线缆段。
三个副作用:① 由于双向传输线缆段间的所有信息,很容易形成“广播风暴”,导致网络上的信号拥挤;② 当某个网段有问题时会引起网段的中断;③ 中继器还会引起时间延迟。
集线器:也是在物理层对网络进行互联,是从中继器发展而来的,可以把集线器看成一种多端口的中继器,可以完成对线缆中信号的接收、整形、加强、广播等功能。
(2)网桥、交换机
网桥工作在数据链路层,在两个 LAN 网段之间存储、转发数据链路帧。它把两个物理网络连接成一个逻辑网络,功能是实现不同类型的 LAN 网段互联、实现大范围局域网的互联;它可以隔离错误帧,可以使各个 LAN 网段内部信息包不被广播到另一个 LAN 网段,进一步提高网络的安全性。
交换机是一种多端口的网桥,工作在数据链路层,在数据链路层对不同网段进行互联。
(3)路由器
路由器工作在网络层,适用于对大规模网络、复杂的拓扑结构网络进行互联,互联后能实现负载共享和最优路径,能更好地提升安全性能,隔离不需要的通信量,节省传输带宽,减轻主机负担。但是它不支持非路由协议,安装复杂、价格高。
(4)网桥与路由器的比较(易考)
| 比较项 | 网桥 | 路由器 |
|---|---|---|
| 是否理解高层协议 | 不了解其转发帧中高层协议的信息 | 处理网络层的数据 |
| 多协议处理 | 能同时以同样方式处理 IP、IPX 等不同协议 | 更容易沟通、互联不同协议的数据链路层(如令牌环网段和以太网段) |
| 无路由协议网络 | 能提供将无路由协议的网络(如 NetBEUI)分段的功能 | 不支持非路由协议 |
| 管理依据 | 只能用 MAC 地址和物理拓扑工作 | 内置 IP 协议相关的路由协议,且 IP 等协议提供了网络如何分段的信息 |
| 管理难度 | 比路由器更大 | 管理员易于管理 |
| 适用规模 | 一般用来互联小型且拓扑较简单的网络 | 大型、复杂网络 |
(5)网络互联设备的选择原则
总原则:要根据设备的具体特点与网络的性能要求而定;选择网络互联的层次越高,互联的费用就会越高,数据传输的效率也会越低。
典型网络结构是一个主干网加上若干个子网,不同层次选不同设备:
| 位置 | 选用设备 | 原因 |
|---|---|---|
| 主干网与子网之间 | 路由器 | 子网通常由网络管理部门分配不同逻辑网号(网络标识)作为网络地址,只能采用配备了网络层协议的路由器在各子网之间寻址和为分组进行路由选择 |
| 子网内部为隔离冲突域划分的网段之间 | 网桥或交换机 | 一个子网逻辑地址相同,内部主机之间按与网卡捆绑的物理地址在数据链路层寻址,网桥或交换机足以胜任;且第二层寻址比第三层寻址少了从逻辑地址到物理地址的解析过程,速度要快得多 |
| 线缆长度不够 | 中继器连接,或用集线器、交换机分级连接 | 延长网络范围,但要注意传输距离的限制;延长后的线缆仍然只是物理信号的传输载体,与通过的数据类型及控制这些数据传输的协议无任何关系 |
| 与其他协议的网络相连 | 网关 | 连接不同体系结构的网络 |
四类设备的分工一句话总结:
- 中继器、集线器——扩展网络范围(受 MAC 子层限时特性限制);
- 网桥、交换机——连接两个具有相同体系结构的网络;
- 路由器——连接的网络仍保持各自的网络地址与协议体系;
- 网关——连接不同体系结构的网络。
12.任务实施要点
- 以 “路由器工作原理” 为关键词搜索;
- 浏览搜索结果中关于路由器工作原理、工作过程的叙述;
- 搜索网关概念,阅读网关功能及其实现的内容;
- 按照《计算机网络基础综合模拟实训》中 “项目二十五 交换机/路由器的基本配置和使用” 的内容,对交换机、路由器进行配置。
速查表
| 问题 | 答案 |
|---|---|
| 路由器工作在哪一层 | 网络层 |
| 路由器至少有几个端口 | 两个 |
| 同网络 ID 的数据包路由器怎么处理 | 不转发 |
| 路由器工作过程四步 | 排队 → 提取目标地址查路由表 → 选最佳路径 → 必要时分段 |
| 最常用的路由器分类方式 | 按网络协议:单协议 / 多协议 |
| 路由的四种类别 | 直连、静态、缺省、动态 |
| 直连路由优先级 | 0(最高) |
| 静态路由优先级 | 1,度量值 0 |
| 缺省路由在路由表中的形式 | 0.0.0.0,掩码 0.0.0.0 |
| 缺省路由占 Internet 路由器比例 | 约 99.99% |
| 路由优先级范围 | 0~255 |
| 优先级比较的前提 | 必须是完全相同的一条路由 |
| OSPF 的优先级 | 110 |
| EBGP / IBGP 的优先级 | 20 / 200 |
| 路由表查找顺序 | 直接交付 → 特定主机 → 特定网络 → 默认 |
| 路由表的 7 个字段 | 掩码、目标地址、下一跳地址、标志、引用计数、使用、接口 |
| 5 个标志位 | U、G、H、D、M |
| 直接交付用谁的地址 | 最终 IP 地址与最终物理地址 |
| 间接交付用谁的地址 | 下一个路由器的 IP 与物理地址 |
| 最后一次交付总是 | 直接交付 |
| 网关的实质 | 一个网络通向其他网络的 IP 地址 |
| 图 7-17 层次顺序 | 中继器 → 网桥/交换机 → 路由器 → 网关 |
| 中继器寻址功能 | 无地址(物理层只复制比特) |
| 选择互联层次越高则 | 费用越高、效率越低 |