分享好友 最新动态首页 最新动态分类 切换频道
docker cni插件分析
2024-12-27 03:05

Container Networking Interface(CNI)提供了一种linux的应用容器的插件化网络解决方案。最初是由rkt Networking Proposal发展而来。他的模型只涉及两个概念:

docker cni插件分析

容器(container) : 容器是拥有独立linux网络命名空间的独立单元。比如rkt/docker创建出来的容器。
网络(network): 网络指代了可以相互联系的一组实体。这些实体拥有各自独立唯一的ip。这些实体可以是容器,是物理机,或者其他网络设备(比如路由器)等。

Github地址

 

这个地址包括两个项目,一个是CNI项目,一个是plugin项目,plugin主要用来适配CNI项目。
plugin项目主要包括以下插件

 

以常见的bridge插件开始分析

插件路径

 

函数入口

 

skel.PluginMain函数由"github.com/containernetworking/cni/pkg/skel"包导入,这个包属于CNI项目,代码路径

 

进入skel.go文件,查看PluginMain函数

 

PluginMain函数把传入的变量再传入PluginMainWithError函数,PluginMainWithError函数再调用dispatcher变量的pluginMain方法,pluginMain方法定义如下

 

pluginMain方法首先根据环境变量获取当前请求的动作是ADD或者DEL还是CHECK,然后进入对应的分支,接着使用checkVersionAndCall方法检查传入的版本号然后调用传入的参数,这里被调用的函数就是插件本身传入的函数,如bridge.go文件里面定义的“cmdAdd, cmdGet, cmdDel”这些函数,过程如下

 

最终使用toCall调用到了bridge.go文件对应的函数。

bridge插件的cmdAdd方法用于添加一个容器到指定的网桥,核心过程是首先在宿主机创建网桥然后在容器内部通过系统调用创建VETH接口对,然后把属于host的接口设备为host命名空间,最后再配置容器接口IP地址

1、加载输入参数

 

2、创建网桥

 

3、获取容器命名空间

 

4、创建VETH接口对

 

5、使用ipam获取IP地址并计算网关地址

 

6、配置容器IP地址

 

7、网关地址设置为网桥IP

最新文章
这10个在线AI绘图工具太好用了,设计师们快来get!
无论你是一名专业的插画师,还是一个富有创造力、想随时随地记录生活灵感的人,现在只需要拿起平板或打开电脑浏览器,就能将头脑中的画面描绘出来。本篇文章,我们挑选了10款功能强大又方便好用的在线画图软件
高清美女写真不再是梦!用AI绘图工具一步到位,快速生成你的AI女友!
Midjourney:这个工具以其独特的艺术风格著称,非常适合那些追求创意和艺术效果的用户。Midjourney本质上是一个通过Discord平台操作的AI,可以生成神秘而梦幻的美女图像,非常适合用于社交媒体上的艺术展示。缺点是对于普通用户来说,学习
百度文库APP切入考研场景,上线“AI考研宝典”专区
多知12月17日消息,近日,百度文库APP上线了“AI考研宝典”专区,设置了“政治知识梳理”和“每日时政速记”功能,帮助考生快速梳理政治知识、了解时政信息。此外,“考研英语范文”和“英语作文美化”功能能够帮助考生快速掌握英文作文高
男科资讯:温州东瓯医院是不是正规医院?温州正规男科医院排名看点
  男科资讯:温州东瓯医院是不是正规医院?温州正规男科医院排名看点,温州男科医院排名:1.温州东瓯医院男科,2.温州男科医院,3.温州东瓯医院。温州东瓯医院男科作为专注男科诊疗的医院,医院坚持引进前卫的男科诊疗技术和治疗设备,为
竞价推广这么玩,花1元店铺可获10元的收益!
新店开业还在为没有流量而苦恼?眼睁睁听着隔壁老王家时不时响起“您有新的饿了么订单……”,心里别提有多心酸了!饿了么竞价排名,分分钟让你霸占25名以内的排名,订单蹭蹭涨不停!竞价推广是什么?商家通过竞价(付费)的方式增加自己店
如何解决房屋内墙面渗水问题?这些方法有哪些实际效果?
房屋内墙面渗水是一个令人头疼的问题,不仅影响美观,还可能导致墙面发霉、脱落,甚至影响居住者的健康。下面为您介绍一些解决房屋内墙面渗水问题的方法及其实际效果。1. 外墙防水涂料:在外墙表面涂刷防水涂料,形成一层防水膜,阻挡雨水
梦幻西游全服第一童子 18技能资质不差感受人生巅峰
  逆袭无级别的玩家有上千个,但是绝大多数的无级别装备价格都在10万以下,价格能到50万以上的少之又少!童子不一样,他是目前梦幻西游里175级玩家用来打服战的最佳选择。内丹数量6个、天生成长资质高、有必带技能,合成多技能的童子可比
(2024版)天翼云从业者认证考试题库(多选题汇总).docxVIP
(2024版)天翼云从业者认证考试题库大全-下(多选题汇总)第一部分多选题1.边缘节点是相对于网络复杂结构而提出的一个概念,指距离最终用户接入具有较少的中间环节的网络节点,对最终接入用户有较好的什么?A、运维能力B、响应能力C、安全能力D
贵阳夜生活指南:2024年热门商务KTV与夜总会排名及包厢价格概览
发布时间:2024-12-14 14:45:01贵阳,这座光与影交织的城市,以其独特的魅力吸引着八方来客。夜幕降临,华灯初上,贵阳的夜生活也随之拉开帷幕。你可以体验到别具一格的休闲娱乐方式,无论是逛街购物,还是享受夜总会的繁华,都能让人沉醉
上海徐汇线上青少年编程培训名单大全一览
课程单价:250元课时数:80节全部校区:童程童美少儿编程(南城中心)课程内容:课程采用SPIKE硬件以编程逻辑为主要学习目标,引导学生进行自主设计、搭建、编程,培养学生独立解决问题的能力。课程中还引入知名科创挑战活动的经典项目,锻
相关文章
推荐文章
发表评论
0评