vm虚拟机如何实现与主机共享代理实现科学上网
方法一:使用tun模式(推荐)
相关文章:深度解析clash开tun模式:配置与使用指南 - Clash最新教程
如果主机是使用代理软件走代理的话,比如clash, 可以直接使用Tun模式。Tun模式下,代理软件会创建一个虚拟网卡,主机上的进程(包括虚拟机)的网络请求都会重定向到这个虚拟网卡。这种模式拦截了所有进程的网络请求,有些进程并不遵守系统代理,比如终端, pip, docker等等,Tun模式专治这种。
方法二:使用系统代理模式
很麻烦,推荐第一种
VM软件配置
1.VM虚拟网络编辑器
打开虚拟网络编辑器(方式:编辑->虚拟网络编辑器),
然后点击更改设置
2.配置VMnet8和VMnet1
VMnet8【子网配置】如下:
【NAT设置】如下:
【DHCP设置】如下:(可以理解为虚拟机的ip范围, 不要跟上图配置的网关冲突了)
【VMnet1】采用默认配置就可以了,当然你也可以按照上述vmnet8的方式修改一个容易记住的ip:
四、主机IP配置
windows进入打开设置->网络
【2024-9-18补充】【可选START // 表示这个这个范围是可有可无的】
双击上述红框,然后配置如下:(这里不要跟之前的网关冲突了)
【2024-9-18补充】【可选END // 表示这个范围是可有可无的】
代理软件要开启【Allow LAN】:(这里要记住端口, 我的是7890)
然击后点:
记住下面的接口ip,这个ip需要在Vm虚拟机中使用, 两个都可以用
在windows终端下输入ipconfig同样可以查到:
五、虚拟机代理ip配置
在配置代理之前需要设置网络适配器, 我们之前配置了VMnet8,在这里可以使用。
5.1 虚拟机上用【设置】配置代理
用【设置】配置代理,代理设置会影响所有图形app, 比如浏览器,shell…
但是却影响不了ssh(用ssh连接虚拟机ubuntu)终端,所以在使用ssh还需要配置代理,参考第七节。
当然这种配置也影响不了很多需要单独配置代理的app, 比如conda, pip, docker等等
进入虚拟机,配置ip,如果是Ubuntu可以参考下面的配置:(注意下图的端口,要跟代理软件的端口一致)
然后可以打开浏览器看外网,或者终端: