网络隧道技术

2023-05-16

隧道技术摘要

隧道技术(Tunneling)是网络基础设置在网络之间传递数据的方式,使用隧道技术传递可以是不同协议的数据包,隧道协议将这些其他协议的数据包重新封装在新的包头中发送。被封装的数据包在隧道的两个端点之间通过网络进行路由,被封装数据包在网络上传递时所经历的逻辑路径称为隧道

简单来说,隧道技术是一类网络协议,是将一个数据包封装在另一个数据包中进行传输的技术;使用隧道的原因是在不兼容的网络上传输数据,或在不安全网络上提供一个安全路径。通过网络隧道技术,可以使隧道两端的网络组成一个更大的内部网络。(把不支持的协议数据包打包成支持的协议数据包之后进行传输)。

隧道协议

要创建隧道,隧道的客户机和服务器双方必须使用相同的隧道技术,隧道协议有二层隧道协议与三层隧道协议两类。

二层隧道协议对应OSI模型中数据链路层,使用作为数据交换单位,PPTP、L2TP、L2F都属于二层隧道协议。是将数据封装在点对点协议的帧中通过互联网络发送。

三层隧道协议对应OSI模型中网络层,使用作为数据交换单位,GRE、IPSec、GRE都属于三层隧道协议。都是数据包封装在附加的IP包头中通过IP网络传送。

网络隧道技术应用

隧道在Linux 中应用

IP隧道是指一种可在两网络间进行通信的通道。在该通道里,会先封装其他网络协议的数据包,之后再传输信息。

Linux原生共支持5种IPIP隧道:

  • ipip: 普通的IPIP隧道,就是在报文的基础上再封装成一个IPv4报文
  • gre: 通用路由封装(Generic Routing Encapsulation),定义了在任意一种网络层协议上封装其他任意一种网络层协议的机制,所以对于IPv4和IPv6都适用
  • sit: sit模式主要用于IPv4报文封装IPv6报文,即IPv6 over IPv4
  • isatap: 站内自动隧道寻址协议(Intra-Site Automatic Tunnel Addressing Protocol),类似于sit也是用于IPv6的隧道封装
  • vti: 即虚拟隧道接口(Virtual Tunnel Interface),是一种IPsec隧道技术

LVS中也使用了 IP隧道技术 Virtual Server via IP Tunneling

SSH隧道技术

SSH提供了一个重要功能,称为转发forwarding或者称为隧道传输tunneling,它可以通过加密频道将明文流量导入隧道中,在创建SSH隧道时, SSH客户端要设置并转交一个特定本地端口号到远程机器上;一旦SSH隧道创建,用户可以连到指定的本地端口号以访问网络服务。本地端口号不用与远地端口号一样。

SSH隧道主要使用场景一般为 规避防火墙加密网络流量

规避防火墙,SSH隧道可以使一个被防火墙阻挡的协议可被包在另一个没被防火墙阻挡的协议里,这技巧可用来逃避防火墙政策。而这种操作符合“数据包封装在另一个数据包中进行传输的技术”,故称为SSH隧道技术。

SSH隧道类型

在ssh连接的基础上,指定ssh clientssh server的某个端口作为源地址,所有发至该端口的数据包都会透过ssh连接被转发出去;至于转发的目标地址,目标地址既可以指定,也可以不指定,如果指定了目标地址,称为定向转发,如果不指定目标地址则称为动态转发:

定向转发

定向转发把数据包转发到指定的目标地址。目标地址不限定是ssh client 或 ssh server,既可以是二者之一,也可以是二者以外的其他机器。

动态转发

动态转发不指定目标地址,数据包转发的目的地是动态决定的。

2.3.1 本地端口转发

本地转发中的本地是指将本地的某个端口(1024-65535)通过SSH隧道转发至其他主机的套接字,这样当我们的程序连接本地的这个端口时,其实间接连上了其他主机的某个端口,当我们发数据包到这个端口时数据包就自动转发到了那个远程端口上了

2.3.2 远程端口转发

远程转发和本地很相似,原理也差不多,但是不同的是,本地转发是在本地主机指定的一个端口,而远程转发是由SSH服务器经由SSH客户端转发,连接至目标服务器上。本质一样,区别在于需要转发的端口是在远程主机上还是在本地主机上

