问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

在OpenStack里怎样配置Neutron,让虚拟机访问外网

发布网友 发布时间:2022-04-22 16:33

我来回答

1个回答

热心网友 时间:2023-11-01 17:54

由于网络部分出现了许多得新名词。将从整体到分部细致讲解。

来源于网络得一张图

如图所示,连成了一条线。重要得如何实现互联,接下来以表象论证这张图。

最好将图放在一边,边看边对照图。
这里先介绍从虚拟机访问*。端口A开始:

表现出来就是虚拟机有张网卡A。

查询此虚拟机得子网ip为 10.1.1.5,以及所在节点,记住这个节点。

通过子网ip查询到端口id为 b65c1085-a971-4333-82dc-57012e9be490
记住这个id

图中A与B互联,意味着A与B一定具有某种映射关系。

若没有此命令则安装: yum install -y bridge-utils
可以看到这个id对应的tap设备!

veth pair是什么?后面再介绍。

由图可知,端口B(qvbXXX)和端口C(tapXXX)在同一个linux网桥上。它们俩互通了。

端口D在ovs网桥上。C和D的互联是veth pair的特性。

由图可以看出,qvoXXX在ovs网桥上,qvb在linux网桥上。它们之间的互联是veth pair的特性,它们就像一根导线的两端。

ovs查询命令:

这里可以看到3种网桥: br-int、br-tun、br-ex。这里有个印象就好。
仔细的查看一下,可以看到qvoXXX在br-int网桥上。
至此D端口也找到了

E、F端口通过ovs网桥自身连接。
ovs-vsctl show 可以看到两个patch类型的端口,用于连接br-int和br-tun。类似于veth pair。

ovs-vsctl show 可以在br-tun网桥上看到vxlan类型的端口,并注明本地ip和remote ip,通过此类型端口,将不同的物理环境互联,对于上层好似就一个网桥。再者br-tun网桥还与br-int互联,这意味,对于再上一层的应用,似乎只有一个br-int。

和【E】【F】相同。

此时携带源ip为子网的流量到达M端口,而L端口得网段为*网段,因此M网段的流量此时无法直接进入L端口。借助router(网络命名空间),使用iptables,将M端口流量的源ip转换为*网段。此时流量可进入L端口从而访问*。(M与N之间连通性非网络对实现,而是ovs tap设备实现。网络对的一个明显特征为 ip a 可以看到@符号连接两个端口)

找到虚拟机所在租户的路由id
本机为 894699dc-bc60-4b5e-b471-e95afa20f1d7

根据路由id找到网络命名空间
在所有节点上执行如下命令,找到对应id的qrouter
ip netns
本环境为:qrouter-894699dc-bc60-4b5e-b471-e95afa20f1d7

在此网络命名空间的节点上执行(如下命令意义为进入网络命名空间):

此时已进入网络命名空间。

查看ip

可以看到qg和qr开头的网卡名称。qg为弹性ip地址组,qr为子网网关。此时在虚拟机所在节点上查询ovs网桥,可以在br-int看到与此同名的qg和qr端口。
由于是源地址转换,因此先路由再转换源ip(iptables规则)。
查看路由规则:
route -n

第一条可以看到*的网关,通过qg网卡发送,规则正好匹配。
选好路由规则之后,进行更改源ip。

可以看到 neutron-l3-agent-float-snat(配置了弹性ip才会出现)、neutron-l3-agent-snat。因为neutron-l3-agent-float-snat优先级高于neutron-l3-agent-snat,如果没有配置弹性ip,则会将源ip改为该路由的*ip;如果配置了弹性ip则会将源ip改为弹性ip。

总的来说,流量从qr出去绕了一圈(网络命名空间)改变了源ip又从qg进入,然后通过ovs patch进入br-ex。

br-ex如何与*连接的呢?进入网络节点查看ovs网桥:

可以看到 br-ex与em3网卡互联。因此流量直接走em3出去。还记得你这张网卡是干嘛的吗?是那张不配置ip的物理网卡!

通过iptables的prerouting可以看出,在进入之前修改了目的弹性ip为子网ip,后经路由转发。另,网络命名空间可以通过arp发现子网ip与mac地址的对应关系。

lbaas,负载均衡
dhcp,dhcp服务。

通过前面说的br-tun 实现。如果没有单独划分网络,则使用管理网网段。若单独配置了tunnel网络,则br-tun里的网络使用tunnel网络。
br-tun 里定义了vxlan,并且指定了 local_ip、remote_ip。根据这两个ip以及路由信息,可以确定 br-tun 通过哪张网卡与外部通信。也是因此可以为tunnel配置专用网卡。

都是通过iptables实现。
防火墙:qrouter网络命名空间中得iptables实现。
安全组:虚拟机所在得宿主机得iptables实现。

可以看到防火墙规则。

可以看到对应端口id得安全组规则。

已经知道了qrouter 利用nat表实现弹性ip与子网ip之间的映射,但是如何从外部访问到qg网卡的?
这里做了一个简单的模拟操作:
https://www.jianshu.com/p/44e73910c241

dnsmasq 实现。
kolla-ansible 的dnsmasq日志相对路径参考:neutron/dnsmasq.log(可通过dnsmasq.conf 找到日志路径)
日志中可以看到dhcp的详细过程。过程参考如下:

文档参考:
https://docs.openstack.org/neutron/stein/admin/intro-basic-networking.html#dhcp

dhcp也通过网络命名空间实现,名称由网络id决定。dhcp可以拥有多个,通过neutron.conf 中 dhcp_agents_per_network 决定。

另:centos7虚拟机中的 /var/log/messages 也记录了dhcp相关操作。

network qos 可以理解为网络流量*,官方名称:网络质量即服务
本环境通过openvswitch实现的qos。

如上图为设置的 带宽*规则。

根据端口号查看流表,命令参考:

上图标记的104就为dscp mark 乘 4 的结果,乘4是一种规范。

https://docs.openstack.org/neutron/queens/admin/deploy-ovs.html

在OpenStack里怎样配置Neutron,让虚拟机访问外网

# neutron router-create router01 8. 将租户的私有子网(private_sub)作为interface加入router01,并将外网(public)设置为网关:[plain] view plain copy neutron router-interface-add router01 private_sub neutron router-gateway-set router01 public 9. 然后就可以为虚拟机分配floating IP了。分配完...

原生ip - StormProxies

StormProxies是一家可靠的代理服务提供商,提供原生IP(住宅原生IP)和高匿名代理服务。以下是关于StormProxies的原生IP服务的一些信息:1. 住宅原生IP:StormProxies提供的住宅原生IP是指从真实的家庭或企业网络中获取的IP地址,这种类型的IP地址通常被认为是更加真实和可靠的代理服务。使用住宅原生IP可以更好地保护您的隐私和匿名性,并且可以提供更快的代理服务速度。2. 高匿名性:StormProxies的代理服务支持高匿名性,这意味着使用其服务的用户可以更好地保护自己的隐私和匿名性。高匿名性代理服务的匿名性更高,可以更好地避免被追踪和识别的…StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,IP纯净高匿;2、覆盖全球20...

openstack neutron网络介绍

可以看到qg和qr开头的网卡名称。qg为弹性ip地址组,qr为子网网关。此时在虚拟机所在节点上查询ovs网桥,可以在br-int看到与此同名的qg和qr端口。 由于是源地址转换,因此先路由再转换源ip(iptables规则)。 查看路由规则: route -n 第一条可以看到外网的网关,通过qg网卡发送,规则正好匹配。

neutron为openstack提供什么功能

一、Neutron的主要功能 Neutron是OpenStack的一个组件,主要负责网络虚拟化。这意味着Neutron允许云管理员在云环境中创建、配置和管理虚拟网络。它可以为虚拟机和其他云资源提供网络连接,使得这些资源可以相互通信,或者与外部环境通信。此外,Neutron还支持多种网络插件,如Open vSwitch、Linux Bridge等,这些...

如何给openstack虚拟机配置静态IP

将下面虚拟机配置一个172.16.8.200的Ip,且外部可以访问。3、查询该网卡所在的端口 neutron port-list | grep '10.168.10.13'11 4、检查该IP未被占用 ping 172.16.8.20011 5、修改该端口,允许通过IP neutron port-update 1effb238-d49b-4679-91b9-d843a8ff3e30 --allowed-address-pairs ...

如何安装,配置和使用Neutron的各个组件

配置 大部分插件都需要一个数据库。OpenStack Networking 的 Fedora 包包含服务器设置实用程序脚本,负责数据库的完整安装和配置:sudo neutron-server-setup --plugin openvswitch 但也可以手动配置这些数据库。例如,在 Ubuntu 上,您可使用以下命令安装数据库:sudo apt-get install mysql-server python-...

如何借助OpenStack命令行工具管理虚拟机

source openrc.sh 这时候,你可以准备运行OpenStack命令行客户程序了。确认你在运行时没有遇到任何错误:nova list 它显示内容为空的结果,这意味着一切都正常。构建网络 现在,你可以准备构建一个连接虚拟机的网络了。创建一个名为"xmodulo"的新网络。neutron net-create xmodulo 创建一个名为"xmodulo...

