当前位置:   article > 正文

mac、windows 设置终端代理

终端代理

摘自:设置mac终端走代理

使用包管理器的命令下载github的包时,会出现卡住的情况,大多是因为GFW的问题,这时候就需要给命令行设置代理

MacOS

执行以下两条命令。在终端关闭之前有效。端口在ssr里看

export http_proxy="http://localhost:port"
export https_proxy="http://localhost:port"
  • 1
  • 2

还有一种更有意思的方式
~/.zshrc中添加以下内容

# 为终端设置代理
alias proxy='export all_proxy=socks5://127.0.0.1:port'
alias unproxy='unset all_proxy'

# 为终端设置http代理
alias httpproxy='export http_proxy=http://localhost:1087 && export https_proxy="http://localhost:1087"'
alias unhttpproxy='unset http_proxy && unset https_proxy'
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

这样在终端中使用proxy、httpproxy命令就可以打开代理,使用unproxy、unhttpproxy命令就可以关闭代理

然后在终端运行以后,想通过ping google.com来测试现在终端是否可以连接外网,结果发现不论怎么折腾,死活就是ping不通。
原来,系统只提供了http协议和socks协议的代理,http在应用层,socks在会话层。但是ping命令采用icmp协议来检测网址是否可达,icmp在网络层。上层无法代理下层,所以ping也就无法被代理

但是可以通过curl来测试:curl https://www.google.comcurl https://www.youtube.com等来检测是否成功代理,curl是应用层协议库,所以可以使用代理

附:通过代理上网如何解决 Ping 的问题?
在这里插入图片描述

Windows

cmd,powershell,git-bash设置代理的方式是不一样的 (因为不同shell"设置环境变量"的语法不同)

powershell

$env:https_proxy = "127.0.0.1:port"
$env:http_proxy = "127.0.0.1:port"
  • 1
  • 2

git-bash

export http_proxy='127.0.0.1:port'
export https_proxy='127.0.0.1:port'
  • 1
  • 2

cmd

set http_proxy='127.0.0.1:port'
set https_proxy='127.0.0.1:port'
  • 1
  • 2
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/336219
推荐阅读
相关标签
  

闽ICP备14008679号