首页 > 系统相关 >六、kubernetes网络-linux网络虚拟化(二)

六、kubernetes网络-linux网络虚拟化(二)

时间:2023-06-25 15:23:31浏览次数:52  
标签:隧道 kubernetes Linux ipip 网络 IPv4 tun linux 封装

1.6 初识Linux隧道:ipip

前文介绍的tun设备也叫作点对点设备,之所以叫这个名字,是因为tun经常被用来做隧道通信(tunnel)。我们可以通过命令ip tunnel help查看IP隧道的相关操作。Linux原生支持下列5种L3隧道:·ipip:即IPv4 in IPv4,在IPv4报文的基础上封装一个IPv4报文;·GRE:即通用路由封装(Generic Routing Encapsulation),定义了在任意一种网络层协议上封装其他任意一种网络层协议的机制,适用于IPv4和IPv6;·sit:和ipip类似,不同的是sit用IPv4报文封装IPv6报文,即IPv6 over IPv4;·ISATAP:即站内自动隧道寻址协议(Intra-Site Automatic Tunnel Addressing Protocol),与sit类似,也用于IPv6的隧道封装;·VTI:即虚拟隧道接口(Virtual Tunnel Interface),是思科提出的一种IPSec隧道技术。下面我们以ipip为例,介绍Linux隧道通信的基本原理。

注:Linux L3隧道底层实现原理都基于tun设备,因此我们可以将本节看作tun设备的高级应用篇。

1.6.1 测试ipip隧道

要使用ipip隧道,首先需要内核模块ipip.ko的支持。通过lsmod|grep ipip查看内核是否加载,若没有则用modprobe ipip加载,正常加载应该显示:

加载ipip内核模块后,就可以创建隧道了。方法是先创建一个tun设备,然后将该tun设备绑定为一个ipip隧道。ipip隧道网络拓扑如图1-18所示。

创建两个network namespace:

创建两对veth pair,令其一端挂在某个namespace下:

分别给两对veth-pair端点配上IP并启用:

验证一下:v1 ping v2,结果为不通。检查ip_forward的值:

我们已经知道Linux本身就是一台路由器,Linux提供开关/proc/sys/net/ipv4/ip_forward来操作路由功能,默认这个开关是关的,打开只需: 

 

标签:隧道,kubernetes,Linux,ipip,网络,IPv4,tun,linux,封装
From: https://www.cnblogs.com/haoyun123/p/17502969.html

相关文章

  • Linux 导入
    Linux导入大纲发展历史系统目录结构Shell之Bash常用命令分享发展历史Unix和LinuxUnix操作系统在20世纪60年代构思完成并实现,并在1970年首次发布。由我们的C语言之父,丹尼斯·里奇和肯·汤普逊自行开发。它因容易获取与可移植性高而广泛被学术机构和工商企业采用、......
  • 创建Linux快捷指令
    要创建Linux快捷指令,可以按照以下步骤进行操作:1.打开命令行终端,进入你想要存储快捷指令的目录。2.创建一个新文件,文件名为你想要的快捷指令名称,例如myshortcut。使用文本编辑器打开这个新文件并添加你要执行的命令。例如,如果你想要创建一个叫做myshortcut的指令,当你运行它时会......
  • Linux usb 4. Device 详解【转】
    转自:https://blog.csdn.net/pwl999/article/details/120997525文章目录1.简介2.PlatformLayer2.1PlatformDevice2.2PlatformDriver3.UDC/GadgetLayer3.1GadgetBus3.2GadgetDevice3.2.1EndpointAlloc3.2.2EndPointAccess3.2.3UDCControl3.3GadgetDriver(Con......
  • Linux mem 2.8 Kfence 详解【转】
    转自:https://pwl999.blog.csdn.net/article/details/1244949581.原理介绍Kfence(KernelElectricFence)是Linux内核引入的一种低开销的内存错误检测机制,因为是低开销的所以它可以在运行的生产环境中开启,同样由于是低开销所以它的功能相比较KASAN会偏弱。Kfence的基本原......
  • 通过句柄恢复Linux下误删除的数据库数据文件
    环境介绍:OS:RedhatEnterPrise5.4DB:OracleEnterPriseDatabase11gR2(11.2.3.0)   在数据库正常运行时,运维人员在无意中将部分数据文件删除了,此时数据库管理员并不知道,且数据库运行正常,并没有立即抛出错误和告警;但是开发人员在对某张表进行更新的时候,正好这张表在被删除的......
  • Linux 无法从本地字符界面(tty1-tty6)登陆深度解析
    Linux无法从本地字符界面(tty1-tty6)登陆深度解析作者:吴伟龙(PrudentWoo) 问题描述:    每次装完Oracle数据库之后,本地的tty1-tty6就无法登陆,只能通过vtty或tty7图形终端登陆。 问题现象:     输入完用户名密码之后,自动弹回如下界面:日志信息:[root@nec3~]#tail......
  • Linux使用HTTP代码示例
    以下是使用Linux命令行发送HTTP请求的示例:1.使用curl命令发送GET请求:```curl ExampleDomain```2.使用curl命令发送POST请求:```curl-XPOST-d"param1=value1&param2=value2" ExampleDomain```3.使用wget命令发送GET请求:```wget ExampleDomain```4.使用wget命令发送POST......
  • 使用ansible-app2k8s管理和部署服务到 kubernetes
    ansible-app2k8s#1介绍使用ansible管理和部署服务到kubernetes适用于项目容器化,多套k8s环境的管理,可结合CICD工具做DevOps来自于项目实践,已部署多套k8s环境自建k8s阿里云ACK腾讯云TEK华为云CCEAWSEKS微软云AKS#2主要功能镜像构建并推送到镜像仓......
  • TensorFlow11.2 循环神经网络RNN-循环神经网络、RNN-layer实现
    循环神经网络SentimentAnalysis(情感分析)类似于淘宝的好评还是差评,我们比较直观的一个方法就是:这里不好的是:Downsides:1.Longsentence100+wordstoomuchparameters[w,b]。就是比如说我们有100个单词,会产生很多个w,b,参数太多了。2.Nocontextinformation(没有语......
  • AD域下,域管理员网络无法正常连接
    排错思路:1、是否拥有上网权限,test超级管理员自然是有上网权限的(该项排除); 2、浏览器是否使用了代理,有些软件在安装的时候,会自动启用浏览器的代理,开启某些特定的端口; 3、其他原因 解决办法: 1、查看是否有上网权限,如若没有,则开通上网权限; 2、浏览器关闭代理......