Linux创建Macvlan网络

最近在看Docker的网络,测试Macvlan部分时,发现Docker创建Macvlan与预期测试结果不一样。所以查阅了Linux下配置Macvlan,记录如下。

参考

1.Linux Macvlan
2.图解几个与Linux网络虚拟化相关的虚拟网卡-VETH/MACVLAN/MACVTAP/IPVLAN
3.创建macvlan的命令

环境

Centos7.9

准备

1. 安装包

[root@centos7-10 ~]# yum install -y net-tools iputils telnet traceroute iproute bridge-utils  
  • net-tools:netstat命令
  • iputils:ping命令
  • telnet:telnet命令
  • traceroute:traceroute命令
  • iproute:ip命令
  • bridge-utils:brctl命令

创建Macvlan

1. 创建命令

1.1 创建命令

  • 命令说明
[root@centos7-10 ~]# ip link help
Usage: ip link add [link DEV] [ name ] NAME[ txqueuelen PACKETS ][ address LLADDR ][ broadcast LLADDR ][ mtu MTU ] [index IDX ][ numtxqueues QUEUE_COUNT ][ numrxqueues QUEUE_COUNT ]type TYPE [ ARGS ]ip link delete { DEVICE | dev DEVICE | group DEVGROUP } type TYPE [ ARGS ]省略 ......ip link afstats [ dev DEVICE ]ip link help [ TYPE ]TYPE := { vlan | veth | vcan | dummy | ifb | macvlan | macvtap |bridge | bond | team | ipoib | ip6tnl | ipip | sit | vxlan |gre | gretap | ip6gre | ip6gretap | vti | nlmon | team_slave |bond_slave | ipvlan | geneve | bridge_slave | vrf | macsec }
[root@centos7-10 ~]# 
  • TYPE 说明
    • macvlan 网络包括:private 、vepa 、bridge 、passthru 、source,概念参见 Linux Macvlan 和 图解几个与Linux网络虚拟化相关的虚拟网卡-VETH/MACVLAN/MACVTAP/IPVLAN
[root@centos7-10 ~]# ip link help macvlan  // TYPE类型是macvlan
Usage: ... macvlan mode MODE [flag MODE_FLAG] MODE_OPTSMODE: private | vepa | bridge | passthru | source
MODE_FLAG: null | nopromisc
MODE_OPTS: for mode "source":macaddr { { add | del } <macaddr> | set [ <macaddr> [ <macaddr>  ... ] ] | flush }
[root@centos7-10 ~]# 

1.2 创建Macvlan

  • 基于enp0s5创建两块macvlan网卡,分别是enp0s5.100
// 创建两个macvlan,模式bridge
[root@centos7-10 ~]# ip link add link enp0s5 name enp0s5.100 type macvlan mode bridge
[root@centos7-10 ~]# 
[root@centos7-10 ~]# ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp0s5: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000link/ether 00:1c:42:ae:b6:41 brd ff:ff:ff:ff:ff:ff
3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default link/ether 02:42:e7:1d:3a:b1 brd ff:ff:ff:ff:ff:ff
18: enp0s5.100@enp0s5: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000link/ether 9a:a3:e9:6d:aa:af brd ff:ff:ff:ff:ff:ff

2. 设置命令

2.1 配置网卡

  • 配置网卡 IP
// 配置IP,更多命令详见 ip address help
[root@centos7-10 ~]# ip addr add 10.211.55.129/24 dev enp0s5.100
[root@centos7-10 ~]# 
[root@centos7-10 ~]# ip a | grep -A3 enp0s5.100@enp0s5
18: enp0s5.100@enp0s5: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000link/ether 9a:a3:e9:6d:aa:af brd ff:ff:ff:ff:ff:ffinet 10.211.55.129/24 scope global enp0s5.100valid_lft forever preferred_lft forever
[root@centos7-10 ~]# 
  • 配置混杂模式(promisc)
// 配置Promisc,更多命令详见 ip link set help
[root@centos7-10 ~]# ip link set enp0s5.100 promisc on
[root@centos7-10 ~]# ip a | grep -A3 enp0s5.100@enp0s5
18: enp0s5.100@enp0s5: <BROADCAST,MULTICAST,PROMISC> mtu 1500 qdisc noop state DOWN group default qlen 1000link/ether 9a:a3:e9:6d:aa:af brd ff:ff:ff:ff:ff:ffinet 10.211.55.129/24 scope global enp0s5.100valid_lft forever preferred_lft forever
[root@centos7-10 ~]# 
  • 启用网卡
// 启动网卡,更多命令详见 ip link set help
[root@centos7-10 ~]# ip link set enp0s5.100 up
[root@centos7-10 ~]# ip a | grep -A3 enp0s5.100@enp0s5
18: enp0s5.100@enp0s5: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000link/ether 9a:a3:e9:6d:aa:af brd ff:ff:ff:ff:ff:ffinet 10.211.55.129/24 scope global enp0s5.100valid_lft forever preferred_lft forever
[root@centos7-10 ~]# 

3. 测试网络

3.1 测试网络

  • 测试网络
// ping 自己,通
[root@centos7-10 ~]# ping -c3 10.211.55.129
PING 10.211.55.129 (10.211.55.129) 56(84) bytes of data.
64 bytes from 10.211.55.129: icmp_seq=1 ttl=64 time=0.044 ms
64 bytes from 10.211.55.129: icmp_seq=2 ttl=64 time=0.054 ms
64 bytes from 10.211.55.129: icmp_seq=3 ttl=64 time=0.126 ms--- 10.211.55.129 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 1999ms
rtt min/avg/max/mdev = 0.044/0.074/0.126/0.037 ms
// ping 网关,通
[root@centos7-10 ~]# ping -c3 10.211.55.1
PING 10.211.55.1 (10.211.55.1) 56(84) bytes of data.
64 bytes from 10.211.55.1: icmp_seq=1 ttl=128 time=0.299 ms
64 bytes from 10.211.55.1: icmp_seq=2 ttl=128 time=0.313 ms
64 bytes from 10.211.55.1: icmp_seq=3 ttl=128 time=0.299 ms--- 10.211.55.1 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2001ms
rtt min/avg/max/mdev = 0.299/0.303/0.313/0.021 ms
// ping 网络其它IP,通
[root@centos7-10 ~]# ping -c3 10.211.55.18
PING 10.211.55.18 (10.211.55.18) 56(84) bytes of data.
64 bytes from 10.211.55.18: icmp_seq=1 ttl=64 time=0.570 ms
64 bytes from 10.211.55.18: icmp_seq=2 ttl=64 time=0.507 ms
64 bytes from 10.211.55.18: icmp_seq=3 ttl=64 time=0.471 ms--- 10.211.55.18 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2001ms
rtt min/avg/max/mdev = 0.471/0.516/0.570/0.040 ms
// ping 外网,通
[root@centos7-10 ~]# ping -c3 www.baidu.com
PING www.a.shifen.com (110.242.68.3) 56(84) bytes of data.
64 bytes from 110.242.68.3 (110.242.68.3): icmp_seq=1 ttl=128 time=12.5 ms
64 bytes from 110.242.68.3 (110.242.68.3): icmp_seq=2 ttl=128 time=14.2 ms
64 bytes from 110.242.68.3 (110.242.68.3): icmp_seq=3 ttl=128 time=12.6 ms--- www.a.shifen.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 3035ms
rtt min/avg/max/mdev = 12.503/13.130/14.244/0.800 ms
[root@centos7-10 ~]# 

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

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

相关文章

Java8 - 更优雅的字符串连接(join)收集器 Collectors.joining

Java8中的字符串连接收集器 在JDK8中&#xff0c;可以采用函数式编程&#xff08;使用 Collectors.joining 收集器&#xff09;的方式对字符串进行更优雅的连接。 Collectors.joining 收集器 支持灵活的参数配置&#xff0c;可以指定字符串连接时的 分隔符&#xff0c;前缀 和…

