0%

虚拟机通过mac宿主机代理科学上网

mac的shadowsocks客户端是没有像windows版那样的局域网代理的功能的,虚拟机科学上网如果重新配置shadowsocks就太麻烦了,完全没必要,可以通过mac宿主机代理实现,方法如下:

1.安装privoxy

通过homebrew安装: homebrew install privoxy

2.配置privoxy

修改 /usr/local/etc/privoxy/config 文件:

  • 将forward-socks5t / 改成 forward-socks5t / 127.0.0.1:1080 .(1080是shadowsocks默认端口,根据自己的配置改)
  • 将listen-address 127.0.0.1:8118 改成 listen-address 0.0.0.0:1081 (最后的端口号随便改,确保没被占用就好)

终端代理

mac下终端代理:

export http_proxy=”http://127.0.0.1:1081"

export https_proxy=”http://127.0.0.1:1081"

虚拟机下将ip 127.0.0.1改成宿主机相对虚拟机的IP地址

手机代理

手机也可以走mac建的http代理,只需要处于同一无线局域网,然后将wifi的http代理设置为:

http://ip:1081

ip为mac在改局域网内的ip地址,端口号1081根据自己的配置更改

ios的话更推荐下一个Shadowrocket,直接配shadowsocks代理更方便点

PAC自动代理

以上方法都是走全局代理的,上国内网站会变慢,可以配PAC自动代理使得访问国内网站时直连不走代理:

mac的shadowsocks客户端自带了PAC文件,默认是在http://127.0.0.1:8090/proxy.pac

将其下载下来,做以下修改:

把var proxy = “SOCKS5 127.0.0.1:1080; SOCKS 127.0.0.1:1080; DIRECT;”; 修改
var proxy = “PROXY IP:PORT; DIRECT;”;

IP指mac的ip,PORT指privoxy配的端口

将修改的PAC挂在mac本地服务器(nginx、tomcat等)

最后一步,虚拟机内或者手机设置自动代理:http://IP:port/proxy.pac

IP是mac的IP,port的服务器端口