openstack创建浮动IP全过程

1、创建外部网络,即是provider网络,有关provider网络的详细解释请参见我之前的文章openstack中的self-service和provider网络_openstack provider网络不能创建vlan吗-CSDN博客

network create --share --external --provider-physical-network physnet1 --provider-network-type flat out

2、再创建子网

subnet create --subnet-pool 192.168.23.0/24 --gateway 192.168.23.1 --no-dhcp --allocation-pool start=192.168.23.10,end=192.168.23.60 --network out out_sub

allocation-pool  指的是动态分配的浮动IP范围,gateway 192.168.23.1 这是指定外部网络的网关,一般是物理网络的网关,不是虚拟网络的

3、创建路由器

router create router3

4、把新创建的路由器跟用户子网连接起来

router add subnet router3 new_subnet01

这里面new_subnet01就是以前新建立的用户子网

(openstack) subnet show new_subnet01
+-------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Field             | Value                                                                                                                                                            |
+-------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| allocation_pools  | 10.173.0.2-10.173.0.254                                                                                                                                          |
| cidr              | 10.173.0.0/24                                                                                                                                                    |
| created_at        | 2024-11-26T11:09:32Z                                                                                                                                             |
| description       |                                                                                                                                                                  |
| dns_nameservers   |                                                                                                                                                                  |
| enable_dhcp       | True                                                                                                                                                             |
| gateway_ip        | 10.173.0.1                                                                                                                                                       |
| host_routes       |                                                                                                                                                                  |
| id                | ea702afb-a6e8-40d1-9bc4-f9280ff4a101                                                                                                                             |
| ip_version        | 4                                                                                                                                                                |
| ipv6_address_mode | None                                                                                                                                                             |
| ipv6_ra_mode      | None                                                                                                                                                             |
| location          | cloud='', project.domain_id=, project.domain_name='Default', project.id='7e0a0a5e8dee4688ad2eeb2290023a5b', project.name='admin', region_name='RegionOne', zone= |
| name              | new_subnet01                                                                                                                                                     |
| network_id        | c861c1c9-6b91-4e42-842b-07f56e21941b                                                                                                                             |
| prefix_length     | None                                                                                                                                                             |
| project_id        | 7e0a0a5e8dee4688ad2eeb2290023a5b                                                                                                                                 |
| revision_number   | 0                                                                                                                                                                |
| segment_id        | None                                                                                                                                                             |
| service_types     |                                                                                                                                                                  |
| subnetpool_id     | None                                                                                                                                                             |
| tags              |                                                                                                                                                                  |
| updated_at        | 2024-11-26T11:09:32Z                                   

从这里面可以看出,这个子网的网关是10.173.0.1,注意这时候10.173.0.1,还是没有分配给任何设备的。

5、把路由器和子网连接起来

router add subnet router3 new_subnet01

这里面路由器就会多一个端口了,并且分配的IP就是10.173.0.1

port list --router router3

+--------------------------------------+------+-------------------+------------------------------------------------------------------------------+--------+
| ID                                   | Name | MAC Address       | Fixed IP Addresses                                                           | Status |
+--------------------------------------+------+-------------------+------------------------------------------------------------------------------+--------+
| b2626e44-efb1-4d49-9242-fc5f277ecc79 |      | fa:16:3e:51:3c:d3 | ip_address='10.173.0.1', subnet_id='ea702afb-a6e8-40d1-9bc4-f9280ff4a101'    | ACTIVE |

7、把路由器再跟外网连接起来,并指定跟外网互联的IP(也可以不指定,自动分配)

router set --fixed-ip subnet=out_sub,ip-address=192.168.23.61 --external-gateway out router3

这里面要注意,我们在这里面指定了--fixed-ip subnet=out_sub,ip-address=192.168.23.61 ,主要是为了指定子网,因为out这个网络里面在我这边是存在多个子网的。同时我还指定了路由器跟外网子网相连端口的IP。如果你的out网络只有一个子网,你也可以不指定这个

8、新建立浮动IP

floating ip create --subne out_sub out

