真正的服务器,多个IP地址,HyperV虚拟服务器,如何跨实际和虚拟网卡分区IP

如果没有相同的基本背景信息,这是一个稍微难以解释的问题 – 我将在必要时尝试和改进问题


最初,我有一个单独的托pipe服务器(Win 2008R2),具有以下8个IP地址范围。

- Single NIC ( IP: xx128.72 -> xx128.79 // Subnet: xx255.192 // GW: xx128.65 ) 

在同一个盒子上安装Hyper-V并设置单个虚拟服务器之后,我想要将其中一个IP地址分配给虚拟服务器,而其他所有部分都正常运行。

首先,我尝试使用“外部”networking,但是(即使在“虚拟适配器”上设置了类似于“ 这里 ”的IP,但仍然难以联网运行)。

我需要保持服务器运行(否则我会花更多的时间去追求这个方法)

Q1 …这是明智的做法吗? 我应该继续下去吗?

然后,我决定尝试不同的方法 – 将HyperVnetworking设置为“内部”(pipe理操作系统可见)

 - Physical NIC ( IP: xx128.72 to .75 // Subnet: xx255.192 // GW: xx128.65 ) - Virtual NIC ( IP: xx128.78 // Subnet: xx255.252 // GW: xx128.72 ) - Gateway was the same as the IP of the physical NIC ) - Virtual OS-NIC ( IP: xx128.77 // Subnet: xx255.252 // GW: xx128.78 ) - Gateway was the same as the IP of the host virtual-NIC ) 

令人惊讶的是,这种方法实际上工作,我能够从以下所有连接: – 物理网卡(xx128.72) – 物理网卡(xx128.72)到虚拟网卡网卡(xx128.77)例如通过ping + FTP进行testing – 互联网进出虚拟OS-NIC(xx128.72)

我的问题是,这种方法似乎只持续了很短的时间(几个小时)。

在这段时间之后,我似乎失去了从虚拟操作系统网卡连接到互联网的能力(但是我仍然可以从主机操作系统连接到虚拟操作系统,从主机操作系统连接到互联网)

我已经重复testing了几次,得到了相同的结果…我离开了服务器几个小时(例如一夜之间),而当我早上回来时,Virtual-OS失去了路由到互联网

我不太确定接下来要看什么(或者我是否完全错误地做了这个)

一个“可能的相关项目”是主机操作系统也运行RRAS(路由和远程访问),但这只是运行一个简单的VPN

第二季度 – 我应该在下一个小麦吗? (任何好的参考/build议什么尝试)

将不胜感激任何想法或意见(即使你告诉我,我正在做这个错误的方式)

*编辑 – 第二次尝试使用“外部”*

重新尝试了“外部”的方法,我再次没有networking访问…

然后,我没有选中“启用pipe理操作系统的虚拟局域网标识”…嘿,一切都变成了生活。

批评的措辞隐藏在“更多关于pipe理虚拟networking”的链接中

指定可用于隔离来自pipe理操作系统的networkingstream量的标识号

最终的结果… 成功 (但没有解释为什么它部分在有限的时间内工作)

后来我发现以下MSDN Blog-Post有趣… 了解Hyper-V VLAN

Hyper-V实际上并不是Windows的附加组件,它实际上是一个完整的pipe理程序。 最初安装的操作系统成为Hyper-V的一个根分区。 那么现在基础操作系统在技术上是什么呢? 就此而言,“特殊”虚拟机可以通过硬件(为了使系统仍然正常)。 这是启用Hyper-V后几乎所有硬件的默认configuration。 当为连接到物理网卡的Hyper-V创build虚拟networking时,Hyper-V将拥有该网卡的所有权,并且不再通过该networking。

您的网卡configuration应如下所示:

物理网卡应该只启用“Microsoft虚拟networking交换机”协议(一个例外是,当这不是一个实际的物理网卡,像一个软件configuration的团队,你通常会有某种其他协议,不能禁用)。

在Hyper-Vpipe理器的虚拟networkingpipe理器中; 创build一个“networking”,这将在Hyper-V中创build一个虚拟networking交换机。 将其设置为连接到物理NIC的外部设备,并选中允许pipe理操作系统访问的checkbox。 这将为基本操作系统创build一个新的vNIC(请记住,它实际上是一个特殊的虚拟机,所以你要添加一个vNIC到这个虚拟机…)。 新的NIC可能必须configuration为从旧物理NIC取下的IP(取决于您使用的Hyper-V的版本,如果它会自动执行此操作)。

根据需要创build虚拟机,向其中添加vNIC,然后将这些vNIC连接到相应的虚拟networking。

外部虚拟networking连接到物理网卡。 它们允许虚拟机连接到物理网卡。 内部虚拟networking总是为pipe理操作系统创build一个新的vNIC(没有checkbox,只是总是完成)。 这允许虚拟机与基本操作系统通信,但不能与任何物理网卡通信。 专用虚拟networking仅适用于虚拟机,不以任何方式附加到pipe理操作系统。

你还提到了让事情继续下去的问题。 如果您不使用服务器级NIC芯片(特别是英特尔,Broadcom,QLogic,Emulex,NexGen,Mellanox等),则会出现问题。 同样确保你有最新的固件。 如果您正在运行Via或Realtek芯片,则可以节省时间并转储可靠的1级虚拟机pipe理程序(Hyper-V,ESXi,KVM等)的概念。