必须手动创建虚拟交换机才能让Hyper-V虚拟机联网;外部交换机实现桥接,需选中正在上网的有线网卡并勾选共享选项;内部交换机配合PowerShell配置NAT适用于无线或隔离场景。

让Hyper-V虚拟机连上互联网或与宿主机互通,必须手动创建虚拟交换机——系统不自带默认可用网络,选错模式或网卡会导致虚拟机彻底断网。
创建外部交换机实现桥接上网
桥接模式适用于有线环境,虚拟机会获得和宿主机同一网段的IP,像物理设备一样直连路由器。
以管理员身份打开Hyper-V管理器 → 右侧点击“虚拟交换机管理器” → 点击“新建虚拟网络交换机” → 类型选“外部” → 点击“创建虚拟交换机”。
在属性页中:输入名称(如External-Bridge);“物理网络适配器”下拉菜单里【必须选中当前正在上网的有线网卡】;务必勾选“允许管理操作系统共享此网络适配器”。
点击“确定”后会弹出断网警告,这是正常现象,等待约90秒网络自动恢复。
关机状态下右键目标虚拟机 → “设置” → 左侧选“网络适配器” → 右侧“连接到”下拉选择刚建好的External-Bridge → 点击“确定”。
启动虚拟机,运行ipconfig(Windows)或ip a(Linux),确认获取到192.168.x.x这类与宿主机同段的地址,即可直接访问外网。
用内部交换机+PowerShell配置NAT上网
无线网卡不支持桥接、或需要网络隔离时,NAT是最稳妥的选择。它靠宿主机做网关转发,虚拟机走私有网段。
方法一:使用默认交换机(最简)
新建虚拟机时若未手动指定网络,Hyper-V会自动分配Default Switch——它本质就是NAT模式,已预配好vEthernet网卡与NAT规则,开箱即用。
方法二:手动搭建完整NAT链路
第一步:在虚拟交换机管理器中新建类型为“内部”的交换机,命名为NAT-Internal,不绑定任何物理网卡。
第二步:进入宿主机“网络连接”,找到新生成的vEthernet (NAT-Internal) → 右键→“属性”→双击“Internet协议版本4(TCP/IPv4)”→设静态IP为192.168.100.1,子网掩码255.255.255.0,DNS留空。
第三步:以管理员身份运行PowerShell,依次执行:
netsh routing ip nat install
netsh routing ip nat add interface "vEthernet (NAT-Internal)" full
第四步:关机状态下将虚拟机网络适配器绑定到NAT-Internal → 启动虚拟机 → 手动配置其IP为192.168.100.10/24,网关填192.168.100.1,DNS可填8.8.8.8。
【若ping 8.8.8.8不通,先检查Windows服务中的“Remote Access”是否已启动】
验证连通性与排错要点
在虚拟机内依次执行:ping 192.168.100.1(测宿主机网关)→ ping 8.8.8.8(测NAT转发)→ ping www.baidu.com(测DNS解析)。
宿主机防火墙需放行ICMP、UDP 53(DNS)、TCP 80/443;若用无线网卡配桥接,大概率失败,应改用NAT方案。
虚拟机设置中网络适配器必须处于“关闭状态”才能修改交换机绑定,运行中修改无效。

















