当前位置: 首页 > news >正文

OpenvSwitch VXLAN 隧道实验

OpenvSwitch VXLAN 隧道实验

最近在了解 openstack 网络,下面基于ubuntu虚拟机安装OpenvSwitch,测试vxlan的基本配置。

节点信息:

主机名IP地址OS网卡
node1192.168.95.11Ubuntu 22.04ens33
node2192.168.95.12Ubuntu 22.04ens33

网卡信息:

root@node1:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000link/ether 00:0c:29:0f:26:b9 brd ff:ff:ff:ff:ff:ffaltname enp2s1inet 192.168.95.11/24 brd 192.168.95.255 scope global ens33valid_lft forever preferred_lft foreverinet6 fe80::20c:29ff:fe0f:26b9/64 scope link 

整体逻辑图如下:

在两个节点部署OpenvSwitch,通过vxlan隧道网络实现vm01和vm02的网络互通。
在这里插入图片描述

前置要求,每个节点安装OpenvSwitch

apt update -y
apt install -y openvswitch-switch

确认安装版本

root@node1:~# ovs-vsctl --version
ovs-vsctl (Open vSwitch) 2.17.9
DB Schema 8.3.0

节点1配置

创建虚拟机

创建网络地址空间ns0,模拟出VM虚拟机

ip netns add ns0

创建一对vethpair,两个接口分别为veth0veth1

ip link add veth0 type veth peer name veth1

veth0添加到ns0

ip link set veth0 netns ns0

veth0配置IP地址

ip netns exec ns0 ip addr add 10.1.1.1/24 dev veth0
ip netns exec ns0 ip link set veth0 up
ip netns exec ns0 ip a

建立vxlan隧道

创建vxlan网桥br-vxlan

ovs-vsctl add-br br-vxlan

veth1添加到br-vxlan网桥中

ovs-vsctl add-port br-vxlan veth1
ip link set veth1 up

br-vxlan网桥中创建本端vxlan端口vxlan1,端口类型为vxlan,配置远端IP为对端主机

ovs-vsctl add-port br-vxlan vxlan1 -- set interface vxlan1 type=vxlan options:remote_ip=192.168.95.12

查看openvswitch 网桥端口

root@node1:~# ovs-vsctl show
b3bb2f7f-6129-46d0-ab6c-806a9499e673Bridge br-vxlanPort br-vxlanInterface br-vxlantype: internalPort veth1Interface veth1Port vxlan1Interface vxlan1type: vxlanoptions: {remote_ip="192.168.95.12"}ovs_version: "2.17.9"
root@node1:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000link/ether 00:0c:29:0f:26:b9 brd ff:ff:ff:ff:ff:ffaltname enp2s1inet 192.168.95.11/24 brd 192.168.95.255 scope global ens33valid_lft forever preferred_lft foreverinet6 fe80::20c:29ff:fe0f:26b9/64 scope link valid_lft forever preferred_lft forever
3: veth1@if4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master ovs-system state UP group default qlen 1000link/ether 56:79:1f:8a:6d:46 brd ff:ff:ff:ff:ff:ff link-netns ns0inet6 fe80::5479:1fff:fe8a:6d46/64 scope link valid_lft forever preferred_lft forever
5: ovs-system: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000link/ether 0e:b0:e1:3a:de:4c brd ff:ff:ff:ff:ff:ff
6: br-vxlan: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000link/ether be:43:d3:bd:9a:41 brd ff:ff:ff:ff:ff:ff
7: vxlan_sys_4789: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 65000 qdisc noqueue master ovs-system state UNKNOWN group default qlen 1000link/ether de:3a:29:91:e1:4f brd ff:ff:ff:ff:ff:ffinet6 fe80::cc1b:89ff:fe76:e7f/64 scope link valid_lft forever preferred_lft forever

节点2配置

创建虚拟机

创建网络地址空间ns0,模拟出VM虚拟机

ip netns add ns0

创建一对vethpair,两个接口分别为veth0veth1

ip link add veth0 type veth peer name veth1

veth0添加到ns0

ip link set veth0 netns ns0

veth0配置IP地址

