openstack neutron网络地址分配

2023-05-16

一个openstack的虚拟机,是如何获得分配的地址,以及主机名,dns,主机路由,网关这些信息的呢?

ipv4的地址

对于ipv4的地址,是比较好理解的,无论是地址,dns,主机路由,网关,mtu,还是其他dhcp选项,都是从dhcp server获取到的。

虚拟机配置

具体虚拟机里只要在配置文件里(Centos7的eth0网卡配置文件时/etc/sysconfig/network-scripts/ifcfg-eth0)把BOOTPROTO=dhcp设置上。

重启network(centos7:systemctl restart network)服务即可。

虚拟机未分配到IP

可排查是虚拟机没发送请求报文,还是dhcp server没恢复报文,可以抓包tcpdump -i tapxxx -nv port 67(把tapxxx换成虚拟机tap设备)。

ipv6的地址

ipv6的地址分配和ipv4差别比较大。官网介绍:https://docs.openstack.org/newton/networking-guide/config-ipv6.html

对于ipv6的地址,稍微复杂些。创建时,有两个参数ipv6_ra_mode和ipv6_address_mode。决定了获取信息的方式。大概介绍下:

ipv6_ra_mode:确定谁发送RA报文

ipv6_address_mode:确定如何获取ipv6的地址,以及扩展信息,dns,主机路由,等这些。

下面具体,分析下各种配置

ipv6_ra_mode=slaac ipv6_address_mode=slaac

这种模式下,我们设置的地址前缀必须是64位的。

虚拟机IP

虚拟机最终的IP,是由地址前缀和MAC地址决定的,即地址前64位为地址前缀,后64位由mac地址经过eui64这种地址模式生产的。

地址前缀的获取

地址前缀MTU从RA广播中获取。也就是由路由接口发送过来的。也就是说虚拟机如果想从RA报文中获取,前提得有路由接口,需要把虚拟机所在的子网加入到路由器中。

虚拟机配置

这种模式的网络,配置文件配置方式:

BOOTPROTO=none

ONBOOT=yes

IPV6_ADDR_GEN_MODE=eui64

IPV6_AUTOCONF=yes

有时候我们看到虚拟机内分配的IP,前缀是对的,但是IP却不对,和界面上分配的不一致,那一般都是虚拟机配置的地址生成模式不是eui64,目前openstack只支持eui64所以必须配置成eui64。有的默认可能是stable-privacy。

虚拟机未分配IP

可以排查有没有发出rs(router solicitation)报文,和收到ra(router advertisement)报文。可以抓包tcpdump -i tapxxx -nv icmp6(把tapxxx换成虚拟机tap设备)。

一般情况,虚拟机内配置好,会主动发送rs报文,路由接口回复ra报文。如果没有发出rs报文可能是虚拟内部问题。如果没有回复ra报文,那就是路由接口配置问题了,就是云平台问题了,先确定是不是配置了路由接口。如果收到了ra报文但是没有配置上虚拟机,那也是虚拟机内部的问题。

另外ra报文一般是周期性发送的,使用ovn的情况,默认是200-600s。

网关和默认路由

虚拟机收到ra报文,一般把发送者,设置成默认路由。一般是fe80开头的本地链路地址。

总结:

这种模式下,我们可以通过RA报文设置IP地址,MTU,默认路由。其他信息获取不到。

ipv6_ra_mode=dhcpv6-stateful ipv6_address_mode=dhcpv6-stateful

这种模式我们一般叫做有状态的DHCPv6。

虚拟机IP:

虚拟机的IP我们是可以通过发送dhcpv6的solicit报文,dhcpv6 server收到后,返回分配的虚拟机IP,DNS配置。

一般我们获取到IP地址以后,可能发现地址前缀不对,比如我们的网段是前缀是96位,虚拟机里却设置的64位。这是因为dhcpv6 server分配IP时,并没有告诉地址前缀是多少。

网关和默认路由

虚拟机收到ra报文,一般把发送者,设置成默认路由。一般是fe80开头的本地链路地址。同事RA报文里有MTU,地址前缀信息。

虚拟机配置

这种模式的网络,配置文件配置方式:

BOOTPROTO=none

ONBOOT=yes

IPV6INIT=yes

DHCPV6C=yes

IPV6_AUTOCONF=yes

虚拟机未分配IP

可通过抓包tcpdump -i tapxxx -nv port 567(把tapxxx换成虚拟机tap设备),查看是否发出dhcpv6的solicit报文。有没有收到dhcpv6 Advertise报文。

虚拟机未配置静态路由

