零入门容器云网络实战-8->veth pair设备介绍

news2024/11/20 4:21:45

在介绍veth pair之间,先看一下下面的图,
在这里插入图片描述

在这里插入图片描述

这类东西有没有见过?

如果没有见过,赶紧看看你方圆10米之内有没有?

这就是网线,最明显的特征是有两端!即,两个水晶头

一端可以链接普通的电脑,笔记本,另一端可以链接路由器,交换器等等

甚至,一端链接笔记本,另一端也可以链接笔记本都是可以的。

总之,通过这个网线,将同一网段的设备链接在了一起,或者将不同网段的设备链接在了一次。

通过这根网线实现的功能,实现了不同设备之间的数据包传输。

这根网线不分左右,没有方向。在设备上找到网口,随便找一端插入即可。

数据包就会从一端传入另一过端。

这是物理世界的网线,那么,在软件世界里,有没有类似的网线呢?

of course!

veth pair!

1、veth pair 网络设备介绍

Veth pair 可以被称为虚拟网线!有多种叫法。个人觉得,叫虚拟网线,更加容易理解。

虽然是虚拟网线,但不是真正的存在一根虚拟网线。

但是,确实存在成对出现的两个虚拟设备;可以认为是成对出现的两个水晶头

只要是一个水晶头接收到数据,另一个水晶头也就接收到数据了。

Veth-pair 不是一个设备,而是一对设备,用于连接两个虚拟网络设备。

2、为什么veth pair的一端接收到数据包后,在没有网线的情况下,另一端也就接收到数据包了?

veth pair 是根据数据链路层的 MAC 地址对网络数据包进行转发的过程来实现的,本质是反转通讯数据的方向,

需要发送的数据会被转换成需要收到的数据重新送入内核网络层进行处理,从而间接的完成数据的注入。

3、Veth pair的使用场景

veth pair 在虚拟网络设备中是作为”网线“的存在,

  • 可以将不同的网络命名空间链接起来
    • 将ns1命名空间和ns1命名空间链接在一起,直接进行通信
    • 在这里插入图片描述
  • 将虚拟网桥和多个网络命名空间链接在一起
    • 将cni0网桥和ns1命名空间链接在一起
    • 在这里插入图片描述

链接起来之后,就可以进行数据包的通信了。

4、操作veth pair

创建veth pair, 设置IP,启动veth

4.1、如何创建veth pair

ip link add veth1 type veth peer name veth2

在这里插入图片描述

在这里插入图片描述

注意,默认创建的veth pair 有MAC地址,但是,没有分配IP地址。

4.2、如何给veth pair虚拟设备分配IP、删除IP

4.2.1、方式一:ip add add 方式

ip addr add 10.244.1.2/24 dev veth1

ip addr add 10.244.1.3/24 dev veth2

在这里插入图片描述

4.2.2、方式二:ifconfig 方式

ifconfig veth1 10.244.1.2/24

ifconfig veth2 10.244.1.3/24

在这里插入图片描述

4.3、如何启动veth pair、停止veth pair

4.3.1、如何启动veth pair

其实,就跟启动普通网卡是一样的

ip link set veth1 up
ip link set veth2 up
ip netns exec ns1 ip link set veth2 up

在这里插入图片描述

4.3.2、如何停掉veth pair

其实,就跟操作普通网卡是一样的

ip link set veth1 down
ip link set veth2 down
ip netns exec ns1 ip link set veth2 down

在这里插入图片描述

4.4、如何删除虚拟网卡的IP呢?

ip addr del 10.244.1.2/24 dev veth1
ip addr del 10.244.1.3/24 dev veth2

在这里插入图片描述

4.5、删除veth pair设备

veth1和veth2是一对veth pair

删除的时候,删除其中一个就可以了。
另外一个也会默认删除的

ip link del veth1

在这里插入图片描述

5、参考文章

kubernetes网络 – linux网络基础设施
linux的proxy_arp和arp_filter参数解释
理解linux虚拟网络设备bridge
iptables之FORWARD链(什么情况会用到FORWARD链)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/191397.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【技术调研】关于仪表盘转图片推送钉钉的技术方案调研

方案1—纯后端实现 后端写定时任务,定时启动查询服务。查询出数据集结果,拼接成Table样式,再转换成图片。推送至钉钉。 优点:只需要后端开发,不涉及前端。 缺点:太定制化,不通用,样…

Dart语法学习-数据类型

一、Dart 语言对以下类型具有支持 Numbers (int, double) Strings (String) Booleans (bool) Lists (List, also known as arrays) Sets (Set) Maps (Map) Runes (Runes; often replaced by the characters API) Symbols (Symbol) The value null (Null) Dart 要求以 main 函数…

正大国际期货:什么是黄金保证金交易?黄金保证金交易包含哪些要点?

黄金保证金交易是指在黄金买卖业务中,市场参与者不需对所交易的黄金进行全额资金划拨,只需按照黄金交易总额支付一定比例的价款,作为黄金实物交收时的履约保证。黄金保证金交易根据类型不同,主要分为期货黄金保证金交易和现货黄金…

visual studio 调试增强,实现一行代码打印调用栈

如何主动打印调用栈?如果是Java、Js,那么很简单,三行就能实现。但 VisualStudio 就复杂多了。如果不下断点,那么只能在崩溃的时候被动查看。 而使用 Backward-Cpp ,只需在项目中拖入一个hpp文件,就可以主动…

[Android]ProgressBar进度条

