微软网络虚拟化hnvoverlay子网和分布式路由

author author     2022-08-23     463

关键词:


虚机网络和虚拟子网

       在介绍HNV工作原理之前,我们有必要了解下组成HNV的原子网络——VM Network(虚机网络)和Virtual Subnet(虚拟子网)。HNV中,虚机网络作为租户间虚机隔离的单位,在网络虚拟化结构中起到非常关键的作用。虚机网络是虚机连接到物理网络的逻辑组件,每个虚机网络都有一个路由域并由特定路由域ID(Routing Domain ID,简称为RDID)标识,路由域ID是标准的Windows GUID,格式通常为“xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”。在虚机网络里可进一步定义虚拟子网,虚拟子网是广播域,在同一个虚拟子网的虚机必须使用相同的IP前缀。每个虚拟子网都有一个特定的虚拟子网ID(Virtual Subnet ID,简称为VSID),虚拟子网和VLAN类似,但是比VLAN有更广的范围,VSID范围从4096到16777214。同一个HNV路由域里的虚拟子网可以实现不同子网间的路由,因此也可以说HNV网络里集成了软件路由功能。

       如果物理机逻辑交换机启用了HNV,可使用PowerShell命令PS C:>Get-NetVirtualizationCustomerRoute查看虚机的RDID和虚拟子网的VSID,如下示例所示。

PS  C:>Get-NetVirtualizationCustomerRoute
RoutingDomainID    :  00894F8A-631A-43C3-B52E-B54F47970938    
VirtualSubnetID    :  676802    
DestinationPrefix  :  192.168.188.0/24    
NextHop            :  0.0.0.0    
Metric             :  0     
RoutingDomainID    :  00894F8A-631A-43C3-B52E-B54F47970938    
VirtualSubnetID    :  1001280    
DestinationPrefix  :  0.0.0.0    
NextHop            :  10.0.2.2    
Metric             :  0 
    
RoutingDomainID    :  72961897-0253-48C3-9ACE-E2D1EEDFB9AB    
VirtualSubnetID    :  16283042    
DestinationPrefix  :  192.168.188.0/30    
NextHop            :  0.0.0.0    
Metric             :  0     
RoutingDomainID    :  72961897-0253-48C3-9ACE-E2D1EEDFB9AB    
VirtualSubnetID    :  11061729    
DestinationPrefix  :  172.16.100.0/30    
NextHop            :  0.0.0.0    
Metric             :  0


虚拟化网络的VM Network和网络虚拟化的VM Network略有不同,如图1所示,虚拟化网络结构里,每个逻辑网络里只能创建一个唯一的虚机网络,每个虚机网络下可以创建若干个虚拟子网。虚拟化网络结构里要求每一个虚拟子网都是唯一的,也即同一个虚机网络(逻辑网络)下的虚拟子网不能重复,不同虚机网络(逻辑网络)里的虚拟子网也不能重复。

技术分享

图1 虚拟化网络的虚拟子网

在网络虚拟化的结构里,可以由用户自主在逻辑网络里创建虚机网络,虚机网络是隔离用户与用户网络的边界。在一个虚机网络里可以创建多个不重复虚拟子网,虽然同一个虚机网络里的虚拟子网不可重复,但不同虚机网络里的虚拟子网允许重复。如图2所示,虚机网络1的有两个不重复虚拟子网—虚拟子网1和虚拟子网2,虚机网络2有一个虚拟子网3,虚拟子网1和虚拟子网3的子网是完全一样的。在同一个虚机网络下的不同子网默认可以路由互通,在图2里,虚机网络1的两个虚拟子网分别为192.168.188.0/24和192.168.189.0/24,这两个虚拟子网内的IP地址的可以互通。因为HNV交换机内置了路由器,这个路由器是物理主机逻辑交换机的一部分,多台使用同一个逻辑交换机的主机使用分布式路由器为虚拟子网提供路由,每一台物理机的逻辑交换机成为同一虚机网络不同虚拟子网间默认的网关。在Windows Server里HNV默认的网关地址都是1,掩码24位,在创建虚拟子网时都会保留这个IP地址不给虚机使用。

在多租户的场景里,重复但不冲突的网络虚拟化实现了多租户数据中心里租户按需定义自己的网络的需求。

技术分享

图2网络虚拟化的虚拟子网

接下来我们将借助微软云平台(Windows Azure Pack)为租户提供自助创建虚拟网络的接口,首先需要在SCVMM创建好网络虚拟化的逻辑网络并发布到云平台供租户自助创建虚机网络和虚拟子网。

 

重复的虚拟子网