Sentinel-3如何处理并下载LST数据-陆地表面温度”(Land Surface Temperature)

LST 通常指的是“陆地表面温度”&#xff08;Land Surface Temperature&#xff09;。陆地表面温度是指地球表面上陆地部分的温度&#xff0c;而不包括水体表面。LST 是遥感技术中一个重要的参数&#xff0c;可以通过卫星遥感等手段进行测量和监测。 陆地表面温度对于许多领域…

浅谈高并发以及三大利器:缓存、限流和降级

引言 高并发背景 互联网行业迅速发展&#xff0c;用户量剧增&#xff0c;系统面临巨大的并发请求压力。 软件系统有三个追求&#xff1a;高性能、高并发、高可用&#xff0c;俗称三高。三者既有区别也有联系&#xff0c;门门道道很多&#xff0c;全面讨论需要三天三夜&#…

kibana(elk)使用脚本统计重点URL访问次数

文章目录 前言一、Elasticsearch脚本是什么?二、使用步骤前言 在日常工作中,需要定期对系统中一些重点URL进行访问统计,这个时候就需要借助一些工具进行分析处理 一、Elasticsearch脚本是什么? Elasticsearch脚本是Elasticsearch中用于自定义数据处理和查询逻辑的脚本代码…

人工智能_机器学习072_SVM支持向量机_人脸识别模型训练_训练时间过长解决办法_数据降维_LFW人脸数据建模与C参数选择---人工智能工作笔记0112

我们先来看一下之前的代码: import numpy as np 导入数学计算库 from sklearn. svm import SVC 导入支持向量机 线性分类器 import matplotlib.pyplot as plt 加载人脸图片以后,我们用pyplot把人脸图片数据展示一下 from sklearn.model_selection import train_test_split 人脸…

Unity之组件的生命周期

PS&#xff1a;第二天&#xff0c;依旧在摸鱼学unity 一、组件的概念 我本身是由Web后端转到了游戏后端&#xff0c;最近因为工作原因在学ET框架。学到了 ECS 编程模式开发&#xff08;E —— Entity&#xff0c;C —— Component &#xff0c; S —— System&#xff09;实体、…

【rosbag】rosbag命令--查看提取bag中的内容

1.查看消息 rosbag info --.bag topics是其中的话题内容&#xff0c;/imu中只写了包含imu的数据&#xff0c;但是imu是9轴的&#xff0c;到底磁力计信息是否包含在其中呢&#xff1f; 2.将bag中的某个话题转为txt 将file_name.bag文件中topic_name话题的消息转换到Txt_name.…

mpegts.js使用指南

如何使用 mpegts.js 步骤 1: 引入 mpegts.js 库 在您的 HTML 文件中引入 mpegts.js&#xff1a; <script src"path/to/mpegts.min.js"></script>步骤 2: HTML 中添加视频标签 在 HTML 中添加 标签&#xff1a; <video id"videoElement"…

FreeRTOS学习--56讲 软件定时器

软件定时器&#xff1a; 用户可自定义定时器的周期&#xff0c;当指定时间到达后调用回调函数&#xff0c;用户在回调函数中处理信息 硬件定时器: 芯片自带的定时器模块&#xff0c;精度高&#xff0c;能触发中断&#xff0c;用户在中断服务函数中处理信息 软件定时器…

BIT-666 的 2023 年度总结

<<< 年度总结 >>> <<< 年度数据 >>> ◆ 发博情况 ◆ 学习成就 ◆ 代码提交 ◆ 博文表现 <<< 年度创作 >>> ◆ LLM - LLaMA2 <<< 年度风景 >>> ◆ 春 - 中关村软件园 - 百望山 ◆ 夏 - 乌兰…

Python开发一个电商平台历史价格查询软件

