type
status
date
Jun 21, 2023 09:35 AM
slug
summary
tags
category
icon
password
2020.05.01 2020.11.16 奇技淫巧 747
2020.05.01 2020.11.16 奇技淫巧 747
目录
终端环境默认是不走代理的,但有时比如 git 等终端环境下的程序也有走代理的需要,下面记录一下如何设置使终端环境也走代理。
要测试代理是否是联通的可以通过 curl -v google.com 来测试。
也可以通过 curl cip.cc
看到网上说通过
curl -I http://www.google.com
可能会遇到 403
问题,使用 Google
域名验证时需要注意下这个情况§Windows 10
测试是否走代理:
返回 IP 如果是代理服务器 IP 说明当前终端下已经走代理了。
效果持续到当前 CMD 窗口关闭。
注意:
- 测试终端环境下是否走了代理,使用
ping google.com
是不行的,因为 ping 命令既不是 HTTP 也不是 HTTPS 协议,而是 ICMP 协议,始终是不走代理的,如果要 ping 也走代理,那么需要一些比较高级的方法,比如配置透明代理之类的,本文就不涉及了。
§Linux
§ 临时方式
类似 Windows ,只是命令稍有变化,测试方法和持续时间和上文 Windows 中的配置相同。
这种方法每次打开终端都要输一遍长长的指令,十分不便,下面介绍一个更加灵活一点的方法。
§ 进阶方式
可以写一个脚本,里面有两个函数,开启代理(proxy_on)和关闭代理(proxy_off),并且默认打开终端时代理是关闭的,根据需要来一句命令切换开关。
新建一个 shell 脚本(以建立在
/root/
目录下为例):粘贴上以下内容:—> 这里 127 替换为我的 GFW 路由 192.168.7.2
其中代理的地址和端口需要自己修改,如果需要终端默认开启代理,那么把最后一行改成
proxy_on
。编辑终端的配置文件,默认在
~/.bashrc
,如果是 zsh 那么配置文件在 ~/.zshrc
,在最后加上:保存后执行
或(如果 shell 是 zsh)
使配置生效即可。
使用进阶方式的优点:
- 可以控制是否默认开启代理;
- 每新建一个终端会话,都可以通过执行
proxy_on
或proxy_off
来开关代理,并且每个会话的代理设置是独立的,真正做到窗口级的控制;
- 如果你在执行某个命令时不想使用代理,那么执行
proxy_off
临时关闭即可。
参考链接:
- 命令行走代理的便捷方式 - 掘金 > 本文由简悦 SimpRead 转码