更多文章请移步:www.yanjun.pro

IP路由选择是一个通过路由器将分组从一个网络发送到另一个网络的过程,在开始介绍IP选择路由前,先来了解两个基础概念:路由选择协议和被路由协议

  • 路由选择协议: 是指被路由器用于在彼此互联的网络上动态地发现所有网络,这一协议可以确保所有路由器都拥有相同的路由选择表

    常见的路由选择协议有:RIP、RIPv2、EIGRP 和 OSPF 协议等

  • 被路由协议: 就是IPv4 和 IPv6

1、路由选择基础

一且将多个 WAN 和 LAN网络连接到路由器,一个彼此互联的网络就创建起来了,而接下来要完成的工作就是为这个互联网络上的所有主机配置IP地址,以便这些主机能够通过这一互联网络进行通信

路由选择:是指将分组从一个设备通过互联网络发往位于不同网络上的另一个设备的操作。 路由器并不关注网络中的主机,而只关注互联起来的网络以及通往各个网络的最佳路径。主机的IP地址用来获取通过可路由网络传送到指定网络中的分组,主机的MAC地址用来将分组从路由器发送到正确的目标主机上

对于直接连接到路由器的网络,路由器不需要配置路由,就可以知道如何到达这个网络;但是如果一个网络没有和这个路由器直接相连,那么就需要使用路由选择协议将数据发送到远端网络,这里就涉及到路由的选择协议了。路由选择协议包括静态路由动态路由两种,静态路由是通过网络管理员手工创建的,而动态路由是通过在网络中各路由器上面运行同一种协议,这些路由器可以不断更新各自对所有网络的了解,并将相关的信息加入到路由选择表中。如果网络连接出现变化,这个动态路由选择协议就会将这个变化自动通知到所有的路由器

2、路由选择过程

关于路由选择过程,这里使用一个图来说明

如果 PC1 需要对 PC2 进行ping访问,具体过程如下:

2.1、数据发送方

  • 首先ICMP 将创建一个回应请求数据包

  • ICMP 会将这一有效负荷递交给IP协议,IP协议会用它创建一个分组。在这个分组中至少包含了:源 IP 地址、目标 IP 地址和值为0x01(ICMP)的协议字段

  • 分组被创建后,IP 协议就需要判断目标 IP 地址是位于本地网络还是远程网络

  • 由于IP协议判断这是一个远程IP,因此需要将该分组发送到默认网关,要把分组发送到默认网关,首先得知道默认网关的MAC地址,因为只有知道了MAC地址,才能将数据交给数据链路层分装成帧,然后将数据帧发送给默认网关所在的接口 (在本地局域网上,主机只能通过MAC地址完成通信)

  • 接下来,需要检查主机的 ARP 缓存,查看此默认网关的 IP 地址是否已被解析为一个硬件地址,如果已被解析,此分组就可被传送到数据链路层以组建成帧;如果在主机的 ARP 缓存中没有被解析的硬件地址,那么用于查找 192.168.1.1 MAC地址的 ARP广播将被发送到本地网络上,这时,示例中的路由器会响应这个请求,并提供 GE 0/0/1 的MAC地址,此后主机会接收并缓存这个地址

  • 分组和目的方的MAC地址被交付给数据链路层,通过将控制信息封装到此分组上帧就被创建了。在这个帧中,附加有目的方MAC地址和源MAC地址,以及以太网类型字段,这个字段用于描述给数据链路层交付帧中分组的网络层协议

  • 数据帧创建完成后,就会交付到物理层上进行传输,这时局域网中的所有主机都会接收到这些比特,然后组成数据帧,再通过CRC校验并与帧中FCS字段的内容进行比对

    • 如果值不匹配,接收到的帧将被丢弃
    • 如果匹配,接着将检查目的方的MAC地址与自己是否匹配,如果匹配,则接下来查看以太网类型字段,以获悉完成数据后续处理的网络层协议
  • 将分组从帧中取出,并将其他部分丢弃,然后分组被递交给IP协议

  • IP 将接收这个分组,并检查它的 IP 目的地址。由于分组的目的地址与配置到此接收路由器上的各个地址均不匹配,此路由器会在其路由选择表中查找目的方的 IP 网络的地址

    • 如果路由表不包含网络10.10.10.0的相关表项,否则路由器会立即将收到的分组丢弃,并同时向发送数据的源方设备回送一个携带有目标网络不可达信息的 ICMP 报文

    • 如果路由器在路由选择表中查找到了关于目的方网络的内容,则分组将被交换到指定的输出接口

