目录
[4.1 IP地址、子网划分、合并超网](#4.1 IP地址、子网划分、合并超网)
[4.1.1 IP地址、子网掩码、网关](#4.1.1 IP地址、子网掩码、网关)
[4.1.2 IP地址的编址方法1:IP地址分类(A~E类地址、保留的IP地址)](#4.1.2 IP地址的编址方法1:IP地址分类(A~E类地址、保留的IP地址))
[4.1.4 IP地址的编址方法2:子网划分(等长、变长)](#4.1.4 IP地址的编址方法2:子网划分(等长、变长))
[4.1.5 IP地址的编址方法3:超网(合并网段)](#4.1.5 IP地址的编址方法3:超网(合并网段))
[4.2 静态路由和动态路由](#4.2 静态路由和动态路由)
[4.2.1 网络层实现的功能](#4.2.1 网络层实现的功能)
[4.2.2 路由信息的来源/路由表的生成、路由优先级](#4.2.2 路由信息的来源/路由表的生成、路由优先级)
[4.2.3 静态路由](#4.2.3 静态路由)
4.1 IP地址、子网划分、合并超网
- 二进制向左移动1位 等价于 十进制乘以2
- 能够被2整除的数,写成二进制形式,最后一位是0。
如果余数是1,则最后一位是1。
- 能够被4整除的数,写成二进制形式,最后两位是00。
如果余数是2,就把2写成二进制,最后两位10。
- 能够被8整除的数,写成二进制形式,最后三位是000。
如果余数是5,就把5写成位二进制,最后三位101。
- 能够被16整除的数,写成二进制形式,最后四位是0000。
如果余数是6,就把6写成二进制,最后四位0110。
4.1.1 IP地址、子网掩码、网关
数据包的目标 IP 地址 决定了数据包最终 到达哪一个计算机,而目标 MAC 地址 决定了该数据包下一跳由哪个设备接收,不一定是终点。
- IP 地址 :
- 组成 :网络标识 + 主机标识
- 同一网段的计算机网络部分相同
- 路由器连接不同网段,负责不同网段之间的数据转发
- 交换机连接同一网段的计算机
- 格式 :32位二进制 或 32比特 或 4个字节
- 点分二进制表示法:10101100.00010000.00011110.00111000
- 点分十进制表示法:172.16.30.56
- 子网掩码(Subnet Mask)/ 网络掩码/ 地址掩码 :指明IP地址的网络部分和主机部分
- 同一个网段中的计算机子网掩码相同
- 表示方法1:IP地址有"类"的概念,A类地址默认子网掩码255.0.0.0,B类地址默认子网掩码255.255.0.0,C类地址默认子网掩码255.255.255.0。
- 表示方法2 :等长子网划分和变长子网划分,打破了IP地址"类"的概念,子网掩码也打破了字节的限制,引入VLSM (Variable Length Subnet Masking ,可变长子网掩码)。这种方式使得Internet上路由器的路由表大大精简,被称为CIDR(无类域间路由,Classless Inter-Domain Routing),子网掩码中1的个数被称为CIDR值。
网关(Gateway) :计算机到其他网段的出口,即路由器的接口地址 。
- 取值(重要!!!) :本网段中任何一个地址 (为了尽可能避免和网络中的计算机地址冲突,通常使用该网段的第一个可用地址 或最后一个可用地址)
计算机的通信流程(重要!!!)Step1 :使用自己的 IP 地址 和自己的子网掩码做与运算,得到自己所在的网段。
Step2 :使用目标 IP 地址 和自己的子网掩码做与运算,得到目标主机是哪个网段。(无需关心目标的子网掩码)
- Step3 :比较上述两个网段是否一样
- 同一网段:目标MAC地址是目标计算机的接口MAC地址
- 不同网段:目标MAC地址是路由器的接口MAC地址(或 网关的MAC地址)
思考题判断下面的计算机能否进行通信?
A、B之间可以相互通信:
- 当A 给B 发送数据时
- Step1:计算A所在的网段 131.107.0.0
- Step2:计算B所在的网段 131.107.0.0
- Step3:A和B处于同一网段,则目标MAC地址为B的MAC地址
- 当B 给A 发送数据时
- Step1:计算B所在的网段 131.107.41.0
- Step2:计算A所在的网段 131.107.41.0
- Step3:A和B处于同一网段,则目标MAC地址为A的MAC地址
A可以给B发送数据,B不能给A发送数据:
- 当A 给B 发送数据时
- Step1:计算A所在的网段 131.107.0.0
- Step2:计算B所在的网段 131.107.0.0
- Step3:A和B处于同一网段,则目标MAC地址为B的MAC地址
- 当B 给A 发送数据时
- Step1 :计算B所在的网段 131.107.41.0
- Step2 :计算A所在的网段 131.107.42.0
- Step3 :A和B处于不同网段,则目标MAC地址为路由器的MAC地址(B没有配置网关)
除了A不能发送数据给C和D,其他都正常。
4.1.2 IP地址的编址方法1:IP地址分类(A~E类地址、保留的IP地址)
- A 类地址 :网络地址的最高位是0的地址
- 网络ID :第1部分
- 第1部分的取值范围为1~126(0不能用,127作为保留网段/环回地址)
- 主机ID :第2、3、4部分
- 对于每个A类网络,其容纳的最大主机数量为256 × 256 ×256-2=166777214 (主机 ID 全0 的地址 为网络地址 ,主机 ID 全1 的地址 为广播地址)
- 子网掩码:255.0.0.0 (默认)
- B 类地址 :网络地址的最高位是10 的地址
- 网络ID :第1、2部分
- 第1部分的取值范围为128(1 000 0000 )~191(1011 1111)
- 主机ID :第3、4部分
- 对于每个B类网络,其容纳的最大主机数量为256 × 256 -2=65534
- 子网掩码:255.255.0.0(默认)
- C 类地址 :网络地址的最高位是110 的地址
- 网络ID :第1、2、3部分
- 第1部分的取值范围为192(1100 0000 )~223(1101 1111)
- 主机ID :第4部分
- 对于每个C类网络,其容纳的最大主机数量为256 -2=254
- 子网掩码:255.255.255.0(默认)
- D 类地址 :网络地址的最高位是1110 的地址(多播地址/组播地址)
- 第1部分的取值范围为224(1110 0000 )~239(1110 1111)
- 组播地址没有子网掩码
- E 类地址 :网络地址的最高位是11110 的地址
- 第一部分的取值范围为240~254,保留为今后使用
- 注:本书并不讨论该类地址(无需了解)
- 保留的IP 地址 :此部分地址不能给计算机使用
- 主机ID 全0 的地址:特指某个网段(网络地址)
- 主机ID 全1 的地址 :特指该网段的全部主机(广播地址)
- 如果计算机发送数据包使用主机ID全是1的IP地址,则数据链路层的目标MAC地址为广播地址FF-FF-FF-FF-FF-FF。
- 127.x.x.x(127.0.0.1~127.255.255.254) :本机地址/本地环回地址/回送地址/本机回送地址(Loopback Address),即主机IP堆栈内部的IP地址,一般用来测试使用
- 案例1 :利用环回地址访问本地共享资源(只能使用 127.0.0.1)
本机共享资源的建立 → 本机共享资源的访问 → 本地共享资源的取消
- 案例2 :ping环回地址(可以使用 127.0.0.1~127.255.255.254)
- 注:利用环回地址访问自己,无需网卡(不需要消耗网络流量)。即便网卡被禁用或卸载,依旧可以访问回环地址。
- 169.254.0.0~169.254.255.255 :自动私有IP地址
- 若计算机设置IP地址为自动获取,而又没有DHCP服务器给计算机自动分配地址,此时计算机系统会自动分配169.254.x.x
- 案例:某网络管理员(水平较差)给所有的计算机装好系统后,设置计算机的IP地址为自动获取,但是没有配置DHCP服务器,此时所有的计算机都会自动获得169.254网段中的地址。换言之,虽然没有给计算机配置地址,但是它们属于同一网段,还能正常通信。
- 0.0.0.0 :
- 案例1:当计算机的IP地址和网络中其他计算机的IP地址冲突时,使用ipconfig命令看到的就是0.0.0.0,子网掩码也是0.0.0.0
- 案例2:假设计算机设置IP地址为自动获取,当计算机向DHCP服务请求地址时,其发送数据的源IP地址即为0.0.0.0
4.1.4 IP地址的编址方法2:子网划分(等长、变长)
- 问题引入 :IP地址传统的分类方法 → 地址浪费
- Case1:假设一个网段有200台计算机,分配一个C类网络212.2.3.0 255.255.255.0。可见,可用的地址范围212.2.3.1~212.2.3.254(254个可用地址),虽然没有全部用完,这种情况还不算是极大浪费(预留地址给新增计算机使用)。
- Case2:假设一个网段中有400台计算机,分配一个C类网络,地址就不够用了。此时,如果分配一个B类网络131.107.0.0 255.255.0.0,可用的地址范围131.107.0.1~131.107.255.254(56634个可用地址),从而造成了极大浪费。
- 解决方案 :子网划分 → 将现有网段的主机位 借用做网络位(子网位) ,划分出多个子网。子网划分的任务包括两部分:
- 确定子网掩码的长度
- 确定子网中第一个可用的 IP 地址 和最后一个可用的 IP 地址
等长子网划分
等长子网划分:将一个网段等分成多个网段,也就是等分成多个子网。
- C 类网络子网划分 :
- 1 个C 类网络 等分为2 个子网 :将子网掩码往右移动一位
- 子网A 、B 的子网掩码:255.255.255.128
- 子网A 可用的地址范围 :192.168.0.1(0 000 0001)~192.168.0.126(0 111 1110)
- 子网B 可用的地址范围 :192.168.0.129(1 000 0001)~192.168.0.254(1111 1110)
- 1 个C 类网络 等分为4 个子网 :将子网掩码往右移动两位
- 子网A~D 的子网掩码:255.255.255.192
- 子网A 可用的地址范围 :192.168.0.1(00 00 0001)~192.168.0.62(00 11 1110)
- 子网B 可用的地址范围 :192.168.0.65(01 00 0001)~192.168.0.126(0111 1110)
- 子网C 可用的地址范围 :192.168.0.129(10 00 0001)~192.168.0.190(1011 1110)
- 子网D 可用的地址范围 :192.168.0.193(11 00 0001)~192.168.0.254(1111 1110)
- 1 个C 类网络 等分为8 个子网 :将子网掩码往右移动三位
- 子网A~H 的子网掩码:255.255.255.224
- 子网A 可用的地址范围 :192.168.0.1(000 0 0001)~192.168.0.30(000 1 1110)
- 子网B 可用的地址范围 :192.168.0.33(001 0 0001)~192.168.0.62(0011 1110)
- 子网C 可用的地址范围 :192.168.0.65(010 0 0001)~192.168.0.94(0101 1110)
- 子网D 可用的地址范围 :192.168.0.97(011 0 0001)~192.168.0.126(0111 1110)
- 子网E 可用的地址范围 :192.168.0.129(100 0 0001)~192.168.0.158(1001 1110)
- 子网F 可用的地址范围 :192.168.0.161(101 0 0001)~192.168.0.190(1011 1110)
- 子网G 可用的地址范围 :192.168.0.193(110 0 0001)~192.168.0.222(110 1 1110)
- 子网H 可用的地址范围 :192.168.0.225(111 0 0001)~192.168.0.254(1111 1110)
- B 类网络子网划分 :
- 1 个B 类网络 等分为2 个子网 :将子网掩码往右移动一位
- 子网A 、B 的子网掩码:255.255.128.0
- 子网A 可用的地址范围 :131.107.0.1~131.107.127.254
- 子网B 可用的地址范围:131.107.128.1~131.107.255.254
- A 类网络子网划分 :
- 1 个A 类网络 等分为4 个子网 :将子网掩码往右移动两位
- 子网A~D 的子网掩码:255.192.0.0
- 子网A 可用的地址范围 :42.0.0.1~42.63.255.254
- 子网B 可用的地址范围:42.64.0.1~42.127.255.254
- 子网C 可用的地址范围:42.128.0.1~42.191.255.254
- 子网D 可用的地址范围:42.192.0.1~42.255.255.254
变长子网划分
- 规律 :如果一个子网地址块是原来网段的 ,子网掩码就在原网段的基础上后移n 位,不等长子网,子网掩码也不同。
- 点到点网络 :路由器之间的互连为点到点连接,也需要一个单独的网段(2个可用地址)。
- 每个子网是原来网络的,即
- 子网掩码向后移动6位,即255.255.255.252。
- 子网D 的可用地址 :192.168.0.1(0000 00 01)~192.168.0.2(0000 0010)(刚好有2个可用地址)
- 子网E 的可用地址 :192.168.0.5(0000 01 01)~192.168.0.6(0000 0110)(刚好有2个可用地址)
练习题
- 判断192.168.0.101/26所属的子网。
- 判断192.168.0.101/27所属的子网。
- 思考1:假设一共有200台计算机,其中一个网段有140台,另一个网段有60台。能否通过子网划分,将1个C类网络进行划分,得到满足要求的2个子网?
- 不能,通过子网划分(无论是等长还是变长),1个C类网络所能得到的子网的最大容纳数量为128,不满足140的要求。此时,只能通过划分2个C类网络来达到上述要求(此种浪费无法避免)。
4.1.5 IP地址的编址方法3:超网(合并网段)
- 问题引入 :最初 ,网络中有200台电脑,因此需要分配一个C类网络(子网掩码为255.255.255.0)。后来 ,网络中又新增200台电脑,此时原本的C类网络中的剩余IP地址数量不够,因此需要重新分配一个C类网络(子网掩码为255.255.255.0)。值得注意的是,计算机A和计算机B并不在同一个网段中,相互通信时需要经过路由器的转发,效率低下(路由器的一个接口可以设置两个地址)。从逻辑上看 ,图中存在两个网段(子网掩码不同);从物理连接上看,图中仅存在一个网段(两个交换机之间并没有被路由器隔开)。有没有更好的办法,让这两个C类网段的计算机认为在一个网段?
- 解决方案 :将192.168.0.0/24和192.168.1.0/24 两个C类网络合并
- 合并后的网段的可用地址:192.168.0.1~192.168.1.254
- 注:合并之后,IP地址192.168.0.255/23(主机位不是全1)就可以给计算机使用
- 规律:子网掩码往左移1位,能够合并两个连续的网段
- 注意事项 :不是任何连续的网段都能合并
- 案例1:尽管192.168.1.0和192.168.2.0两个网段是连续的,但是仅仅将子网掩码向左移动1位,并不能够合并网段(此时网络位还是不同)。进一步地,将子网掩码向左移动2位,可以将上述两个网段合并。但是,向左移动2位子网掩码,实际上是合并了4个网段。
- 结论:子网掩码左移1位能够将能够合并两个网段;左移2位,能够合并四个网段;左移3位,能够合并8个网段。
- 判断连续的2个网段是否能够合并,只要第一个网络号能被2整除,就能够通过左移1位子网掩码合并。
- 判断连续的4个网段是否能够合并,只要第一个网络号能被4整除,就能够通过左移2位子网掩码合并将这4个网段合并。
- 判断连续的8个网段是否能够合并,只要第一个网络号能被8整除,这8个连续的网段就能够通过左移3位子网掩码合并。
练习题
练习题1:子网、超网的区分
- 182.2.1.2 255.255.255.0 :划分了子网的一个B类地址
- 第一部分为182 → 该地址为B类地址
- B类地址的子网掩码为255.255.0.0 → 题中子网掩码右移 → 该地址为B类地址划分子网后的地址
- 12.2.1.2 255.255.0.0 :划分了子网的一个A类地址
- 第一部分为12 → 该地址为A类地址
- A类地址的子网掩码为255.0.0.0 → 题中子网掩码右移 → 该地址为A类地址划分子网后的地址
- 192.2.1.2 255.255.0.0 :超网合并了256个C类网段
- 第一部分为192 → 该地址为C类地址
- C类地址的子网掩码为255.255.255.0 → 题中子网掩码左移 → 该地址为C类地址合并网段后的地址
- 结论 :判断一个网段是超网还是子网
- 通过左移子网掩码合并多个网段,右移子网掩码将一个网段划分成多个子网,使得IP地址打破了传统的A类、B类、C类的界限。
- Step1:判断该网段是A类网络、还是B类网络、还是C类网络,默认A类子网掩码/8,B类子网掩码是/16,C类子网掩码是/24。
- Step2:如果该网段的子网掩码比默认子网掩码长,则是子网;如果该网段的子网掩码比默认子网掩码短,则是超网。
练习题2:将IP地址拖拽到正确的位置。
练习题3:下列哪些IP地址能够分配给计算机使用?(双选题)
- 205.7.8.32/27:主机号全0,不能给计算机使用
- 191.168.10.2/23:可以给计算机使用
- 127.0.0.1:本地回环地址,不能给计算机使用
- 224.0.0.10:第一部分为224,为多播地址,不能给计算机使用
- 203.123.45.47/28:主机号全1,不能给计算机使用
- 10.10.0.0/13:可以给计算机使用
小结
IP地址的编址方法
- 分类的IP 地址 :最基本的编址方法,在1981年就通过了相应的标准协议。
- 子网的划分 :对最基本的编址方法的改进,其标准[RFC 950]在1985年通过。
- 构成超网 :比较新的无分类编址方法。1993年提出后很快就得到推广应用。
4.2 静态路由和动态路由
4.2.1 网络层实现的功能
- 问题引入:在计算机网络领域,网络层应该向运输层提供怎样的服务("面向连接"还是"无连接")曾引起了长期的争论。争论焦点的实质就是:在计算机通信中,可靠交付应当由谁来负责?是网络还是端系统?
- 观点1 (虚电路服务) :
- 这种观点认为,应借助于电信网的成功经验,让网络负责可靠交付,计算机网络应模仿电信网络,使用面向连接的通信方式。
- 面向连接 :通信之前先建立虚电路 (Virtual Circuit) ,以保证双方通信所需的一切网络资源。
- 网络通信建立的虚电路是逻辑连接,分组都沿着这条逻辑连接按照存储转发方式传送,而并不是真正建立了一条物理连接。
- 电话通信建立的电路是物理连接(真正的连接)。
- 分组交换的虚连接和电路交换的连接只是类似,但并不完全一样。
- 网络层提供可靠服务 :如果再使用可靠传输的网络协议,就可使所发送的分组无差错 、按序到达终点 、不丢失 、不重复。
- 观点2 (数据报服务) :
- 无连接:网络在发送分组时不需要先建立连接。每一个分组(即IP数据报)独立发送,与其前后的分组无关(不进行编号)。
- 网络层不提供可靠服务 :网络层不提供服务质量的承诺,即所传送的分组可能会出现差错 、丢失 、重复 和乱序 ,当然也不保证分组传送的时限。
- 路由器直接丢弃传输过程中出错的数据包
- 如果网络中待发的数据包太多,路由器处理不了就直接丢弃
- 路由器不判断数据包是否重复
- 路由器不确保数据包按发送顺序到达终点
- 网络层提供数据包服务 :网络层向上只提供简单灵活的 、无连接的 、尽最大努力交付的数据报服务。
- 观点1 (虚电路服务) VS. 观点2 (数据报服务):
- 网络层最终选择提供的服务:数据报服务(重要!!!)
- 网络层功能就是给传输层协议提供简单灵活的、无连接的、尽最大努力交付的数据报服务。
- 通俗一点来讲,网络中的路由器为每一个数据报单独的选择转发路径,网络层不提供服务质量的承诺。
补充知识点:网络畅通的条件
计算机网络畅通的条件:数据包能去能回,道理很简单、也很好理解,却是我们排除网络故障的理论依据。
- Case1 :目标主机不可达 → 数据包没有到达目的地
- 原因:沿途路由器不存在到达目标网段的路由
- Case2 :请求超时 → 数据包已经到达目的地,但是返不回来
- 原因1:沿途路由器不存在到达源网段的路由
- 原因2:目标主机B关机了
- 原因3:目标主机B开启了防火墙
- 网络排错 :先检查数据包是否能够到达目标网络,再检查数据包是否能够返回来
- Step1:检查计算机是否配置了正确的IP地址、子网掩码、网关
- Step2:逐一检查沿途路由器上的路由表,查看是否有到达目标网络的路由
- Step3:逐一检查沿途路由器上的路由表,查看是否有数据包返回所需的路由
4.2.2 路由信息的来源/路由表的生成、路由优先级
- 来源1 (直连路由Direct Route ) :路由器自动发现 的路由信息
- 原理:根据路由器接口的IP地址和子网掩码,自动获得到达该网段的下一条地址
- 路由信息 :
- 网段(Destination):接口IP地址和子网掩码"相与"
- 子网掩码(Mask):接口的子网掩码
- 下一条地址(NextHop):接口IP地址
- 网络设备启动之后,当路由器接口状态为UP时,路由器就能够自动发现去往自己接口直接相连的网络的路由。
- 来源2 (静态路由Static Route ) :在路由器上手工 ( 命令) 配置 的路由信息
- 说明:对于路由器来说,它只知道自己直连的网段。对于没有直连的网络,管理员需要手工添加到这些网段的路由
- 适用场景:规模较小的网络、不怎么变化的网络
- 来源3 (动态路由Dynamic Route ) :路由器使用动态路由协议( RIP 、OSPF ) 而获得路由信息
- 说明:同一个路由器可以同时运行多种动态路由协议
- 适用场景:规模较大的网络,能够针对网络的变化自动选择最佳路径
- 路由优先级 :0~255
- 规定 :路由优先级的值越小 ,则路由优先级就越高
- 工作原理:当存在多条目的地址/掩码相同,但来源不同的路由时,则具有最高优先级的路由便成为了最优路由,并被加入到路由表中,而其他路由则处于未激活状态,不显示在IP路由表中。
- 注:设备上的路由优先级一般都具有缺省值。不同厂家的设备上对于优先级的缺省值的规定可能不同。(下图为华为路由器的默认优先级)
- 注意事项 :
- 点到点链路的静态路由:下一跳可以写路由器的接口名,也可以写下一跳地址
- 以太网链路的静态路由:最好写下一跳地址
4.2.3 静态路由
简化路由表1 :路由汇总/ 路由汇聚
- 问题引入:如果Internet(全球最大的互联网)上的路由器把全球所有的网段都添加到路由表,则路由表将会非常庞大。路由器每转发一个数据包,都要检查路由表为该数据包选择转发接口,庞大的路由表势必会增加处理时延。
- 解决方案 :通过合理的地址规划,可以通过路由汇总简化路由表 。将物理位置连续的网络 分配地址连续的网段,就可以在边界路由器上将远程的网络合并成一条路由,这就是路由汇总。
- 案例分析1 (正常情况) :
- 路由汇总前 :路由表非常庞大(管理员需要逐条配置,工作量大)
- 对于北京市的路由器R1:需要添加到石家庄市中每个网段的路由;对于北京市的其他路由器:需要重复上述操;添加的总路由条数 = 北京市路由器的个数 * 石家庄市网段的个数
- 对于石家庄市的路由器R2:需要添加到北京市中每个网段的路由;对于石家庄市的其他路由器:需要重复上述操作;添加的总路由条数 = 石家庄市路由器的个数 * 北京市网段的个数
- 路由汇总后:路由表得到精简
- 案例分析2 (特殊情况) :路由汇总的例外
- 问题引入:石家庄市路由器的所在网段都是172.16网段,但是172.16网段并不都在石家庄市(北京市也存在该网段)
- 解决方案:到石家庄的网络照样可以汇总成一条路由,但是需要针对例外的那个网段单独添加路由。
- 分析:当计算机A给计算机B(192.168.10.5/24)发送数据时,此时路由器R1中存在2条匹配的路由(究竟选择哪一个)。根据最长前缀匹配算法(见下),路由器会选择第②条路由进行转发,即下一条地址为10.0.1.2,而不是10.0.0.2。
- 最长前缀匹配(Longest Prefix Match)/ 最长匹配/ 最佳匹配 :在IP协议中,路由器用于在路由表中进行选择的一种算法。因为路由表中的每个表项都指定了一个网络,所以一个目的地址 可能与多个表项 匹配。最明确(子网掩码最长 )的一个表项就叫做最长前缀匹配。
- 示例 :在路由器R1中添加如下的3条路由
- [R1]ip route-static 172.0.0.0 255.0.0.0 10.0.0.2 --第1条路由
- [R1]ip route-static 172.16.0.0 255.255.0.0 10.0.1.2 --第2条路由
- [R1]ip route-static 172.16.10.0 255.255.255.0 10.0.3.2 --第3条路由
- 路由器R1收到一个目标地址是172.16.10.12的数据包,会使用第3条路由转发该数据包。路由器R1收到一个目标地址是172.16.7.12的数据包,会使用第2条路由转发该数据包。路由器R1收到一个目标地址是172.18.17.12的数据包,会使用第1条路由转发该数据包。
- 注:CIDR灵活地将对连续的子网进行精确合并
简化路由表2 :默认路由
- 全球最大的网段 :子网掩码越短,主机位越多,该网段的地址数量就越大。如果想让一个网段包括全部的IP地址,就要求子网掩码短到极限,最短就是0,子网掩码变成了0.0.0.0,这也意味着该网段的32位二进制形式的IP地址都是主机位,任何一个地址都属于该网段。
- [R1]ip route-static 0.0.0.0 0.0.0.0 10.1.1.2 -- 默认路由
- [R1]ip route-static 172.0.0.0 255.0.0.0 10.0.0.2 --第1条路由
- [R1]ip route-static 172.16.0.0 255.255.0.0 10.0.1.2 --第2条路由
- [R1]ip route-static 172.16.10.0 255.255.255.0 10.0.3.2 --第3条路由
- 默认路由 :在路由器中添加到0.0.0.0 0.0.0.0 网段的路由
- 作用:当路由器没有为数据包找到更为精确匹配的路由时,使用默认路由作为最后匹配的一条路由。
- 适用场景:使用默认路由作为指向Internet的路由
- 问题引入1 :默认路由造成路由环路 (环路拓扑 )
- 计算机A 与计算机B 通信 :
- A给B发送数据:A → RA → RB → RC → RD → B
- B给A发送数据:B → RD → RE → RF → RA → A
- 此种情况下,网络实现了负载均衡
- 计算机A 与计算机C 通信 :
- A给C发送数据:A → RA → RB → RC → RD → RE → RF → B(此条路径并非最佳路由)
- C给A发送数据:C → RF → RA → A
- 计算机A 与不存在的地址通信(ping) :A → RA → RB → RC → RD → RE → RF → RA → ......(路由环路)
- 问题引入2 :默认路由造成路由环路 (直连拓扑)
- 解决方案 :TTL字段(Time To Live,生存时间)
- 原理:计算机发送数据包时,都会设置初始的TTL。数据包每经过一个路由器,TTL就会减1,等到TTL减为0时,路由器就会丢弃该数据包。
- Windows:TTL=128(默认)
- Linux:TTL=64(默认)
- 可视化TTL :
- 案例1:ping网关(沿途不经过任何路由器,故TTL没有任何变化)
- 案例2:ping非网关(沿途经过路由器,故TTL会递减)
- 案例3:ping非网关(人工指定TTL,不使用默认值,观察TTL过期现象)
- 案例4:跟踪发送数据所经过的路由
小结
- 末端路由器 使用默认路由精简路由表
- 骨干网中的路由器 使用路由汇总精简路由表