这时会从start=192.168.23.10,end=192.168.23.60,随机分配一个

9、给虚机绑定浮动IP

server add floating ip mynew_vm 192.168.23.28

192.168.23.28就是第8步创建的浮动IP

路由器在OPENSTACK里面标准实现实际上就是一个namespace,我们在网络节点上查看

ip netns

qrouter-502d3467-a9cf-44f5-87bf-bbcd0439d7e6 (id: 8)

qrouter-开头的就是你建立的路由器,里面用IPTABLE做了一对一的映射,把浮动IP映射到用户内网的IP。当然在商业公有云中,为了网络性能,一般不使用namespace来做路由器,而是使用其它更高效的方案,如天翼云就是使用了开源的VPP进行了二次开发

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

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

相关文章

ABAP DIALOG屏幕编程1

一、DIALOG屏幕编程 DIALOG屏幕编程是SAP ABAP中用于创建用户交互界面的一种技术,主要用于开发事务性应用程序。它允许用户通过屏幕输入或操作数据,程序根据用户的操作执行逻辑处理。 1、DIALOG编程的主要组件 a、屏幕 (Screen) DIALOG程序的核心部分…

Anaconda升级的解决方法

文章目录 关于conda升级问题1. 在原Anaconda版本上进行更新升级2. 就是重装Anaconda 镜像源配置的参数解释:1. conda-forge2. bioconda3. menpo 关于conda升级问题, Anaconda各种版本镜像下载地址: 关于conda升级问题 1. 在原Anaconda版本上…

服务路由和服务发现区别是什么?

要快速学习服务路由和服务发现的区别,以下是这个领域最重要的20%的知识: 服务路由(Service Routing) 定义:服务路由是微服务架构中的一个关键概念,涉及将客户端的请求路由到合适的服务实例上。在分布式系…

青训营-豆包MarsCode技术训练营试题解析二十七

介绍 ‌豆包青训营‌是由字节跳动和稀土掘金社区共同发起的技术培训和人才选拔项目。该项目的目标是培养具有职业竞争力的优秀开发工程师,并提供全程免费的课程,不收取任何费用‌。 课程内容和方向 豆包青训营的课程涵盖前端、后端和AI方向。在这个飞…

网络安全之信息收集