ProgressBar ProgressBar是进度条控件,ProgressBar的应用场景很多,比如用户登录时,后台发送请求,以及进行等待服务器返回信息等一些比较耗时的操作。这个时候如果没有提示,用户可能会以为程序崩溃了或手机死机了&#…

【数据结构】1.2 数据结构的基本概念和术语

文章目录1. 数据、数据元素、数据项和数据对象2. 数据结构逻辑结构的种类存储结构的种类3. 数据类型和抽象数据类型数据类型抽象数据类型概念小结1. 数据、数据元素、数据项和数据对象 数据(Data) 能输入计算机且能被计算机处理的各种符号的集合。 信息…

AcWing1074. 二叉苹果树(树形DP +分组背包)

AcWing1074. 二叉苹果树(树形DP 分组背包)一、问题二、分析1、状态表示2、状态转移3、循环设计三、代码一、问题 二、分析 这道题是一个在数上做分组背包问题的模型,那么为什么是分组背包呢?作者在之前的文章中进行过详细地讲解&…

VUE2常用知识

1、Vue的基本原理 【】当一个Vue实例创建时,Vue会遍历data中的属性,用 Object.defineProperty(vue3.0使用proxy )将它们转为 getter/setter,并且在内部追踪相关依赖,在属性被访问和修改时通知变化。 每个组…

工时管理:按工作时间还是完成的任务来跟踪员工的生产力?

据中国社科院的一项调查显示:我国有86%的职场人都患有拖延症;50%的人不到最后一刻绝不开始工作;13%的人没有人催不能完成工作。 拖延症对小型或成长型企业的影响是很大的,毕竟,任务永远不会因为逃避或简单地坐在那里而…

【Linux】信号保存、信号处理、可重入函数、volatile关键字、SIGCHLD信号

目录 一、信号保存 1.1 信号相关的概念名词 1.2 在内核中的表示 1.3 sigset_t与操作函数 1.4 信号设定 二、信号处理 2.1 内核空间与用户空间 2.2 内核态和用户态 2.3 信号的捕捉流程 2.4 sigaction 函数 三、可重入函数 四、volatile 五、SIGCHLD信号 一、信号保…

当今主流的网络服务应用

文件传输协议 主机之间传输文件是IP网络的一个重要功能,如今人们可以方便地使用网页、邮箱进行文件传输。 然而在互联网早期,Web(World Wide Web,万维网)还未出现,操作系统使用命令行的时代,…

webpack前端应用之基础打包

目录 前言:初识 Webpack 5 一、前端工程化 1、webpack ​ (2)主要功能: 2、webpack的使用:配置文件所需要的信息(五大配置属性) 3、示例 强调: 4、webpack中使用的loader 二…

【Java基础】003 -- Java基础概念(计算机的存储规则)

目录 计算机的存储规则 1、什么是二进制? 2、为什么计算机要使用二进制存储数据? 3、进制之间可以转换吗? 4、码表(Text文本) 5、图片数据 6、声音数据 计算机的存储规则 在计算机中,任意的数据都是…

java集成RSA非对称加密数据传输

使用场景: 前端请求后端接口时如:登录接口,这时候需要传账号密码到后端接口请求这样就会暴露请求的数据。RSA非对称加密分公钥和私钥,公钥将数据进行加密,私钥对加密的数据进行解密 (当然前端最好是封装一下不要暴露出来公钥) 代码实现: 1、RSA工具类(或访问http:…

大数据舆情监控应用平台,TOOM大数据舆情监控系统的作用

大数据舆情监控应用是利用大数据技术对社会舆情的收集、分析、挖掘和展示的工具。它通常会收集和分析各种社交媒体、新闻媒体、博客等信息,以了解舆情动态和趋势。大数据舆情监控应用可以帮助企业和政府了解市场和社会动态,为决策提供支持。然而&#xf…

聚观早报 |比亚迪预计去年营收超4200亿元;美股三大指数集体收跌

今日要闻:比亚迪预计去年营收超 4200 亿元;美股三大指数集体收跌;王凤英正式加入小鹏汽车出任总裁;苹果计划在印度生产 25% 的 iPhone 手机;LVMH老板放狠话坚决打击代购行为比亚迪预计去年营收超 4200 亿元 1 月 30 日…

(Java高级教程)第四章必备前端基础知识-第三节3:JavaScript之DOM和BOM

文章目录一:WebAPI概述二:DOM(1)获取元素(2)事件(3)操作元素A:获取(修改)元素内容B:获取(修改)元素属性C&…

LeetCode 刷题系列 -- 108. 将有序数组转换为二叉搜索树

给你一个整数数组 nums ,其中元素已经按 升序 排列,请你将其转换为一棵 高度平衡 二叉搜索树。高度平衡 二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不超过 1 」的二叉树。示例 1:输入:nums [-10,-3,0,5,9]输出&a…

粒子群优化(PSO)算法例题实现

目录 一、实验要求 二、算法流程 三、案例实现及结果 完整程序: 一、实验要求 二、算法流程 粒子群算法流程: 1、初始化:初始化粒子群;给每个粒子赋予初始位置和速度 2、计算适应值:根据适应度函数,计…

新范式+新标准=世界级产品|StarRocks年度总结

岁序常易,华章日新。虎年即将落幕,雄关漫道,我们携手社区斗志昂扬,并肩虎跃雄关。兔年新岁将至,黎明破晓,我们协力社区蓄势待发,昂首共赴新程。值此送虎迎兔的新春佳节之际,感恩与St…