ip netns exec ns0 ip addr add 10.1.1.2/24 dev veth0
ip netns exec ns0 ip link set veth0 up
ip netns exec ns0 ip a

建立vxlan隧道

创建vxlan网桥br-vxlan

ovs-vsctl add-br br-vxlan

veth1添加到br-vxlan网桥中

ovs-vsctl add-port br-vxlan veth1
ip link set veth1 up

br-vxlan网桥中创建本端vxlan端口vxlan1,端口类型为vxlan,配置远端IP为对端主机

ovs-vsctl add-port br-vxlan vxlan1 -- set interface vxlan1 type=vxlan options:remote_ip=192.168.95.11

查看openvswitch 网桥端口

root@node2:~# ovs-vsctl show
ca71335f-e4a9-4b07-9183-b4993a6864d4Bridge br-vxlanPort vxlan1Interface vxlan1type: vxlanoptions: {remote_ip="192.168.95.11"}Port br-vxlanInterface br-vxlantype: internalPort veth1Interface veth1ovs_version: "2.17.9"
root@node2:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000link/ether 00:50:56:3a:b4:d8 brd ff:ff:ff:ff:ff:ffaltname enp2s1inet 192.168.95.12/24 brd 192.168.95.255 scope global ens33valid_lft forever preferred_lft foreverinet6 fe80::250:56ff:fe3a:b4d8/64 scope link valid_lft forever preferred_lft forever
3: veth1@if4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master ovs-system state UP group default qlen 1000link/ether 56:79:1f:8a:6d:46 brd ff:ff:ff:ff:ff:ff link-netns ns0inet6 fe80::5479:1fff:fe8a:6d46/64 scope link valid_lft forever preferred_lft forever
5: ovs-system: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000link/ether 0e:b0:e1:3a:de:4c brd ff:ff:ff:ff:ff:ff
6: br-vxlan: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000link/ether b6:7c:80:cb:6e:45 brd ff:ff:ff:ff:ff:ff
7: vxlan_sys_4789: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 65000 qdisc noqueue master ovs-system state UNKNOWN group default qlen 1000link/ether de:3a:29:91:e1:4f brd ff:ff:ff:ff:ff:ffinet6 fe80::6c5c:7cff:fece:5a7/64 scope link valid_lft forever preferred_lft forever

验证连通性

节点1连接节点2 VM

root@node1:~# ip netns exec ns0 ping 10.1.1.2 -c 4
PING 10.1.1.2 (10.1.1.2) 56(84) bytes of data.
64 bytes from 10.1.1.2: icmp_seq=1 ttl=64 time=0.543 ms
64 bytes from 10.1.1.2: icmp_seq=2 ttl=64 time=0.737 ms
64 bytes from 10.1.1.2: icmp_seq=3 ttl=64 time=0.640 ms
64 bytes from 10.1.1.2: icmp_seq=4 ttl=64 time=2.20 ms--- 10.1.1.2 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3077ms
rtt min/avg/max/mdev = 0.543/1.031/2.204/0.680 ms

节点2连接节点1 VM

root@node2:~# ip netns exec ns0 ping 10.1.1.1 -c 4
PING 10.1.1.1 (10.1.1.1) 56(84) bytes of data.
64 bytes from 10.1.1.1: icmp_seq=1 ttl=64 time=1.21 ms
64 bytes from 10.1.1.1: icmp_seq=2 ttl=64 time=0.642 ms
64 bytes from 10.1.1.1: icmp_seq=3 ttl=64 time=0.557 ms
64 bytes from 10.1.1.1: icmp_seq=4 ttl=64 time=0.589 ms--- 10.1.1.1 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3027ms
rtt min/avg/max/mdev = 0.557/0.749/1.211/0.268 ms

参考:https://www.cnblogs.com/Bozh/p/4838304.html

相关文章:

OpenvSwitch VXLAN 隧道实验

OpenvSwitch VXLAN 隧道实验 最近在了解 openstack 网络&#xff0c;下面基于ubuntu虚拟机安装OpenvSwitch&#xff0c;测试vxlan的基本配置。 节点信息&#xff1a; 主机名IP地址OS网卡node1192.168.95.11Ubuntu 22.04ens33node2192.168.95.12Ubuntu 22.04ens33 网卡信息&…...

