网上的大多数脚本之解决了Hostednetwork的设置和开启,未实现关于网络共享部分的命令行实现。网络共享部分主要使用了ICS(Internet connect share)服务,可在服务列表中找到对应服务, 服务名称为(SharedAccess).

  1. 开启/关闭SharedAcess服务
#开启
net start sharedaccess

#设置为自动启动/也可以直接修改注册表#HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\SharedAccess\Start
sc config sharedaccess start=auto

#关闭
net stop sharedaccess

2.  修改网络接口共享配置

需要修改注册表项:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedAccess下的PrivateIndex 和PublicIndex, 分别为公网,私网网络接口序号。可以通过route print 命令查看接口序号,其中公网可选用本地网络默认网关对应的接口,私网序号选Microsoft Hosted Network Virtual Adapter对应的接口。

reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedAccess\PrivateIndex 7
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedAccess\PublicIndex 2

3. 修改私网配置(可使用默认配置)

修改注册表项\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters下的对应参数,一般采用默认值即可。

4. 设置Hostednetwork

这个网上有很多教程,主要是设置私网对应的SSID,KEY,使用命令:

netsh wlan set hostednetwork mode=allow ssid=${your ssid} key=${your password}

5. 设置完成后,启动托管网络

#启动
netsh wlan start hostednetwork
#停止
netsh wlan stop hostednetwork

需要在每次开机后运行开启命令,也可将此命令加入Window启动事件中开机触发启动, 如下图所示。

Windows Hostednetwork自动启动计划任务配置
Windows Hostednetwork 自动启动命令行配置