现在SSH就可以把连接从(39.104.112.253:80)转发到(10.0.0.10:85)。

2.3.3 动态端口转发

定向转发(包括本地转发和远程转发)的局限性是必须指定某个目标地址,如果需要借助一台中间服务器访问很多目标地址,一个一个地定向转发显然不是好办法,这时就要用的是ssh动态端口转发,它相当于建立一个SOCKS服务器。各种应用经由SSH客户端转发,经过SSH服务器,到达目标服务器,不固定端口。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

网络隧道技术 的相关文章

  • linux下使用第三方商店安装应用

    安装 snap store 进行下载 xff0c 相当与第三方应用商店 xff0c 但是往往比某一个官方软件源里面的应用要丰富或更实用 到 snap docs 中选择你的 linux 版本进入安装文档 xff0c 根据指示一步一步安装即可
  • Centos7离线安装sqlserver2017

    Centos7离线安装sqlserver2017 根据操作系统版本选择下载匹配的sqlserver版本 可以在这里找一下https packages microsoft com config 我选择是先在一台有网的机器上下载好rpm安装包之
  • HC-05蓝牙模块配置

    目录 1 连接蓝牙模块a 蓝牙模块通过USB转TTL连接电脑b 打开串口助手 xff0c 波特率设置为38400c 检验是否连接成功 2 配置波特率3 修改密码4 设置主从模式5 设置蓝牙连接模式6 查询自身地址7 添加配对蓝牙地址8 测试
  • Windows沙盒技术调研

    转载自 xff1a 移动云开发者社区 一 Windows沙盒技术介绍 Windows沙盒提供了轻型桌面环境 xff0c 可安全地隔离运行应用程序 沙盒环境中Windows软件保持 34 沙盒 34 状态 xff0c 并独立于主机运行 沙盒是
  • OS + Linux Shell bash / sh / ksh / csh / tcsh / adb shell

    s Android adb shell ADB Android debug bridge Android手机实际是基于Linux系统的 Google提供的ADB工具包带有fastboot exe rar http dl iteye com
  • kali利用CVE_2019_0708(远程桌面代码执行漏洞)攻击win7

    一 漏洞说明 2019年5月15日微软发布安全补丁修复了CVE编号为CVE 2019 0708的Windows远程桌面服务 xff08 RDP xff09 远程代码执行漏洞 该漏洞在不需身份认证的情况下即可远程触发 危害与影响面极大 目前
  • 数据库系统原理1

    第一章 数据库管理技术发展的不同阶段形成不同的特点 数据描述经历了三个阶段对应于三个数据模型 第二章 数据库系统的生命周期 xff0c 书中可能和我们学习软工的时候有些出入 xff0c 其实就是不同时间有不同的理解 xff0c 横看成岭侧成
  • ssh详解

    SSH ssh secure shell protocol 22 tcp 安全的 具体的软件实现 xff1a OpenSSH ssh协议的开源实现 xff0c CentOS dropbear xff1a 另一个开源实现 SSH协议版本 v1
  • spring框架的简单配置步骤——小马同学@Tian

    spring框架配置步骤 1 导入jar包 本教程使用spring5 1 5 xff0c 在pom xml中进行导入依赖 Maven方式 xff1a span class token tag span class token tag spa
  • PSReadLine - Powershell 的强化工具

    PSReadLine Powershell 的强化工具 UPDATE 2022 3 4 根据其 Github README 的说明 xff0c If you are using Windows PowerShell on Windows 1
  • 美化 PowerShell

    美化 PowerShell UPDATE 2022 3 4 本文使用的 oh my posh 基于 V2 版本 xff0c 而更新且功能更强大的新版本已经发布 xff0c 如需使用请参考其官方文档 1 准备工作 Step1 下载并安装 Po
  • nltk下载语料库

    1 首先我们使用命令pip list查看是否安装了nltk模块 xff0c 如果没有 xff0c 则执行命令pip3 install nltk进行安装 2 之后 xff0c 我们在Jupyter Notebook中进行语料库的安装 impo
  • Spark scala和java的api使用

    Spark scala和java的api使用 1 利用scala语言开发spark的worcount程序 xff08 本地运行 xff09 package com zy spark import org apache spark rdd R
  • 解决Ubuntu18.04循环登录/卡在开机界面/无法进入图形界面的问题

    原因 xff1a NVIDIA显卡驱动损坏 解决方案 xff1a 重启进入命令行模式卸载原有NVIDIA驱动程序重新安装NVIDIA驱动后重启 xff0c 问题解决 Step1 Ubuntu系统开机进入命令行模式 系统启动后 xff0c 在
  • C++ 遍历注册表项下的所有键和值

    include 34 stdafx h 34 include lt time h gt include lt windows h gt include lt iostream gt include lt stdio h gt include
  • 9月10日美团网2014校招研发笔试哈尔滨站

    1 链表翻转 给出一个链表和一个数k xff0c 比如链表1 2 3 4 5 6 xff0c k 61 2 xff0c 则翻转后2 1 4 3 6 5 xff0c 若k 61 3 翻转后3 2 1 6 5 4 xff0c 若k 61 4 x
  • 2014校园招聘京东软件开发类笔试(完整版)

    时间 xff1a 2013 9 10 2013 10 8 地点 xff1a 四川大学 天津大学 职位 xff1a 软件开发工程师岗 语言 xff1a java 1 A 2 C 3 D 4 B 5 A 二 1 B 三1 D 2 B 3 C 4
  • Win8.1电脑声音可以外放但是插入耳机没有声音

    今天早上正准备学习英语 xff0c 发现耳机插入电脑没有声音 xff0c 于是开始找百度 xff0c 一步一步剥茧抽丝去查找问题来源 问题 xff1a 点击喇叭出现如下图片 xff1a 平常只有右半个图现在却有两个图标了 步骤 xff1a
  • 在线购物系统问题描述&领域词汇表

    在线购物问题描述 v2 0 时间 2017年 4月19日星期三 参与者在线客户能够通过网站完成在线购物 xff0c 顶层用况包括商品信息浏览 购物 咨询 用户注册 xff0c 用户登录 用户反馈 浏览商品用况可以用于客户寻找和浏览想要看的商
  • 在线购物领域类图