GPT能复制人类的决策和直觉吗?

GPT-3能否复制人类的决策和直觉&#xff1f; 近年来&#xff0c;像GPT-3这样的神经网络取得了显著进步&#xff0c;生成的文本几乎与人类写作内容难以区分。令人惊讶的是&#xff0c;GPT-3在解决数学问题和编程任务方面也表现出色。这一显著进步引发了一个问题&#xff1a;GPT…...

权限设计种类【RBAC、ABAC】

ACL 模型&#xff1a;访问控制列表 DAC 模型&#xff1a;自主访问控制 MAC 模型&#xff1a;强制访问控制 ABAC 模型&#xff1a;基于属性的访问控制 RBAC 模型&#xff1a;基于角色的权限访问控制 一、简介前三种模型&#xff1a; 1.1 ACL&#xff08;Access Control L…...

C语言经典面试题目(十九)

1、什么是C语言&#xff1f;简要介绍一下其历史和特点。 C语言是一种通用的高级计算机编程语言&#xff0c;最初由贝尔实验室的Dennis Ritchie在1972年至1973年间设计和实现。C语言被广泛应用于系统编程、应用程序开发、嵌入式系统和操作系统等领域。它具有高效、灵活、可移植…...

VSCode 远程调试C++程序打开/dev/tty设备失败的问题记录

概述 因为需要协助同事调试rtklib中的rtkrcv程序&#xff0c;一直调试程序都是用了vscode&#xff0c;这次也不例外&#xff0c;但是在调试过程中&#xff0c;发现程序在打开当前终端(/dev/tty)的时候&#xff0c;总是打开失败&#xff0c;返回的错误原因是“No such device o…...

亮相AWE 2024,日立中央空调打造定制空气新体验

日立中央空调于3月14日携旗下空气定制全新成果&#xff0c;亮相2024中国家电及消费电子博览会&#xff08;简称AWE 2024&#xff09;现场&#xff0c;围绕“科创先行 智引未来”这一主题&#xff0c;通过技术与产品向行业与消费者&#xff0c;展现自身对于家居空气的理解。 展会…...

KY61 放苹果(用Java实现)

描述 把 M 个同样的苹果放在 N 个同样的盘子里&#xff0c;允许有的盘子空着不放&#xff0c;问共有多少种不同的分法&#xff1f; 注意&#xff1a;5、1、1 和 1、5、1 是同一种分法&#xff0c;即顺序无关。 输入描述&#xff1a; 输入包含多组数据。 每组数据包含两个正整…...

原型模式(Clone)——创建型模式

原型模式(clone)——创建型模式 什么是原型模式&#xff1f; 原型模式是一种创建型设计模式&#xff0c; 使你能够复制已有对象&#xff0c; 而又无需依赖它们所属的类。 总结&#xff1a;需要在继承体系下&#xff0c;实现一个clone接口&#xff0c;在这个方法中以本身作为拷…...

<.Net>VisaulStudio2022下用VB.net实现socket与汇川PLC进行通讯案例(Eazy521)

前言 此前&#xff0c;我写过一个VB.net环境下与西门子PLC通讯案例的博文&#xff1a; VisaulStudio2022下用VB.net实现socket与西门子PLC进行通讯案例&#xff08;优化版&#xff09; 最近项目上会用到汇川PLC比较多&#xff0c;正好有个项目有上位机通讯需求&#xff0c;于是…...

漫途桥梁结构安全监测方案,护航桥梁安全!

桥梁作为城市生命线的重要组成部分&#xff0c;承载着城市交通、物流输送、应急救援等重要职能。然而&#xff0c;随着我国社会经济的飞速发展&#xff0c;桥梁所承载的交通流量逐年增长&#xff0c;其安全性所面临的挑战亦日益严峻。例如恶劣的外部环境、沉重的荷载以及长期使…...

LAMP架构部署--yum安装方式

这里写目录标题 LAMP架构部署web服务器工作流程web工作流程 yum安装方式安装软件包配置apache启用代理模块 配置虚拟主机配置php验证 LAMP架构部署 web服务器工作流程 web服务器的资源分为两种&#xff0c;静态资源和动态资源 静态资源就是指静态内容&#xff0c;客户端从服…...