neutron的主要组件

neutron的主要组件 Neutron是一个用于网络服务的OpenStack组件,它提供了虚拟机之间的网络连接和外部网络接入。它主要由以下几个组件组成:Quantum:Quantum是Neutron的前身,它是一个网络插件框架,用于实现不同的网络解决方案。Quantum提供了一个RESTful API,可以轻松地集成到OpenStack的其他组件中。Octavia:...

OpenStack的Neutron组件详解

Neutron默认通过HAProxy为项目中的多个实例提供负载平衡服务。在部署方式上,可以分为计算节点和控制节点,以及多个节点,以适应大规模的OpenStack平台。Open vSwitch(OVS)是一个虚拟交换软件,主要用于虚拟机环境,支持Xen/XenServer, KVM, and VirtualBox等虚拟化技术。它让大规模网络自动化可以通过编程扩展...

openstack 一个租户可以创建多少虚拟网段

OpenStack里虚机(或者叫instance)只有在分配floating IP后才能访问外网,那么需要怎样做配置才能达到目的呢?1. 需要在网络节点上确定一个可以访问外网的物理网卡,这个网卡可以和管理网卡是一个。这里我们假定外网网卡和管理网卡是独立的,且外网网卡的名字叫做eth2。2. 添加一个新的bridge br-ex,并将eth...

如何在Neutron中提供高级网络服务

它们还可以创建网络服务,比如负载平衡、虚拟专用网或插入 OpenStack 租户网络中的防火墙。在过去,OpenStack 的网络组件位于 OpenStack Nova (Compute) 项目中。其中大部分组件被拆分为一个包含 Folsom 版的单独项目。这个新项目最初称为 Quantum,但后来重命名为 Neutron,以避免与公司 Quantum Corporation...

vmware虚拟机访问内网和外网 让linux虚拟机被外网访问 外网访问内网虚拟机 vm虚拟机外网怎么访问 桥接模式让外网访问虚拟机 外网访问桥接模式虚拟机网站 外网直接访问esxi虚拟机 外网访问虚拟机服务器 虚拟机无法访问外网
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
深唐杯和大唐杯哪个含金量高 大唐杯有含金量吗 有时候晚上经常射精是怎么回事 做频繁春梦秒射是正常现象嘛 频繁梦中射精怎么回事 电饼铛上的油怎么去掉 除了口罩?疫情防护用品主要有哪些,特殊时期的病毒防护物品清单_百度... 医务人员基本防护用品三样 劳保用品的用处 中国哪些城市有飞迪拜 openstack外部网络适配器名称 openstack 怎样创建虚拟网络 如何配置OpenStack网络以启用对OpenStack实例的访问 司考和法考有什么区别? 法硕法学和法硕非法学区别 法考和考研能兼顾吗? 法考和之前的司考有什么区别? 法考和司考区别? 法硕(非法学)读研期间可以参加法考吗? 法硕不能法考 先考法硕还是先考法考?两个可以一起准备么? 法考和法硕先考哪个好一点? 法考和法硕先考哪个好一点??? 电脑桌面有一大块空白怎么办 法硕比法考简单吗 电脑一开机为什么桌面上所有东西都没有了? 法硕和法考该怎么安排 电脑桌面总有一个空白窗口消不掉 强奸罪法硕和法考的区别? 法学研究生是不是百分百都过法考了? 如何在OpenStack中手动添加虚拟机实例网卡 只有单网卡怎么配置openstack 如何快速部署openstack Linux下openstack用neutron更改网络的命令? 什么是公寓住宅? CentOS7 + OpenStack-Ocata Cinder 单节点 怎么配置 要台价值3000元的电脑配置,谢谢 openstack 虚拟机分配了外部网络,为什么ping不通 公寓性质住宅什么意思? 3000左右买个什么样的笔记本电脑 请教?网卡的 混杂 模式指的是什么?怎样判断网卡的模式? 3000元的电脑推荐配置 什么是公寓式住宅 公寓式住宅有什么优缺点 OpenStack Neutron网络里使用VLAN,VXLAN和GRE要注意什么 配置一台3000元左右的电脑,最佳的配置是什么 对于openstack很模糊,想用它来搭建一个分布式的平台,在网络上搜到的都是概念性的东西和安装,请问: 公寓式住宅的产权是40年的吗? 配一台3000左右的电脑,大概要多少钱? 想配置3000元左右的电脑,大概是什么配置 公寓式住宅与普通住宅有什么区别?