# 科学上网-让终端走代理

## 介绍

在终端环境下，常会遇到要下载某个文件巨慢，甚至无法连接,急需一个方案来拯救.

## 过程

1.  临时

    ```shell
    # 协议填http或socks5
    export http_proxy="http://127.0.0.1:10809"
    export https_proxy="https://127.0.0.1:10809"
    export http_proxy="socks5://127.0.0.1:10808"
    export https_proxy="socks5://127.0.0.1:10808"
    # 让环境生效
    source /etc/profile
    # ping是ICMP报文，代理不转发
    # 检查终端是否处于代理状态
    curl cip.cc 
    ```
2.  或使用 `alias`

    ```shell
    alias setproxy='export ALL_PROXY=socks5://127.0.0.1:10808'
    alias unsetproxy='unset ALL_PROXY'
    ```

## 在windows WSL中配置代理

```shell
# 查找本机ip 最后的nameserver就是ip
cat /etc/resolv.conf
# 协议填http或sock
export http_proxy="http://ip:port"
export https_proxy="http://ip:port"
# 让环境生效
source /etc/profile
```

## 在windows CMD中配置代理

```shell
# 协议填http
set http_proxy=http://127.0.0.1:10809
set https_proxy=http://127.0.0.1:10809

# ps:一定要用cmd命令行，千万别用powershell !!!
# 简易测试命令：curl https://www.google.com（别用ping）
```

## 参考

1. [Linux 让终端走代理的几种方法](https://zhuanlan.zhihu.com/p/46973701)
2. [windows终端翻墙，简易方式](https://gist.github.com/dreamlu/cf7cbc0b8329ac145fa44342d6a1c01d)