可以排查有没有发出rs(router solicitation)报文,和收到ra(router advertisement)报文。可以抓包tcpdump -i tapxxx -nv icmp6(把tapxxx换成虚拟机tap设备)。

总结:

这种模式下,我们通过dhcpv6报文获取IP地址,DNS服务器信息。从RA报文获取MTU,默认路由,地址前缀。其他信息(主机路由,主机名等)获取不到。

ipv6_ra_mode=dhcpv6-stateless ipv6_address_mode=dhcpv6-stateless

这种模式下,我们设置的地址前缀必须是64位的。

虚拟机IP

虚拟机最终的IP,是由地址前缀和MAC地址决定的,即地址前64位为地址前缀,后64位由mac地址经过eui64这种地址模式生产的。

地址前缀的获取

地址前缀MTU从RA广播中获取。也就是由路由接口发送过来的。也就是说虚拟机如果想从RA报文中获取,前提得有路由接口,需要把虚拟机所在的子网加入到路由器中。

dns, domain_search 从 DHCP server获取

地址前缀,MTU从RA广播中获取。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

openstack neutron网络地址分配 的相关文章

  • vnc view安装与使用

    vnc view安装与使用 1 安装 vnc远程连接 xff0c 需要在服务器端安装vnc server 在客户端安装vnc viewer 这里我主要是研究如何在自己的电脑安装vnc viewer xff0c 来远程连接服务器 1 xff0
  • 温度传感器DS18B20-第2季第1部分-朱有鹏-专题视频课程

    温度传感器DS18B20 第2季第1部分 1700人已学习 课程介绍 本课程是 朱有鹏老师单片机完全学习系列课程 第2季第1个课程 xff0c 主要讲解单片机系统中常用的温度传感器DS18B20 本课程的目标是让大家进一步掌握时序的分析和编
  • Shell删除某个文件夹下指定字符开头的所有文件

    工作中遇到过日志文件夹里面存放的日志数量太多 xff0c 直接使用rm rf 删除提示参数太多 xff0c 其实是因为要删除的文件太多 xff0c 没法一次全部删除 xff0c 具体rm rf能够一次删除的数量是多少就不知道了 xff0c
  • Ubuntu 11.10 远程桌面Windows设置

    升级到Ubuntu 11 10时原来远程客户端tsclient不能用了 xff0c 那么怎么办 xff1f 两个途径可以 xff1a 1 Remmina远程桌面客户端 xff0c 如果在互联网下没有 xff0c 在新立得下安装即可 设定几乎
  • 模型的学习方式-迁移学习、多任务学习、小样本学习、元学习

    前言 无论是有监督学习还是无监督学习 半监督学习 无论算法是什么 xff0c 一直感觉机器学习 深度学习模型都是一种数据驱动的 换句话说 xff0c 足够且有质量的数据 xff0c 才能让模型学到一定的知识 xff0c 达到比较理想的效果
  • 【CVPR2019_论文汇总】(按方向划分,0401 更新中)

    转载链接 xff1a http bbs cvmart net topics 302 cvpr2019paper 作为计算机视觉领域三大顶会之一 xff0c CVPR2019 xff08 2019 6 16 6 19在美国洛杉矶举办 xff0
  • 基于MATLAB的卷积神经网络车牌识别系统

    车牌识别是基于车牌照片的车牌信息的识别工作 xff0c 车牌识别技术对我们的实际生活至关重要 xff0c 例如交通违规行为的增加 xff0c 拦截非法车辆 xff0c 在速度上能够进行快速识别能够很好地解决这些问题 获得的照片的质量是影响车
  • 互连网络的定义

    原文 xff1a http julong com cn Service FAQview asp FAQID 61 15 互联网络是一通过中间网络设备连接多个独立网络的集合 xff0c 其功能是形成一个覆盖范围更广的网络 网络互联技术意指工业
  • Win11本地安装Ubuntu 22.04 双系统简易教程

    1 制作启动U盘 首先找到一个硬盘容量不小于4G的空U盘 xff0c 需要对其进行格式化 然后下载Ubuntu 22 04的iso文件到本地 Ubuntu 22 04 1 LTS 中国地区下载链接 下载 UltraISO并制作启动U盘 Ul
  • 图文详解VMWare Workstation安装Ubuntu20.04虚拟机

    图文详解VMWare Workstation安装Ubuntu20 04虚拟机 0 准备工作1 新建虚拟机并进行初始配置2 安装虚拟机系统 0 准备工作 在使用VMWare Workstation进行Ubuntu20 04虚拟机安装前 xff
  • 理解数据库中的undo日志、redo日志、检查点

    数据库存放数据的文件 xff0c 本文称其为data file 数据库的内容在内存里是有缓存的 xff0c 这里命名为db buffer 某次操作 xff0c 我们取了数据库某表格中的数据 xff0c 这个数据会在内存中缓存一些时间 对这个
  • Token原理

    Q xff1a 分布式场景下如何生成token以及使用token的流程 xff1a 在分布式场景下 xff0c 可以采用以下方式生成 token 和进行权限认证 xff1a 1 生成 token xff1a 使用JWT xff08 JSON
  • 红外遥控其实so easy-第2季第2部分-朱有鹏-专题视频课程

    红外遥控其实so easy 第2季第2部分 1521人已学习 课程介绍 本课程是 朱有鹏老师单片机完全学习系列课程 第2季第2个课程 xff0c 主要讲解如何用单片机进行红外遥控解码 红外遥控是家电产品常用的控制方法 xff0c 通过本课程
  • idea ctrl+左键找到方法引用,选择 All Places的方法

    有时候在idea里点击某个方法想找到该方法在所有地方的引用 xff0c 但是有时候会发现idea默认是在项目文件里搜索 xff0c 这样就搜索不到jar包里的引用 xff0c 如果没有搜到项目里的引用 xff0c 弹窗就会一闪而过 xff0
  • 优雅地解决NullPointException

    null的困扰 通过上面代码示例 xff0c 我们可以发现使用null可能会带来的一系列困扰 xff1a 空指针异常 xff0c 导致代码运行时变得不可靠 xff0c 稍不留神可能就崩了使代码膨胀 xff0c 导致代码中充斥大量的null检
  • springboot 如何配置tomcat信息

    前言 前两天面试的时候 xff0c 面试官问我 xff1a 一个ip发请求过来 xff0c 是一个ip对应一个线程吗 xff1f 我突然愣住了 xff0c 对于SpringBoot如何处理请求好像从来没仔细思考过 xff0c 所以面试结束后
  • Visio2013里面的大括号

    打开Visio2013 xff0c 在左侧的 形状 里面 xff0c 选择 更多形状 gt 其他 Visio 方案 gt 标注 xff0c 然后就会在下面看到大括号了 xff0c 这个括号可以调整方向的 xff0c 把括号拉进 Visio
  • CNN几种经典模型比较

    LeNet5 LeNet5 诞生于 1994 年 xff0c 是最早的卷积神经网络之一 xff0c 并且推动了深度学习领域的发展 自从 1988 年开始 xff0c 在许多次成功的迭代后 xff0c 这项由 Yann LeCun 完成的开拓
  • matlab用mkdir在指定的文件夹下创建新的文件夹,并把图像保存在该文件夹内

    for i 61 1 size query image index 2 mkdir 39 指定的文件夹 39 num2str query image index i 在指定的文件路径下以变量名为名字创建新的文件夹 C 61 imgNamLi
  • MySQL安装之后如何启动

    安装好MySQL之后 xff0c 在MySQL的安装目录下找到MySQL server 的目录 xff08 默认安装目录在 xff1a C Program Files MySQL MySQL Server 5 7 xff09 xff0c 如

