终端环境默认是不走代理的,但有时比如 git 等终端环境下的程序也有走代理的需要,下面记录一下如何设置使终端环境也走代理。
§Windows 10
|
|
测试是否走代理:
|
|
返回 IP 如果是代理服务器 IP 说明当前终端下已经走代理了。
效果持续到当前 CMD 窗口关闭。
注意:
- 测试终端环境下是否走了代理,使用
ping google.com
是不行的,因为 ping 命令既不是 HTTP 也不是 HTTPS 协议,而是 ICMP 协议,始终是不走代理的,如果要 ping 也走代理,那么需要一些比较高级的方法,比如配置透明代理之类的,本文就不涉及了。
§Linux
§临时方式
|
|
类似 Windows ,只是命令稍有变化,测试方法和持续时间和上文 Windows 中的配置相同。
这种方法每次打开终端都要输一遍长长的指令,十分不便,下面介绍一个更加灵活一点的方法。
§进阶方式
可以写一个脚本,里面有两个函数,开启代理(proxy_on)和关闭代理(proxy_off),并且默认打开终端时代理是关闭的,根据需要来一句命令切换开关。
新建一个 shell 脚本(以建立在 /root/
目录下为例):
|
|
粘贴上以下内容:
|
|
其中代理的地址和端口需要自己修改,如果需要终端默认开启代理,那么把最后一行改成 proxy_on
。
编辑终端的配置文件,默认在 ~/.bashrc
,如果是 zsh 那么配置文件在 ~/.zshrc
,在最后加上:
|
|
保存后执行
|
|
或(如果 shell 是 zsh)
|
|
使配置生效即可。
使用进阶方式的优点:
可以控制是否默认开启代理;
每新建一个终端会话,都可以通过执行
proxy_on
或proxy_off
来开关代理,并且每个会话的代理设置是独立的,真正做到窗口级的控制;如果你在执行某个命令时不想使用代理,那么执行
proxy_off
临时关闭即可。
参考链接: