GRE隧道协议学习笔记

ops/2024/9/23 7:29:47/

使用场景

  • 分布在不同地理位置的总公司和分公司怎么通过网络连接起来?
    • 可以使用ISP网络连接。
    • 在豆包中可以看到如下回答
    • 在这里插入图片描述
    • 通俗的讲就是运营商收费提供网络服务,有个人的有企业的,企业的很贵

为什么要使用GRE隧道

  • 当然你也可以用其他隧道协议,GRE只是安全协议中的一种,试想,如果你公司机密的东西,直接发送到网络上,如果有人劫持了,获取了你的公司机密信息,那么商业秘密就不复存在了,使用一种约定的加密通信技术,就能让你和公司之间的信息交换,不会被黑客所截取,GRE就是其中一种安全协议,来保障你的通信处于安全的环境

GRE工作原理

  • 缩写:Generic Routing Encapsulation, 通用路由协议封装
  • 起源:思科(HW的竞争对手)、Net-Smiths
  • 网络位置:三层网络协议

什么叫三层网络协议,在网络层常见的就是下面几种协议,ICMP不认识,IP总认识吧
在这里插入图片描述
在这里插入图片描述

  • GRE被称为是封装协议,IP被称为是传输协议

GRE隧道

  • 用户和服务器之间那根网线,虚拟出来一个“通道”,这个“通道”就是GRE隧道

GRE特点

  • 只提供数据包的封装,没有加密功能来防止网络侦听和攻击

所以为了安全肯定还得用几种加密技术来进一步匿名化你的信息

IPSec

  • 这就是要用那个加密技术

GRE的优点

  • 多协议的本地网络可以通过单一协议的骨干网实现连接
  • 将一些不能连续的子网连接起来,用于组建VPN
  • 扩大网络的工作范围,例如RIP最多16跳,GRE连接隧道会计算成1跳

Tunnel接口

  • 在进行Android开发的时候,发现有一个网卡叫做Tunnel,也不知道干啥的,今天知道了
  • 路由器通过Tunnel接口来实现隧道功能,允许利用传输协议(如IP)来传送任意协议的网络数据包
  • 本质:也是系统虚拟出来的接口,和rmnet之类的一样,可以在逻辑上进行定义,定义几个都行,但是最终传输要靠物理接口,具体用哪个我也不知道那是linux干的活
  • Tunnel接口并不特别指定传输协议或者负载协议,提供的是一个用来实现标准的点对点的传输模式(P2P是不是跟这个类似???)

Tunnel功能实现包括什么

  • 1.乘客协议,通过Tunnel传输的负载(网络数据)的封装协议,目前锐捷的产品软件在Tunnel接口上只支持IP协议作为乘客协议
  • 2.封装协议,就是用来二次封装并辨识待传输负载的协议,锐捷产品在Tunnel接口上支持的封装模式有GRE、IPIP
  • 3.传输协议,就是实际传输经过载体协议二次封装后的网络协议,锐捷产品使用最广泛应用的IP协议作为传输协议

以锐捷为例进行设置tunnel的源地址和目的地址

  • 在这里插入图片描述
    在这里插入图片描述
  • 设置封装协议,不设置默认就是GRE
  • 在这里插入图片描述
  • 设置密码
  • 在这里插入图片描述
  • 查看一下设置的tunnel接口的状态

在这里插入图片描述

扩展知识

Loopback接口

  • 该接口完全由软件模拟的设备本地接口,永远都是UP状态,发往Loopback接口的数据包将会在设备本地进行处理,包括路由信息
  • Loopback接口的IP地址用来作为OSPF路由协议的设备标志,实施发向Telnet或者远程Telnet访问的网络接口

NULL接口

  • 路由器还提供了另外一个逻辑卡接口,即NULL的虚拟接口
  • 相当于一个可用的系统设备
  • 永远都在UP状态,永远不会主动发送或者接受网络数据,任何发送NULL接口的数据包都会丢弃
  • 该接口上不能配置任何命令
  • 用处:网络数据流的过滤,比如给了一堆报文,没用的直接发到这个接口进行丢弃

http://www.ppmy.cn/ops/114653.html

相关文章

rocky9.2的lvs的NAT模式下的基本使用的详细示例

文章目录 前言什么是LVS?(Linux Virtual Server)LVS的组成1. 负载均衡器(Load Balancer)2. 后端服务器池(Real Servers)3. IPVS(IP Virtual Server)4. 调度算法(Schedul…

Android 10.0 系统添加自定义屏保并设置为默认屏保功能实现

1.前言 在10.0的系统rom定制化开发中,在进行相关项目开发的过程中,由于需要在系统锁屏休眠的时候,需要显示 相关的背景,就是自定屏保功能,所以就需要添加自定义的屏保,然后在上一篇已经实现在进行锁屏休眠的时候 进入屏保的功能,这里就介绍下自定义屏保和设置默认屏保功…

Wireshark学习使用记录

wireshark 是一个非常好用的抓包工具,使用 wireshark 工具抓包分析,是学习网络编程必不可少的一项技能。 原理 Wireshark使用的环境大致分为两种:一种是电脑直连互联网的单机环境,另外一种就是应用比较多的互联网环境,也就是连接…

利用WPF绘制轮廓并保存为图片

1.前言 WPF作为显示工具也挺好用,用C#开发应用软件会比较省力,当然也有其缺点,如在对效率要求较高的情况下有性能问题,本文记录用WPF绘制轮廓并保存为图片相关内容。 显示效果也还不错,满足调试使用了&#xf…

k8s下的网络通信与调度

目录 一、k8s网络通信 1、k8s通信整体架构 2、flannel网络插件 (1)flannel跨主机通信原理 (2)flannel支持的后端模式 3、calico网络插件 (1)简介 (2)网络架构 (…

Lua中..和...的使用区别

一. .. 的用法 二. ... 的用法 在 Lua 中,... 是一个特殊符号,它用于表示不定数量的参数。当你在函数定义或调用中使用 ... 时,它可以匹配任意数量的参数,并将它们作为列表传递。在您的代码示例中&am…

FinGPT金融大模型

FinGPT仓库https://github.com/AI4Finance-Foundation/FinGPT 功能: Adviser。根据新闻判断市场情绪(积极、消极、中性),给出投资建议。Quantitative Trading。定制属于自己的金融助手。叫它关注某几个股票、监测消息等。可以直…

安卓数据存储——SharedPreferences

共享参数 SharedPreferences 1、sharedPreferences是Android的一个轻量级存储工具,采用的存储结构是key - value的键值对方式 2、共享参数的存储介质是符合XML规范的配置文件。保存路径是:/data/data/应用包名/shared_prefs/文件名.xml 使用场景&…