You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Windows 10沙盒在主机启用Surfshark VPN时无法联网,需实现沙盒经主机VPN访问网络

Windows 10沙盒在主机启用Surfshark VPN时无法联网,需实现沙盒经主机VPN访问网络

我之前也碰到过一模一样的问题,Surfshark的默认防火墙和路由配置确实会把Windows Sandbox的网络通路给挡住,下面给你几个亲测有效的解决办法,按步骤来应该就能搞定:

方法一:调整Surfshark防火墙设置,允许沙盒网络

  • 打开Surfshark客户端,点击右上角的设置图标,进入高级选项卡
  • 找到「防火墙」模块,如果你开启了阻止所有非VPN流量(这个选项是罪魁祸首,会切断所有未走VPN的网络连接,包括沙盒的),可以先临时关闭试试,看沙盒能不能联网;如果不想关闭这个安全选项,就点击「添加例外」,把主机里的vEthernet (Default Switch)适配器加进去——这个就是沙盒用的虚拟网络适配器,你可以在主机的「网络连接」面板里找到它

方法二:手动给沙盒添加VPN路由

这个方法适合临时使用,步骤如下:

  1. 在主机上右键开始菜单,打开管理员身份的PowerShell
  2. 运行Get-NetAdapter,找到Surfshark的VPN适配器(名字一般是「Surfshark VPN」),记下它的InterfaceIndex数值
  3. 接着运行Get-NetRoute -InterfaceIndex <刚才记下的索引值>,找到DestinationPrefix0.0.0.0/0的那条记录,它的NextHop就是VPN的网关地址,把这个地址记下来
  4. 启动Windows Sandbox,在沙盒里打开PowerShell,输入下面的命令(把<VPN网关地址>换成你刚记的地址):
    route add 0.0.0.0 mask 0.0.0.0 <VPN网关地址> metric 1
    
    执行完之后,沙盒的所有流量就会走主机的VPN了

方法三:用沙盒配置文件实现自动路由(持久化方案)

如果不想每次启动沙盒都手动输命令,可以做一个自定义配置文件:

  1. 新建一个文本文档,把后缀改成.wsb,比如命名为SandboxVPN.wsb
  2. 打开这个文件,粘贴下面的内容,把<VPN网关地址>替换成你之前查到的地址:
    <Configuration>
      <Networking>
        <NetworkingMode>Default</NetworkingMode>
        <AllowNetworking>true</AllowNetworking>
      </Networking>
      <LogonCommand>
        <Command>route add 0.0.0.0 mask 0.0.0.0 <VPN网关地址> metric 1</Command>
      </LogonCommand>
    </Configuration>
    
  3. 以后双击这个.wsb文件启动沙盒,就会自动执行路由命令,直接通过主机VPN联网了

注意事项

  • 每次重启Surfshark VPN后,网关地址可能会变化,这时候需要重新查地址更新配置文件或者命令里的地址
  • 如果Surfshark客户端更新后设置被重置,记得再检查一遍防火墙的例外设置

备注:内容来源于stack exchange,提问作者Skyline

火山引擎 最新活动