1、大纲 基本信息收集  网站后台查找 域名查找    整站分析 敏感目录    Googlehacker 端口扫描    URL采集 旁站C段    信息分析 CDN绕过方法 2、域名信息 对应IP收集 相关域名对应IP 站长之家-->站长工具 nslookup(在cmd里面使用&…

人工智能学习用的电脑安装cuda、torch、conda等软件,版本的选择以及多版本切换

接触人工智能的学习三个月了,每天与各种安装包作斗争,缺少依赖包、版本高了、版本低了、不兼容了、系统做一半从头再来了。。。这些都是常态。三个月把单位几台电脑折腾了不下几十次安装,是时候总结一下踩过的坑和积累的经验了。 以一个典型的…

乐橙云小程序插件接入HbuilderX

乐橙插件使用: 1.配置app.json文件,uniapp中在mainfest.json中配置 https://uniapp.dcloud.net.cn/collocation/manifest.html#mp-weixin ** 2、集成插件页面.json文件 ** uniapp在 pages.json 对应页面的 style -> usingComponents 引入组件&…

华为关键词覆盖应用市场ASO优化覆盖技巧

在我国的消费者群体当中,华为的品牌形象较高,且产品质量过硬,因此用户基数也大。与此同时,随着影响力的增大,华为不断向外扩张,也逐渐成为了海外市场的香饽饽。作为开发者和运营者,我们要认识到…

C#白盒测试(二)

在前两篇关于 C#白盒测试的学习博客中,我们已经对基础概念、常见结构测试以及一些工具的使用有了一定了解。今天,我们将聚焦于白盒测试中的数据驱动测试、测试替身以及如何优化测试套件,进一步提升我们的白盒测试能力。 一、数据驱动测试 在…

K8S疑难概念理解——容器运行时。CRI实现从Docker切为containerd历史

早期版本的k8s直接使用了docker部分功能,比如容器的创建、运行、监控、停止、销毁等,这一些与容器生命周期相关的逻辑实现就可称之为容器运行时。k8s意识到docker过于笨重,如docker-cli,docker swarm等组件k8s都用不上,那么能不能…

Vue+Vite 组件开发的环境配置(超级简单)

vite是什么 Vite 是一个现代化的前端构建工具和开发服务器,它特别适用于构建大型的单页面应用(SPA)。Vite 旨在提供极快的冷启动速度,并且能够即时地(几乎实时地)更新模块,这得益于其利用原生 …

vue拖拽图片

这是我封装的组件大家直接用就好 我的gitee仓库地址 拖拽(父子) 刘志辉/vue功能 - 码云 - 开源中国 //使用页面参考文档 //标签内 :imgSrc"../img/tibet-1.jpg" <!-- 设置图片路径 --> dragstart"handleDragStart" <!-- 监听拖拽开始…

GNU/Linux - make 60s介绍

Learn make in 60 seconds. A programmer needs a build system. 想想你要手动输入编译命令编译每一个源文件&#xff0c;而且要正确添加和管理各个option&#xff0c;是很麻烦的。有各种用来帮助你build的工具&#xff0c;比如ant、make、maven、rake等。Make就是最通用的一…

C05S01-Web基础和HTTP协议

一、Web基础 1. Web相关概念 1.1 URL URL&#xff08;Uniform Resource Locator&#xff0c;统一资源定位符&#xff09;&#xff0c;是一种用于在互联网上标识和定位资源的标准化地址&#xff0c;提供了一种访问互联网上特定资源的方法。URL的基本格式如下所示&#xff1a;…

Spring+Mybatis 整合所需准备

文章目录 SpringMybatis SpringMybatis 准备pom.xml 项目所需jar文件 <spring.version>4.0.2.RELEASE</spring.version> <!-- spring框架包 --><dependency><groupId>org.springframework</groupId><artifactId>spring-test</a…

Spring中Bean的作用域深入剖析与技术实践

前言 Spring框架作为Java企业级应用开发中的中流砥柱&#xff0c;提供了强大的依赖注入&#xff08;DI&#xff09;和面向切面编程&#xff08;AOP&#xff09;等功能。在Spring框架中&#xff0c;Bean的作用域&#xff08;Scope&#xff09;是一个非常重要的概念&#xff0c;…

从仪表盘探索 MongoDB 关键指标

这是 MongoDB 监控系列文章的第七篇&#xff0c;前面几篇文章的链接如下&#xff1a; MongoDB 监控&#xff08;一&#xff09;MongoDB 监控&#xff08;二&#xff09;MongoDB 监控&#xff08;三&#xff09;MongoDB 监控&#xff08;四&#xff09;MongoDB 监控&#xff08…

mac安装php和xdebug调试

要在Mac上安装PHP 7.4&#xff0c;你可以通过几种方式来完成&#xff0c;但鉴于PHP7.4官方已不再维护&#xff0c;并且Homebrew默认仓库中不再提供此版本&#xff0c;我们需要从第三方仓库或直接从源代码进行安装。本文以brew方式安装&#xff0c;如果安装的是8.0以上&#xff…

UIlicious - 自动化端到端测试

在现代软件开发中&#xff0c;测试自动化已然成为产品交付质量的基石。而端到端测试&#xff08;E2E&#xff09;&#xff0c;作为验证整个应用流畅运行的关键&#xff0c;常常是测试工作中最具挑战性的一环。这时&#xff0c;一款简单高效的自动化测试工具——UIlicious&#…

新一代零样本无训练目标检测

&#x1f3e1;作者主页&#xff1a;点击&#xff01; &#x1f916;编程探索专栏&#xff1a;点击&#xff01; ⏰️创作时间&#xff1a;2024年12月2日21点02分 神秘男子影, 秘而不宣藏。 泣意深不见, 男子自持重, 子夜独自沉。 论文链接 点击开启你的论文编程之旅h…