配置终端代理
一般 Linux 系统上的终端不会共享使用全局代理,需要额外配置
终端不走代理主要是终端不读取系统的配置,只认终端的变量,我们可以直接命令行设置代理,也可在~/.bashrc
或~/.zshrc
文件中添加代理设置
临时配置:命令行设置
- http 代理
export http_proxy="http://127.0.0.1:1087/"
export https_proxy="https://127.0.0.1:1087/"
- socks 代理
export http_proxy="socks5://127.0.0.1:1080/"
export https_proxy="socks5://127.0.0.1:1080/"
- 全部走代理
export all_proxy="socks5://127.0.0.1:1080/"
永久配置:添加到~/.bashrc
或~/.zshrc
文件
# 设置使用代理
alias setproxy="export http_proxy=http://127.0.0.1:1087/; export https_proxy=http://127.0.0.1:1087/; echo 'Set proxy successfully'"
# 设置取消使用代理
alias unsetproxy="unset http_proxy; unset https_proxy; echo 'Unset proxy successfully'"
测试代理是否生效
curl -vv https://www.github
终端代理生效后,不一定能
ping
通,因为:ping 使用的是ICMP
协议,ICMP 处于网络层(第三层),而SOCKS5
是传输层代理协议(第四层),HTTP
和HTTPS
是应用层协议(第五层或者第七层),协议层不同是无法代理的。
参考资料
- Linux 让终端走代理的几种方法
- macOS 使用了代理也无法 ping 通 google 的原因及其解决办法
更多推荐
Linux配置终端代理
发布评论