关于PXIE3U18槽背板原理拓扑关系

如今IT行业日新月异&#xff0c;飞速发展&#xff0c;随之带来的是数据吞吐量的急剧升高。大数据&#xff0c;大存储将成为未来数据通信的主流&#xff0c;建立快速、大容量的数据传输通道将成为电子系统的关键。随着集成技术和互连技术的发展&#xff0c;新的串口技术&#xf…...

网络安全等保测评指标一览表

什么是等保&#xff1f; 等保是指对国家重要信息、法人和其他组织及公民的专有信息以及公开信息和存储、传输、处理这些信息的信息系统分等级实行安全保护&#xff0c;对信息系统中使用的信息安全产品实行按等级管理&#xff0c;对信息系统中发生的信息安全事件分等级响应、处…...

C语言中函数的递归

在C语言中&#xff0c;递归是一种解决问题的方法&#xff0c;其中函数直接或间接地调用自身来解决问题。递归通常用于解决那些可以分解为更小、更简单的同类问题的问题。递归有两个关键部分&#xff1a;基本情况&#xff08;base case&#xff09;和递归情况&#xff08;recurs…...

01|模型IO:输入提示、调用模型、解析输出

Model I/O 可以把对模型的使用过程拆解成三块&#xff0c;分别是输入提示&#xff08;对应图中的Format&#xff09;、调用模型&#xff08;对应图中的Predict&#xff09;和输出解析&#xff08;对应图中的Parse&#xff09;。这三块形成了一个整体&#xff0c;因此在LangCha…...

Android Studio实现内容丰富的安卓民宿酒店预订平台

获取源码请点击文章末尾QQ名片联系&#xff0c;源码不免费&#xff0c;尊重创作&#xff0c;尊重劳动 1.开发环境android stuido jdk1.8 eclipse mysql tomcat 2.功能介绍 安卓端&#xff1a; 1.注册登录 2.查看民宿 3.民宿预订 4.民宿预订支付&#xff0c; 5.支付订单 6.评论管…...

SCI一区 | Matlab实现RIME-TCN-BiGRU-Attention霜冰算法优化时间卷积双向门控循环单元融合注意力机制多变量时间序列预测

SCI一区 | Matlab实现RIME-TCN-BiGRU-Attention霜冰算法优化时间卷积双向门控循环单元融合注意力机制多变量时间序列预测 目录 SCI一区 | Matlab实现RIME-TCN-BiGRU-Attention霜冰算法优化时间卷积双向门控循环单元融合注意力机制多变量时间序列预测预测效果基本介绍模型描述程…...

AI推介-多模态视觉语言模型VLMs论文速览(arXiv方向):2024.03.10-2024.03.15

论文目录~ 1.3D-VLA: A 3D Vision-Language-Action Generative World Model2.PosSAM: Panoptic Open-vocabulary Segment Anything3.Anomaly Detection by Adapting a pre-trained Vision Language Model4.Introducing Routing Functions to Vision-Language Parameter-Efficie…...

路由器端口转发远程桌面控制:一电脑连接不同局域网的另一电脑

一、引言 路由器端口转发&#xff1a;指在路由器上设置一定的规则&#xff0c;将外部的数据包转发到内部指定的设备或应用程序。这通常需要对路由器进行一些配置&#xff0c;以允许外部网络访问内部网络中的特定服务和设备。端口转发功能可以实现多种应用场景&#xff0c;例如远…...

sparksession对象简介

什么是sparksession对象 spark2.0之后&#xff0c;sparksession对象是spark编码的统一入口对象&#xff0c;通常我们在rdd编程时&#xff0c;需要SparkContext对象作为RDD编程入口&#xff0c;但sparksession对象既可以作为RDD编程对象入口&#xff0c;在sparkcore编程中可以通…...

RL训练像点外卖?ProRL底层逻辑拆解(非常详细),从入门到精通看这篇!

