-
前因
安装了虚拟机,ssh连接有时很慢。就想着是不是网络问题,抓包,发现响应特别慢。就有点难受了。
后来通过创建内部专用网络,发现配置好了之后,可以在主机,虚拟机之间通讯,ping可以ping通两个接口,但是ping网关没有响应,我想得是应该这种不是Nat吧,路由器路由不回来,对方接受到了这个包跟自己不是一个网段的就丢掉了?或者发走了,主要是没有相关的路由策略,而我又没有办法修改路由器的路由策略。只好使用同一台电脑的
Nat
作为代理来使用。最后创建了一个
10.1.1.1/30
的子网。这样也够段,懒得每次用putty
输入ip
的时候输入那么多。 -
为
hyper-v
创建nat
网络-
管理员打开
power sheell
-
创建一个内部网络
模板:
New-VMSwitch -SwitchName "SwitchName" -SwitchType Internal
案例:
New-VMSwitch -SwitchName "nat" -SwitchType Internal
-
这个
SwitchType Internal
对应 -
这个
SwitchName
对应
-
-
查看当前已拥有的虚拟交换机。
Get-NetAdapter

-
建立
Nat
的内部网段模板:
New-NetIPAddress -IPAddress <NAT Gateway IP> -PrefixLength <NAT Subnet Prefix Length> -InterfaceIndex <ifIndex>
案例::
New-NetIPAddress -IPAddress 10.1.1.1 -PrefixLength 30 -InterfaceIndex 66
NAT Gateway IP
Nat的网关IP
NAT Subnet Prefix Length
子网掩码是多少位,这里就不用你填写计算子网掩码了。我填的30位。两台机子。
ifIndex
这个是上面通过Get-NetAdapter
命令查看的输出,对应ifindex
。
-
为当前主机的某个接口创建
NAT
模板:
New-NetNat -Name <NATOutsideName> -InternalIPInterfaceAddressPrefix <NAT subnet prefix>
实例:
New-NetNat -Name vmnat -InternalIPInterfaceAddressPrefix 10.1.1.0/30
NATOutsideName
外部名,随便填,这个名字用于后面删除用NAT subnet prefix
NAT网络的子网前缀。然后就可以改了。
-
-
删除
NAT
-
查看
Get-NetNat
-
删除
Get-NetNat | Remove-NetNat
-
获取内部的交换机
Get-VMSwitch
-
#查看某个地址池
Get-NetIPAddress -InterfaceAlias "vEthernet (<name of vSwitch>)"
之前创建的
vEthernet (nat)
列表可以通过Get-NetAdapter
指令查看 -
删除地址池
Remove-NetIPAddress -InterfaceAlias "vEthernet (<name of vSwitch>)" -IPAddress <IPAddress>
-
删除虚拟交换机
Remove-VMSwitch "QoS Switch"
文档
-
来源:oschina
链接:https://my.oschina.net/u/3695598/blog/4254719