Linux主机通过windows虚拟机上网

现在有些公司喜欢把网络接入和安全管理揉在一起管理,放着标准的协议不用,偏偏要采用某些厂商自己搞的所谓的“一整套解决方案”。这些所谓的解决方案又常常只顾着windows。对非软件行业的公司还无所谓,做做ppt,windows就够了嘛!但是一个软件公司也要这样搞,那对开发者真是太不友好了。估计是因为他们对自己管理信息安全没有信心吧。

牢骚是不能不发的。

下面说Linux使用windows虚拟机曲线上网的解决方案:

  1. 安装windows虚拟机(vbox为例),网络选择桥接网卡。(该模式可以让虚拟机直接暴露在物理机所在网络中)
    Linux主机通过windows虚拟机上网

  2. 并安装那些乱七八糟不管有事没事儿就乱扫一通常年占用CPU导致系统卡顿的企业管理软件,配置好可以通过windows虚拟机上网。

  3. VirtualBox中点击 管理->主机网络管理器 (Ctrl+H),然后点击“创建”图标,添加一个vboxnet0,后面用于host和vm的通信。配置使用默认的就行。
    注意下最小地址和最大地址,第5步设置虚拟机IP时要在这个范围内。
    Linux主机通过windows虚拟机上网
    Linux主机通过windows虚拟机上网

  4. 给虚拟机添加一个Host-Only模式的网卡,interface选中刚才创建的vboxnet0.
    Linux主机通过windows虚拟机上网

  5. windows vm 中配置Host-Only模式网卡的ipv4地址如下:
    Linux主机通过windows虚拟机上网
    该步需要注意ip地址要在第3步的ip范围内。

  6. 此时vm可以ping通主机(192.168.56.1),但是host无法ping通vm,这是因为windows vm防火墙没有关闭。没影响。(可以关闭防火墙试下)

  7. windows vm安装ccproxy,使windows vm成为http代理服务器。
    如果弹出windows防火墙询问窗口,记得放行。如果没有弹出窗口,重新启动下程序或者取防火墙手动设置下。
    ccproxy配置如下:
    Linux主机通过windows虚拟机上网
    这交互设计我也不说啥了,反正一般人看不懂就是了。

  8. 现在Linux物理机使用 http://192.168.56.188:808 作为http代理上网就可以了。比如浏览器可以使用switchyomega插件配置。

  9. 说下git怎么配置代理:
cd damn-project
git config http.proxy http://192.168.56.188:808
git config https.proxy http://192.168.56.188:808

(要全局代理的话加--global参数)
好了,你可以git pull试一下了。

Linux主机通过windows虚拟机上网

上一篇:C#中属性的解析


下一篇:AcWing:138. 兔子与兔子(Hash)