一句话讲清楚&#x1f449;&#x1f3fb; NVIDIA提出ProRL Agent&#xff0c;把多轮LLM Agent的RL训练中「轨迹生成&#xff08;Rollout&#xff09;」这一步从训练框架中彻底剥离出来&#xff0c;变成一个独立的HTTP服务&#xff0c;训练侧只需发HTTP请求就能拿到轨迹和奖励信…...

2026年Python生态:AI代理和数据工具,到底解决了什么,没解决什么?

先说结论AI代理框架的成熟度差异很大&#xff0c;LangGraph适合复杂状态管理&#xff0c;但学习曲线陡峭&#xff1b;CrewAI简化了多代理协作&#xff0c;但可能牺牲灵活性&#xff1b;smolagents轻量快速&#xff0c;但功能有限。数据工具如Polars和DuckDB在性能上显著超越传统…...

专业级批量二维码扫描工具V2.0|高精度图片二维码批量识别软件

温馨提示&#xff1a;文末有联系方式软件概述 一款专为高效处理多图场景设计的二维码批量识别解决方案——扩展批量二维码识别工具 V2.0 专业版。 无需逐张打开图片&#xff0c;即可全自动解析各类常见格式图像&#xff08;JPG/PNG/BMP等&#xff09;中嵌入的二维码信息&#x…...

5个实用场景展示:用Phi-3-mini轻松搞定文本改写与摘要整理

5个实用场景展示&#xff1a;用Phi-3-mini轻松搞定文本改写与摘要整理 1. 引言&#xff1a;为什么选择Phi-3-mini进行文本处理 在日常工作和学习中&#xff0c;我们经常需要处理各种文本任务&#xff1a;改写句子使其更专业、总结长篇文章的要点、快速生成内容草稿等。传统方…...

transformer 优化笔记 持续更新

目录 方案2&#xff1a;安装 xformers&#xff08;推荐&#xff09; &#x1f680; 核心作用&#xff1a;更高效地计算注意力 xfusers &#x1f4a1; 为什么需要 xfusers&#xff1f; 方案2&#xff1a;安装 xformers&#xff08;推荐&#xff09; pip install xformers 然…...

CCleaner Business 杀毒软件/电脑清理软件 下载安装

链接: https://pan.baidu.com/s/1KPHdTrkV5ElociuavFFrEA 提取码: j9c9此软件为免费开源软件&#xff0c;请勿利用于商业领域&#xff01;&#xff01;&#xff01;...

局域网聊天室终极解决方案:无需互联网的即时通讯工具

局域网聊天室终极解决方案&#xff1a;无需互联网的即时通讯工具 【免费下载链接】LAN-Chat-Room &#x1f609;基于QT开发的局域网聊天室 项目地址: https://gitcode.com/gh_mirrors/la/LAN-Chat-Room 在办公室、学校或家庭网络中&#xff0c;你是否曾遇到过需要快速分…...

用Notepad++打开PLY文件:手把手教你读懂三维点云与网格数据的‘源代码’

用Notepad打开PLY文件&#xff1a;手把手教你读懂三维点云与网格数据的‘源代码’ 当你第一次拿到一个PLY文件时&#xff0c;可能会感到困惑——这个看似普通的文本文件&#xff0c;如何承载复杂的三维世界&#xff1f;就像程序员通过阅读源代码理解软件逻辑一样&#xff0c;我…...

从安装到实战:在快马生成项目中体验openclaw本地安装与即时数据抓取

从安装到实战&#xff1a;在快马生成项目中体验openclaw本地安装与即时数据抓取 最近在做一个数据采集的小项目&#xff0c;需要从网站上抓取一些公开信息。经过调研发现openclaw这个工具很适合我的需求&#xff0c;但网上关于它的本地安装和实际应用的完整教程比较少。于是我…...

开关电源救星:用TVS二极管搞定MOS管击穿问题(以24V推挽电路为例)

开关电源救星&#xff1a;用TVS二极管搞定MOS管击穿问题&#xff08;以24V推挽电路为例&#xff09; 在中小功率开关电源设计中&#xff0c;MOS管击穿是工程师最头疼的故障之一。我曾在一个24V推挽式电源项目中&#xff0c;连续烧毁了5个MOS管&#xff0c;直到用示波器捕捉到那…...