随机推荐

  • mysql 密码输入正确,登陆失败的原因

    从命令行输入密码登录mysql 的时候 xff0c 当密码输入正确 xff0c 而且出现如下提示的时候 xff1a 可能是因为你的mysql没有启动的原因造成的 xff0c 解决方法 xff1a 鼠标右键 我的电脑 xff08 或者是计算机
  • vo和dto的区别

    下面转自百度知道里的内容 xff0c 感觉是把dto和vo说反了 xff0c 但是也不排除确实有项目这么做的情况 xff0c 欢迎大家发表自己的意见 xff0c 我个人认为两者说反了 xff0c 不过说的还是通俗易懂的 按照标准来说 xff
  • java日期去掉时分秒,只保留年月日

    public class Test public static void main String args SimpleDateFormat sdf 61 new SimpleDateFormat 34 yyyy MM dd 34 Cale
  • 51单片机也能玩TFT彩屏-第2季第3部分-朱有鹏-专题视频课程

    51单片机也能玩TFT彩屏 第2季第3部分 2125人已学习 课程介绍 本课程是 朱有鹏老师单片机完全学习系列课程 第2季第3个课程 xff0c 主要讲解TFT液晶显示器的原理和编程显示线条 文字 图片等 本课程的学习目标是对较复杂的TFT
  • 大数据hadoop hdfs 读写流程

    1 HDFS读流程 1 首先调用FileSystem对象的open 方法 xff0c 其实获取的是一个DistributedFileSystem的实例 2 DistributedFileSystem用RPC调用元数据节点 xff0c 得到文
  • C#初学者教程系列19:Winform应用程序

    本文是C 初学者简单教程 xff0c 这是第19篇 感谢观看 xff0c 记得关注我 xff0c 后续还有更多教程文章 xff0c 谢谢 本文环境为Visual Studio 2019 一 Winform应用程序 Windows窗体应用程序
  • 用GPU来运行Python代码

    简介 前几天捣鼓了一下Ubuntu xff0c 正是想用一下我旧电脑上的N卡 xff0c 可以用GPU来跑代码 xff0c 体验一下多核的快乐 还好我这破电脑也是支持Cuda的 xff1a sudo lshw C display displ
  • C51教程 第四个51程序:中断控制--外部中断0

    内部资源之外部中断 中断类型 中断入口地址 中断序号 外部中断0 xff08 INT0 xff09 P3 2 0003H 0 外部中断1 xff08 INT1 xff09 P3 3 0013H 2 定时计数器0 xff08 T0 xff09
  • 51单片机项目设计:51单片机蓝牙小车制作教程,新手必做!(手机控制前后左右行走)

    哔哩哔哩项目展示视频 xff1a https www bilibili com video BV1Wy4y1z7a5 csdn资料链接 xff1a https download csdn net download mbs520 131240
  • 一、如何建立动态系统模型

    此简单系统的输入为一个正弦波信号 xff0c 输出为此正弦波信号与一个常数的乘积 要求建立系统模型 xff0c 并以图形方式输出系统运算结果 xff0c 已知系统的数学描述如下 xff1a 系统输入 u t 61 sin t 系统输出 y
  • 汽车仪表方案

  • Keil下安装STM32F1支持pack

    1 在Keil官网下载STM32F1支持包 MDK5 Software Packs 其中包含Keil支持的所有芯片 点击 Download 现最新版本为 Keil STM32F1xx DFP 2 4 0 pack xff0c 下面也有之前所
  • 页面的缓存与不缓存-html,css,js

    HTML的HTTP协议头信息中控制着页面在几个地方的缓存信息 xff0c 包括浏览器端 xff0c 中间缓存服务器端 如 xff1a squid等 xff0c Web服务器端 本文讨论头信息 中带缓存控制信息的HTML页面 JSP Serv
  • 处理Incorrect datetime value:‘ ‘情况

    今天在写一个存储过程中遇到了Incorrect datetime value 39 NA 的情况 我将最后做成的视图插入到表中的时候 create table risk as select from view risk 报错中出现了Inco
  • 51单片机综合小项目-第2季第4部分-朱有鹏-专题视频课程

    51单片机综合小项目 第2季第4部分 2794人已学习 课程介绍 本课程是 朱有鹏老师单片机完全学习系列课程 第2季第4个课程 xff0c 也是51单片机学完之后的一个综合小项目 xff0c 该项目运用了开发板上大多数外设设备 xff0c
  • 单片机毕业设计 STM32智能空气质量检测仪 - 环境检测盒子 嵌入式 物联网

    文章目录 1 简介2 系统设计概述3 系统总体方案4 硬件设计方案4 1 stm32 主控4 2 温度采集模块4 3 甲醛浓度检测模块4 4 PM2 5 浓度检测模块4 5 液晶显示模块设计4 6 GSM 模块4 7 蓝牙模块 5 软件部分
  • linux mint 让windows可以使用远程桌面的xrdp服务

    装xrdp服务 span class token function sudo span span class token function apt get span span class token function install spa
  • 信号量释放和等待函数sem_post()和sem_wait()

    信号量 xff1a 信号量是IPC结构中的一种 xff0c 是进程间通信的一种方法 xff0c 也可以解决同一进程不同线程之间的通信问题 它是用来保证两个或多个关键代码段不被并发调用 xff0c 防止多个进程同时对共享资源进行操作 原理 x
  • amixer和alsamixer使用说明

    amixer和alsamixer说明 本文主要解答 xff1a 1 amixer与alsamixer的区别 2 amixer与alsamixer的使用 alsamixer与amixer的区别 alsamixer是Linux音频框架ALSA工
  • openstack neutron网络地址分配

    一个openstack的虚拟机 xff0c 是如何获得分配的地址 xff0c 以及主机名 xff0c dns xff0c 主机路由 xff0c 网关这些信息的呢 xff1f ipv4的地址 对于ipv4的地址 xff0c 是比较好理解的 x