随机推荐

  • 在线购物系统用况分析

    一 系统用况图 1 用况图 2 xff08 1 xff09 用况图综述 系统主要是使顾客方便安全地购物 xff0c 已注册顾客可以通过系统查找 浏览 购买商品 xff0c 并且能够进行评价商品 与相应的商家沟通 或者向网站管理人员反馈问题
  • 被做成类似通信图的分析类图

    实验二博客 xff1a http blog csdn net simonruyang article details 70332294 一 注册 1 图形如下 2 文字说明 xff08 1 xff09 类图综述 目的 xff1a 让未注册顾
  • 顺序图实验记录,又懒又差劲,好懒好懒

    实验二博客 xff1a http blog csdn net simonruyang article details 70332294 一 注册 1 图形如下 2 文字说明 xff08 1 xff09 类图综述 目的 xff1a 让未注册顾
  • 承上的状态机图,又是烂图一副

    1 图形文档如下 2 文字说明 此状态机图反映了系统面向顾客从注册到购物完成的整体的状态变迁以及状态内部发生的事件 xff0c 一共有六个状态 xff0c 状态间转移如上图所示 2 1 ViewItems 中的事件 2 2 Register
  • 让Windows秒变Mac主题,还原度高达99%

    小伙伴们注意 xff1a 公众号的推送机制不再按照时间前后推送了 xff0c 微信公众号信息流乱序 君哥建议大家把科技毒瘤君公众号置顶 xff08 设为星标 xff09 xff0c 以便第一时间看到推送 xff0c 非常感谢 xff0c 方
  • 阿里Arthas(阿尔赛斯)-java诊断工具使用入门

    1 下载官方测试程序启动 doda 64 host166 game curl O https arthas aliyun com math game jar doda 64 host166 game java jar math game j
  • LHL 华为开发者大会有感 之 什么是HMS

    华为移动服务 同义词 HMS xff08 Huawei Mobile Services的英文缩写 xff09 一般指华为移动服务 华为移动服务 xff08 HMS xff09 全称为Huawei Mobile Services xff0c
  • EF Core之自动历史记录

    EF Core之自动历史记录 有的场景下需要记录特定表的增删改操作 xff0c 以便追溯 传统的做法是在增删改的方法里同步做记录 xff0c 很繁琐 在这里我们可以配合EF Core的DBContext做一个全局管控 全局管控自然就要有固定
  • SQL Server 2012 导出数据及分离MDF、LDF

    最近在设计数据库时看到自己设计的数据库和师哥师姐给我们的不一样 xff0c 于是就查了一下把数据库导出写了下来 分离数据库步骤 这是师哥师姐给我们的数据库格式 xff0c 如下 xff1a 那么如何生成MDF和LDF格式的数据库呢 xff1
  • kindeditor异步加载时无法显示编辑框

    事情是这样的 xff0c 我在A页面的div通过 jQuery load 方法载入一个页面B时 xff0c B页面带有编辑框 textarea xff0c 现在想让这个 textarea 显示为一个 kindeditor的富文本编辑区域 x
  • VR游戏设计之三大特性

    2016 年 9 月 23 24 日 xff0c 由 CSDN 和创新工场联合主办的 MDCC 2016 移动开发者大会 中国 xff08 Mobile Developer Conference China xff09 将在北京 国家会议中
  • 组合导航系列文章(十二):滤波器基本原理

    我觉得不错的地方 3 滤波器估计原理 组合导航中 xff0c 先验是imu解算的值 xff0c 观测是gps等传感器给出的值 xff0c 融合的目的是找到概率最大的那个值 上面介绍的三种方法都是对先验和观测的融合 xff0c 由于极大似然要
  • Android 未进行依赖管理导致的问题:IDE 报错 “Unresolved reference: registerForActivityResult“但是能正常编译运行

    前言 谷歌前段时间废弃了 startActicityForResult 取而代之的是 ActicityResultApi xff0c 作为一个紧跟谷歌步伐走的菜鸟开发者 xff0c 当然想着的是第一时间学习并替换项目中的相关代码 但是 xf
  • 基于DataBinding的基类(Activity、Fragment、Adapter)

    基于DataBinding的基类 xff08 Activity Fragment Adapter xff09 1 BaseBindActivity public abstract class BaseBindActivity lt DB e
  • STM32 LwIP单网卡绑定多个IP地址

    STM32 LwIP单网卡绑定多个IP地址 芯片 xff1a STM32F107VC 编译器 xff1a KEIL4 作者 xff1a SY 日期 xff1a 2018 6 28 11 02 53 概述 在只有一个物理网卡的情况下 xff0
  • nginx 配置https 并兼容http 或强制http 转为https

    当我们升级http 为https时 xff0c 为了兼顾一些访问者还是通过http访问的方式 xff0c 我们通常采用两种方式 第一种 xff1a http 可以访问 xff0c https也可以访问 第二种 xff1a http 访问时
  • 滤波学习理解----EKF(一)

    最近回到slam方向了 xff0c 所以有时间整理一下最近的收获 最复杂也是最简单的模块 滤波 引入 那么滤波是什么呢 xff1f 滤波就是由于观测observation xff08 OB xff09 天生具备的误差和噪声 当有多个信号源观
  • systemd开机启动和关机回调脚本

    一 开机执行一次的脚本 我们通过可以创建一个 etc rc local文件 xff1a etc rc local文件内容如下 xff1a span class token operator span span class token ope
  • (五)Selenium自动化测试实战—PO模式

    nbsp 上一篇 四 selenium自动化测试之上传本地文件 要开朗的spookypop的博客 CSDN博客 selenium上传本地文件 先看下测试代码运行效果 在做自动化测试时 测试框架设计很重要 测试代码写法也很多种 最简单的莫过于
  • 网络隧道技术

    隧道技术摘要 隧道技术 xff08 Tunneling xff09 是网络基础设置在网络之间传递数据的方式 xff0c 使用隧道技术传递可以是不同协议的数据包 xff0c 隧道协议将这些其他协议的数据包重新封装在新的包头中发送 被封装的数据