网络路由介绍,route指令,查询路由表的过程,默认路由

2024-08-27 08:04

本文主要是介绍网络路由介绍,route指令,查询路由表的过程,默认路由,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

路由

本地主机的路由功能

引入

route指令 

查询路由表的过程

介绍

示例

默认路由

注意


路由

本地主机的路由功能

引入

报文经过多个路由器转发至公网,再从公网定位后转发至私网,最终到达目标主机

而报文肯定是要先经过本地主机的

  • 所以本地主机也具有路由功能,也就有自己的路由表

route指令 

从左到右介绍是:

  • 当前主机可以连接到的网络/主机(也就是下一跳的网络号/ip地址)
  • 下一跳的路由器地址(0.0.0.0表示当前记录对应的ip地址与本机在同一网段,不需要经过路由器)
  • 每一个网络都配有一个子网掩码(确定ip地址的网络部分和主机部分)
  • 路由标志 -- U : 该路由正在使用 , G : 该设备是路由器
  • Iface -- 该路由的网络接口

 

查询路由表的过程

介绍

  • 拿着目标主机的ip & genmask 和 destination 作对比
  • 如果匹配,则通过特定网络接口发送报文
  • 不匹配就继续往下查

  • 如果不知道结果,则说明这个路由器功能损坏,我们不把这种特殊情况列入

示例

路由就跟现实中问路是一样的:

假如你要去某个地方,问附近的路人

  • 要么他不知道
  • 要么他知道地方,比如左转等等
  • 要么他不知道,但他说谁谁谁比较熟悉这个地儿,让你去找他问
  • 要么他就是这个地方的人,直接带着你去(比如保安啥的)

但在网络世界里,"不知道"一般不会出现

  • 如果出现,只能说这个路由器有问题
  • 路由器本来就是要指明方向的,结果它做不到,这就属于特殊情况

默认路由

指向当前网段的一台路由器,该路由器负责连接当前网络和其他网络 

如果有多台路由器:

  • 这些路由器可以相互通信并交换路由信息,通过动态路由协议判断由哪个路由器来转发数据包
  • 如果有多个路由器能够到达目的地网络,路由器会选择最佳路径来转发数据包

总之就这样,经过查找每台设备的路由表,并根据转发规则,报文会一步步靠近目标主机

注意

以上目的ip都是公网ip

  • 如果目的ip是私网ip,只可能是想要访问同一网段内的主机

这篇关于网络路由介绍,route指令,查询路由表的过程,默认路由的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1111095

相关文章

SpringBoot项目注入 traceId 追踪整个请求的日志链路(过程详解)

《SpringBoot项目注入traceId追踪整个请求的日志链路(过程详解)》本文介绍了如何在单体SpringBoot项目中通过手动实现过滤器或拦截器来注入traceId,以追踪整个请求的日志链... SpringBoot项目注入 traceId 来追踪整个请求的日志链路,有了 traceId, 我们在排

Spring Boot 3 整合 Spring Cloud Gateway实践过程

《SpringBoot3整合SpringCloudGateway实践过程》本文介绍了如何使用SpringCloudAlibaba2023.0.0.0版本构建一个微服务网关,包括统一路由、限... 目录引子为什么需要微服务网关实践1.统一路由2.限流防刷3.登录鉴权小结引子当前微服务架构已成为中大型系统的标

MySQL9.0默认路径安装下重置root密码

《MySQL9.0默认路径安装下重置root密码》本文主要介绍了MySQL9.0默认路径安装下重置root密码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录问题描述环境描述解决方法正常模式下修改密码报错原因问题描述mysqlChina编程采用默认安装路径,

Java中对象的创建和销毁过程详析

《Java中对象的创建和销毁过程详析》:本文主要介绍Java中对象的创建和销毁过程,对象的创建过程包括类加载检查、内存分配、初始化零值内存、设置对象头和执行init方法,对象的销毁过程由垃圾回收机... 目录前言对象的创建过程1. 类加载检查2China编程. 分配内存3. 初始化零值4. 设置对象头5. 执行

SpringBoot整合easy-es的详细过程

《SpringBoot整合easy-es的详细过程》本文介绍了EasyES,一个基于Elasticsearch的ORM框架,旨在简化开发流程并提高效率,EasyES支持SpringBoot框架,并提供... 目录一、easy-es简介二、实现基于Spring Boot框架的应用程序代码1.添加相关依赖2.添

SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程

《SpringBoot中整合RabbitMQ(测试+部署上线最新完整)的过程》本文详细介绍了如何在虚拟机和宝塔面板中安装RabbitMQ,并使用Java代码实现消息的发送和接收,通过异步通讯,可以优化... 目录一、RabbitMQ安装二、启动RabbitMQ三、javascript编写Java代码1、引入

JavaScript中的reduce方法执行过程、使用场景及进阶用法

《JavaScript中的reduce方法执行过程、使用场景及进阶用法》:本文主要介绍JavaScript中的reduce方法执行过程、使用场景及进阶用法的相关资料,reduce是JavaScri... 目录1. 什么是reduce2. reduce语法2.1 语法2.2 参数说明3. reduce执行过程

如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解

《如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解》:本文主要介绍如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别的相关资料,描述了如何使用海康威视设备网络SD... 目录前言开发流程问题和解决方案dll库加载不到的问题老旧版本sdk不兼容的问题关键实现流程总结前言作为

SQL 中多表查询的常见连接方式详解

《SQL中多表查询的常见连接方式详解》本文介绍SQL中多表查询的常见连接方式,包括内连接(INNERJOIN)、左连接(LEFTJOIN)、右连接(RIGHTJOIN)、全外连接(FULLOUTER... 目录一、连接类型图表(ASCII 形式)二、前置代码(创建示例表)三、连接方式代码示例1. 内连接(I

redis群集简单部署过程

《redis群集简单部署过程》文章介绍了Redis,一个高性能的键值存储系统,其支持多种数据结构和命令,它还讨论了Redis的服务器端架构、数据存储和获取、协议和命令、高可用性方案、缓存机制以及监控和... 目录Redis介绍1. 基本概念2. 服务器端3. 存储和获取数据4. 协议和命令5. 高可用性6.