2.2、数据接收方

  • 路由器收到分组后,在分组中获取目的MAC地址,然后在ARP缓存中查找对应的MAC地址

    • 如果 PC2 的MAC地址已经被解析并保存在路由器的ARP缓存中,那么此分组和硬件地址将被递交到数据链路层,用于帧的组建
    • 如果此MAC地址没有被解析,则路由器将从GE0/0/2 发出一个ARP请求,用以查找 10.10.10.10 的MAC地址,此时PC2将用它的MAC地址进行响应,随后此分组和目的方的MAC地址都会被传递给数据链路层,用以组装成帧
  • 数据链路层将使用目标MAC地址和源MAC地址、以太网类型字段及帧尾部的 FCS 字段创建帧。随后这个帧将被递交到物理层,并由物理层以逐比特发送的方式发送到物理介质上
  • PC2将接收此帧,并立即运行 CRC,如果运算的结果与 FCS 字段中的内容匹配,则检查帧中的目标MAC地址。如果主机认定地址也是匹配的,则检查帧中以太网类型字段的值,判断将分组向上递交的网络层协议(IP协议)
  • 在网络层,IP会接收这个分组,并对 IP 报头运行 CRC 。如果校验通过, IP 随后将检查分组中目标地址。由于它们最终是匹配的,接下来要检查的就是分组的协议字段,并据此了解分组有效负荷的交付对象
  • 此有效负荷将被递交给 ICMP ,后者知道这是一个回应请求数据,ICMP 将负责应答这个请求。它首先立即丢弃这个接收到的分组,然后产生一个新的有效负荷作为回应应答数据
  • 后续的执行流程就和上节 (2.1) 的步骤相同了

3、静态路由

3.1、静态路由概述

静态路由需要管理员以手工方式为每台路由器的路由选择表添加路由

3.2、静态路由的优缺点

  • 优点

    • 不增加路由器CPU的开销,因为静态路由是由手工配置,不需要系统参与计算
    • 不增加路由器间的带宽占用
    • 提高了安全性,因为管理员可以有选择地配置路由,使之只通过某些特定的网络
  • 缺点

    • 管理员必须了解整个网络,以及每台路由器间的连接方式,以便实现对这些路由的正确配置
    • 如果网络结构有变化时,管理员必须在所有路由器上重新配置新的路由信息
    • 对于大型网络,使用静态路由选择基本上是不可行的,因为配置静态路由选择会产生巨大的工作量

3.3、配置静态路由

  • 配置各设备IP地址

    R1:
    [R1]int g0/0/1
    [R1-GigabitEthernet0/0/1]ip add 192.168.1.1 24
    [R1-GigabitEthernet0/0/1]int g0/0/0
    [R1-GigabitEthernet0/0/0]ip add 192.168.2.1 24R2:
    [R2]int g0/0/1
    [R2-GigabitEthernet0/0/1]ip add 192.168.2.2 24
    [R2-GigabitEthernet0/0/1]int g0/0/0
    [R2-GigabitEthernet0/0/0]ip add 192.168.3.2 24R3:
    [R3]int g0/0/1
    [R3-GigabitEthernet0/0/1]ip add 192.168.3.1 24
    [R3-GigabitEthernet0/0/1]int g0/0/0
    [R3-GigabitEthernet0/0/0]ip add 192.168.4.1 24
    
  • 配置静态路由

    R1:
    # 因为R1只有一个WAN,因此只需要配置默认路由就行
    [R1]ip route-static 0.0.0.0 0 192.168.2.2R2:
    # 去往192.168.1.0网段
    [R2]ip route-static 192.168.1.0 24 192.168.2.1
    # 去往192.168.4.0网段
    [R2]ip route-static 192.168.4.0 24 192.168.3.1R3:
    # 因为R3只有一个WAN,可以配置默认路由,也可以配置单条路由
    [R3]ip route-static 192.168.1.0 24 192.168.3.2
    [R3]ip route-static 192.168.2.0 24 192.168.3.2
    

