计算机网络学习笔记(四):网络层(待更新)

目录

[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:跟踪发送数据所经过的路由

小结

  • 末端路由器 使用默认路由精简路由表
  • 骨干网中的路由器 使用路由汇总精简路由表
相关推荐
加油,旭杏21 分钟前
【中间件学习】fastCG介绍和使用
学习·nginx·fastcgi
limengshi13839227 分钟前
通信工程学习:什么是TFTP简单文件传输协议
网络·网络协议·学习·信息与通信
GFCGUO1 小时前
ubuntu18.04运行OpenPCDet出现的问题
linux·python·学习·ubuntu·conda·pip
叫我龙翔2 小时前
【Linux】进程间关系与守护进程
linux·运维·服务器·计算机网络
丝丝不是土豆丝2 小时前
学习 CSS 新的属性 conic-gradient 实现环形进度条
学习
S hh3 小时前
【Linux】进程地址空间
java·linux·运维·服务器·学习
wusam3 小时前
螺蛳壳里做道场:老破机搭建的私人数据中心---Centos下Docker学习04(环境准备)
学习·docker·centos
攸攸太上3 小时前
Spring Gateway学习
java·后端·学习·spring·微服务·gateway
Geek之路4 小时前
QT系统学习篇(1)
开发语言·qt·学习
唐·柯里昂7984 小时前
[3D打印]拓竹切片软件Bambu Studio使用
经验分享·笔记·3d