在虚拟机中,我们想借用主机的代理访问外面的世界,本文提供一种方法解决前面的问题
代理
前提条件,主机(Mac)中可以开代理,目的是需要虚拟机通过主机的代理访问外面的网络
工具:
- ShadowsocksX-NG-R8[版本 1.5.6 (1)]
- Kail Linux系统
- Parallels Desktop
- Chromium
第一步 同一局域网
首先先确定Linux系统和Mac在统一局域网下,在PD的偏好设置
中,找到网络
,里面的shared
选项,就是对应我们虚拟机配置中的共享网络
。在选项中开启了在系统偏好设置中显示
,对应的在网络设置里的Parallels Shared #0
虚拟网卡。DHCP开启后,我们的主机就会自动获得字段内的IP地址,代表了这台电脑(Mac)在虚拟局域网中的位置。此时打开虚拟机系统(Linux),在终端输入ifconfig
,会发现ip地址是10.211.55.X,说明和主机处于统一局域网。
第二步 允许访问局域网
截至本文完成之前,Mac的SSR中尚未有Window中的允许其他设备访问局域网
功能,所以需要我们手动操作。首先我们对着SSR右键,在菜单中找到高级设置
和HTTP设代理置
。
在高级设置中,我们要把Socks5的监听地址由原本的127.0.0.1
(仅限本地)改为0.0.0.0
(全局域网公开),端口不变就可以了。
同理,在HTTP代理设置中,我们要把代理地址改为0.0.0.0
(全局域网公开),端口不变就可以了。
第三步 浏览器设置代理
Kali Linux 系统初始的系统是Chromium,那我们就直接在上面设置代理。有一款插件可以方便我们随意切换代理状态,那就是SwitchySharp
,我们需要从Chrom的商店去获取。去商店要外网,但是要去下载插件才能连外网,这不死锁了吗?
其实我们还可以先开全局代理,那就是在终端中输入命令
1 | chromium --proxy-server="socks5://10.221.55.2:1086" |
注意,这里的ip地址是主机局域网中的ip地址,而端口号就是我们在高级设置中设置的端口
用此命令打开浏览器后,在setting
页面左边栏里面找到Extensions
,然后再打开侧边栏找到最下面的Open Chrome Web
,进去搜索SwitchySharp
,下载,右上角会出现一个小地球就说明安装成功,安装成功后终端就可以退出,再以常规的方式打开浏览器。
点击小地球,打开options
,在图中红框部分分别填上对于的主机地址和端口号,最后记得保存即可。
现在,可以自由地访问网络啦,如果要需要连接,那就在小地球处点击一些我们自己设的代理名称,如果不想要,那就点击Direct Connection
。
缺点
现在还没实现在虚拟机上使用pac文件,有了这个文件,访问网站就不用自己频繁切换了_(:3」∠)_
附加:安装输入法
我选用的是google的输入法,输入以下命令
1 | sudo apt-get install fcitx |
在弹出的im-config
窗口后,点击确认,然后选择fcitx框架,即可完成