假设有两个租户分别是CorpA和CorpB,两个租户使用云自助门户创建了相同的虚拟子网192.168.188.0/24,如图3所示。他们的虚拟子网配置完全一样的IP地址池,如图4所示。注意地址池分配的第一个IP地址从2开始,因为1这个IP地址默认预留作为虚拟子网的网关使用。

技术分享

图3 租户自定义自己的虚机网络

   

技术分享

图4租户自定义自己的虚拟网络

       CorpA创建两台虚机(CorpA-Web001和CorpA-DB001)并从IP地址池里获取IP地址为192.168.188.2和192.168.188.3;同样,CorpB创建两台虚机(CorpB-Web001和CorpB-DB001)并从IP地址池里获取IP地址也是192.168.188.2和192.168.188.3,如图5所示。

技术分享

图5 CorpA和CorpB的虚机具有一样的IP地址

       即使CorpB的两台虚机的IP地址和CorpA的IP地址完全一样,各自的IP地址并没有发生冲突导致IP地址无效。登录CorpA-Web001虚机,可以顺利Ping通 CorpA-DB001虚机,如图6所示。

技术分享

图6 CorpA的虚机互相ping

登录CorpB-Web001虚机,可以顺利Ping通 CorpB-DB001虚机,如图7 所示。

技术分享

图7 CorpB的虚机互相ping

       经过验证,在网络虚拟化的逻辑网络下可以创建多个虚机网络,虚机网络里的虚拟子网可以重复不冲突。

 

HNV软件实现路由

       HNV具备多个租户使用相同的虚拟子网之外,还具备同一虚机网络中的路由功能,在验证过在网络虚拟化的逻辑网络创建重复的虚拟子网后,接下来验证同属一个虚机网络中不同虚拟子网之间的路由。

租户CorpC借助微软私有云门户Azure Pack,在同一个虚机网络里创建两个不同虚拟子网192.168.188.0/24和172.16.100.0/24,如图8所示。

技术分享

图8 CorpC在同一个虚机网络里创建两个虚拟子网

       在云平台创建两台虚机,分别获取到192.168.188.2和172.16.100.2的IP地址,如图9所示。

技术分享

图9 在不同子网的两台虚机分别获取IP地址

       登录corpc-web001虚机,确认分配的IP地址是192.168.188.2,然后Ping 172.16.100.2这个IP地址,在图10里可看到192.168.188.2这个IP地址成功Ping通了172.16.100.2这个IP地址。

技术分享

图10 跨子网ping

       反过来登录corpc-db001虚机,确认分配的IP地址是172.16.100.2,然后Ping 192.168.188.2这个IP地址,在图11看到可以看到172.16.100.2这个IP地址成功Ping通了192.168.188.2这个IP地址。

技术分享

图11反向ping测试

 




本文出自 “黄利军的博客” 博客,转载请与作者联系!

计算机网络复习之网络层

...,能充分保证地址的分配。因特网的路由选择技术是分布式的、动态的。路由协议主要有:基于距离向量的路由选择协议RIP、基于链路状态的路由协议OSPF等。Internet网际互联层中使用的四个重要协议是IP、ICMP、ARP、RARP。... 查看详情

路由器端口、交换机vlan、子网、ip地址和子网掩码之间的关系?

...交换机VLAN、子网、IP地址和子网掩码之间的关系,他们在网络划分与管理中分别承担了什么样的角色。路由器端口,你可以理解为一个普通网络接口,对一个局域网来说,路由端口就相当于网关,必须要配置好IP,掩码VLAN是虚拟... 查看详情

路由器端口、交换机vlan、子网、ip地址和子网掩码之间的关系?

...交换机VLAN、子网、IP地址和子网掩码之间的关系,他们在网络划分与管理中分别承担了什么样的角色。路由器端口,你可以理解为一个普通网络接口,对一个局域网来说,路由端口就相当于网关,必须要配置好IP,掩码VLAN是虚拟... 查看详情

网络原理二讲