嗨喽~大家好呀&#xff0c;这里是魔王呐 ❤ ~! python更多源码/资料/解答/教程等 点击此处跳转文末名片免费获取 环境介绍: python 3.8 pycharm 专业版 第三方模块使用 requests ——> 发送 HTTP 请求 execjs ——> 用来执行JavaScript代码 pyecharts ——> 生成…

《微信小程序开发从入门到实战》学习六十五

6.4 交互API 6.4.5 页面滚动API 使用wx.pageScrollTo接口可使页面自动滚动到目标位置。该接口介绍Object参&#xff0c;该参支持属性如下所示&#xff1a; scrollTop&#xff1a;必填&#xff0c;滚动到页面的目标位置&#xff0c;单位为px duration&#xff1a;滚动动画的…

视频美颜sdk是什么?美颜sdk贴纸技术详解

如今&#xff0c;贴纸技术作为视频美颜的一个创新分支&#xff0c;为用户提供了更加丰富多彩的互动体验。本文将深入探讨视频美颜SDK中的贴纸技术&#xff0c;揭示其技术原理、应用场景以及未来发展趋势。 一、贴纸技术的背后&#xff1a;图像处理与人脸识别 这一步骤是实现贴…

关于IDEA中Git版本回滚整理

Git分区理解 git的版本回滚本质上就是回滚不同的分区&#xff0c;所以咱们有必要简单了解一下git的分区。git在本地有三大分区&#xff1a;暂存区、工作区、版本库。 暂存区: add后的代码&#xff0c;绿色。 **工作区&#xff1a;**正在编写&#xff0c;还未add的部分&#…

【Vue】事件修饰符详解

✨ 专栏介绍 在当今Web开发领域中&#xff0c;构建交互性强、可复用且易于维护的用户界面是至关重要的。而Vue.js作为一款现代化且流行的JavaScript框架&#xff0c;正是为了满足这些需求而诞生。它采用了MVVM架构模式&#xff0c;并通过数据驱动和组件化的方式&#xff0c;使…

【SpringBoot篇】详解Bean的管理(获取bean,bean的作用域,第三方bean)

文章目录 &#x1f354;Bean的获取&#x1f384;注入IOC容器对象⭐代码实现&#x1f6f8;根据bean的名称获取&#x1f6f8;根据bean的类型获取&#x1f6f8;根据bean的名称和类型获取 &#x1f384;Bean的作用域⭐代码实现&#x1f388;注意 &#x1f384;第三方Bean⭐代码实现…

设计模式-对象池模式

设计模式专栏 模式介绍模式特点应用场景对象池模式和工厂模式的区别代码示例Java实现对象池模式Python实现对象池模式 对象池模式在spring中的应用 模式介绍 对象池模式是一种创建型设计模式&#xff0c;它将对象预先创建并初始化后放入一个池中&#xff0c;以供其他对象使用。…

vue大屏-列表自动滚动vue-seamless-scroll

vue大屏-列表自动滚动vue-seamless-scroll vue-seamless-scroll的官方文档地址&#xff1a;https://chenxuan0000.github.io/vue-seamless-scroll/zh/guide/ 具体效果可到官方文档那里查看。 1、下载依赖 npm install vue-seamless-scroll --save2、使用例子 <template…

IDEA 2022.2 安装教程

1.下载2020.3版本IDEA 链接&#xff1a;https://pan.baidu.com/s/1IFK8VRjT7vM2VM75ToveGQ?pwd176m 提取码&#xff1a;176m 2.安装 下载完成后&#xff0c;双击exe安装包&#xff0c;出现IDEA安装欢迎首页&#xff1a; 3.将 ja - netfiltet 文件复制到idea安装目录附件 …

云上攻防--云服务对象存储(域名接管)弹性计算(元数据泄露)

云上攻防–云服务&&对象存储(域名接管)&&弹性计算(元数据泄露) 目录标题 云上攻防--云服务&&对象存储(域名接管)&&弹性计算(元数据泄露)对象存储权限配置错误域名接管AK/SK泄漏&#xff1a; 弹性计算元数据泄露加固措施 对象存储 各个厂商对于…