网络基础:(二)路由选择基础与静态路由相关推荐

  1. linux网络编程二:基础socket, bind, listen, accept, connect

    linux网络编程二:基础socket, bind, listen, accept, connect 1. 创建socket #include <sys/types.h>     #inc ...

  2. 网络:使用ip route-static配置静态路由

    一.静态路由说明: 静态路由是由管理员在路由器中手动配置的固定路由,路由明确地指定了包到达目的地必须经过的路径,除非网络管理员干预,否则静态路由不会发生变化.静态路由不能对网络的改变作出反应,所以一般 ...

  3. 计算机应用基础二,计算机应用基础二

    计算机应用基础二 (2006-06-04 09:33:46) 计算机应用基础二 太湖电大工作站 张结明 选择: 1 构成计算机的物理实体称为__d__. a 计算机软件 b 计算机程序 c 计算机系统 ...

  4. HCIA网络基础11-IP路由原理及静态路由

    文章目录 自制系统.LAN 和广播域 路由 静态路由 以太网交换机工作在数据链路层,用于在网络内进行数据转发.而企业网络的拓扑结构一般会比较复杂,不同的部门,或者总部和分支可能处在不同的网络中,此时就 ...

  5. 计算机网络实验二 路由器的配置和静态路由

    实验二 路由器的配置和静态路由 一.实验目的: 掌握设备系统参数的配置方法 掌握配置路由器接口IP地址的方法 掌握测试两台直连路由器连通性的方法 掌握静态路由以及静态备份路由的配置方法 掌握测试静态路 ...

  6. 路由功能和路由协议【包括路由器各类介绍、静态路由、ad和metric、负载均衡】

    文章目录 路由器通过路由表转发数据 一.路由表内容 二.路由分组转发过程 路由器在网络中所扮演的角色 路由器说明 路由器和交换机的一些主要区别特征 路由器的硬件组成 路由器的两大功能介绍 路由表中路由 ...

  7. 路由配置与管理——静态路由配置与管理

    静态路由是一种最简单的路由,需手工配置,用一条指令指定静态路由的目的IP地址.子网掩码.下一跳IP地址,或者出接口.优先级等主要参数值就可以了.还可根据实际需要配置静态路由与BFD或者NQA的联动. ...

  8. 【实验】华为设备配置静态路由和缺省路由

        视频手把手教你做实验: [微思网络]视频教程:配置静态路由和缺省路由https://www.bilibili.com/video/BV1pq4y1Y7hP?spm_id_from=333.99 ...

  9. eNSP配置静态路由,动态路由,默认路由

    一.什么是路由 路由(routing)是指分组从源到目的地时,决定端到端路径的网络范围的进程 [1]  .路由工作在OSI参考模型第三层--网络层的数据包转发设备.路由器通过转发数据包来实现网络互连. ...

最新文章

  1. 此工作簿包含到其他数据源的链接
  2. 科大星云诗社动态20210815
  3. C语言case字句有什么作用,switch case 语句的使用规则
  4. 浅谈!important对CSS的重要性
  5. 华东师范大学计算机模拟试题,华东师范大学网院《计算机入门》模拟试题(卷)(ABCD卷合,含详细答案解析).doc...
  6. 说下自己看源码的一点经验(Python Web 相关)
  7. 黑马程序员_Java高新技术
  8. Spring 与 SpringMVC 容器父子关系引出的相应问题
  9. Luogu1501[国家集训队] Tree II
  10. 地球上最厉害的字体:Helvetica
  11. python3爬虫用代理池爬虫搜狗微信文章
  12. macbook2015年早期版本更换三星1T 980nvme遇坑过程
  13. 七代处理器装win7_Intel7代处理器 win10重装win7后无法安装显卡声卡驱动的解决方案 | A小可私人狗窝...
  14. 第六周博客作业西北师范大学|李晓婷
  15. Mysql 问题------解决1251 client does not support ...问题
  16. Python入门习题(63)——OpenJudge百练习题:DNA排序
  17. 基于esp32-cam毕设设计兼日志(1)
  18. 支撑马蜂窝「双11」营销大战背后的技术架构
  19. Vue错误日记 ——关于Vue-Router出现esm-bundler.js?6c02:2127 Uncaught TypeError: Object(...) is no的解决方案
  20. 最新八字精批付费测算系统源码+PHP内核

热门文章

  1. 《笨方法学PYTHON》——fourteenthlesson
  2. 说说java中extends与implements的区别
  3. Jeesite 4.0 学习笔记
  4. AndroidShortcuts
  5. 氢os关闭android键盘,氢OS11到来前,先听听这些一加用户对氢OS的吐槽
  6. contiki学习笔记 clock部分
  7. 如何恢复移动硬盘数据删除的文件
  8. Map集合及遍历 debug用法 以及集合的斗地主应用练习 D190326
  9. Mac DataGrip 闪退问题
  10. 计算机无法设置双屏显示,电脑怎么设置双屏或多屏显示?