...网络传给中央处理器,处理完之后依次返回。可靠性需要分布式控制,多台处理器。并且多台处理器处理性能也提高了(处理效率,链路),但是维护变复杂。 Appnet:将网络分为通信子网和资源子网(分层:职责划分,更加... 查看详情

路由寻址--子网划分/cidr

路由器一定要实现:可以从路由表中查出应当到达其他网络的下一条路由器,所以一定要指明在整个网络下到达所有其他网络的下一条地址。子网选择、子网路由选择的问题:子网划分的思想: 一个单位划分子网后,对内显... 查看详情

计算机网络的性能指标和基本概念(子网掩码ipmac地址)

性能指标     二级IP地址   网络号就是每个局域网上的编号,而主机号就是由局域网所在的单位自行分配,同一个局域网上的主机或路由器中,IP地址中的网络号必须是一样的,且一个路由器的不同... 查看详情

网络层——可变长子网掩码(vlsm)和无类域间路由(cidr)技术

...ash;可变长子网掩码——CIDR——超网(将小的网络组成大的网络)二、可变长的子网掩码(VLSM)问题1:在传统的子网掩码中,子网掩码一致,主机数量平均分布,子网号不能全为0或全为1,这样会导致浪费一些IP,并... 查看详情

nsx-v与nsx-t–路由对比

...涉及到虚拟环境时,NSX允许提供比传统路由器更多得多的分布式和高效的路由机制,从而使虚拟机能够以更少的路由成本或不必要的跃点进行通信。这既包括东/西和北/南交通。NSX-V路由借助NSX-V,NSXEdge可提供能够隔离虚拟网络... 查看详情

路由器使用子网掩码进行分组转发的过程

...几位作为子网号,划分后的ip地址变成三级结构:IP地址=网络号,子网号,主机号。  2.子网掩码:由于子网划分是单位内部的事情,路由器需要知道子网号才能找到主机,因此通过子网掩码(32位二进制串,由一串的1和连续... 查看详情

智汇华云|arsdn之分布式路由及浮动ip简介

...快速导入与部署的要求。本期智汇华云,为大家带来分布式路由及浮动IP简介,帮助更多用户简化运维、挖掘网络潜能、释放网络价值。虚拟路由器是SDN中的跨网络通信的解决方案。分布式路由(DVR,distributedvirtua... 查看详情

如何使用 terraform 中的循环概念在虚拟网络内创建子网和 nsg 内的安全规则

】如何使用terraform中的循环概念在虚拟网络内创建子网和nsg内的安全规则【英文标题】:Howtocreatesubnetsinsidevirtualnetworkandsecurityrulesinsidensgusingloopconceptinterraform【发布时间】:2021-12-0906:58:11【问题描述】:我正在尝试在一个脚本中... 查看详情

ipv4子网划分与聚合

为了解决IPv4的不足,提高网络划分的灵活性,诞生了两种非常重要的技术,那就是VLSM(可变长子网掩码)和CIDR(无类别域间路由),把传统标准的IPv4有类网络演变成一个更为高效,更为实用的无类网络。关于VLSM和CIDR的介绍参... 查看详情

网络层-第三节3:子网划分与子网掩码和无分类域间路由选择cidr(代码片段)

文章目录一:子网划分和子网掩码(1)子网划分(2)子网掩码二:使用子网掩码时路由器分组转发算法三:无分类域间路由选择CIDR四:构成超网(路由聚合)五:最长匹配前缀一:... 查看详情

怎样重新设置路由器

...你的账号和密码(网通或电信的联网的账号密码)。3、网络连接成功后,即可重新设置路由器。路由器(Router)又称网关设备(Gateway)是用于连接多个逻辑上分开的网络,所谓逻辑网络是代表一个单独的网络或者一个子网。当... 查看详情

docker网络和容器的通信

Docker的本地网络实现其实就是利用了Linux上的网络命名空间和虚拟网络设备(特别是vethpair)。 基本原理直观上看,要实现网络通信,机器需要至少一个网络接口(物理接口或虚拟接口)与外界相通,并可以收发数据包;此... 查看详情

使用bgpe***方式部署分布式网关vxlan(代码片段)

BGPE***VXLAN能够通过VETP隧道实现大二层MACINUDP,但是没有控制平面,虽然可以手动创建隧道,但是再面对大规模虚拟机场景下,基本不太现实,同时BUM报文泛滥,占用带宽华为的VXLAN方案可以通过BGPE***方式来充当控制平面,解决相... 查看详情

ip路由原理1

...路由);2、分类和无类路由;路由器将数据转发到目标网络,需要知道远程网络,和到达此网络的最佳路径。路由器知道与他直连的网络--它根据接口配置的地址和子网掩码确定接口的子网和网络号;而对于不接口直接相连的网... 查看详情

kali虚拟机连接网络设置/解决ping网站时域名解析错误/解决子网ip和子网掩码不一致

虚拟机如何连接外网**材料:**vm虚拟机,kali基础必备知识解析:注意:这里的vmnet指的是虚拟机网卡(独立于本机之外的),所以直接设置就行,跟本机ip和网关等没有半毛钱关系或者说是平等在一... 查看详情