让Linux终端和Windows PowerShell走代理

2021/01/18 Net Linux Windows 共 899 字,约 3 分钟

当你在用vcpkg下载包或者在终端运行git clone时,有时网速特别慢。vpn类软件虽可实现全局代理,但似乎对终端或powershell无效,如何给这些系统窗口设置代理呢?


前言

代理是通过客户端与服务端通信,传输服务端能够访问到的资源文件,再由服务端客户端通信返回给客户端,从而间接访问服务端能访问的资源。

参考文献

WIN10给powershell设置全局代理

Linux 让终端走代理的几种方法

主要步骤

0.一个代理软件

我使用的代理服务是相对价廉物美的心阶云,在其用户界面提供了支持的客户端,在Windows端我选用了V2RayN,在Linux端我探索了QV2Ray

image-20210119091720199

1.Windows端的实现

  1. 在代理软件下方查看域名端口

image-20210119092510075

  1. 打开powershell(在目标路径下按住shift,鼠标右键,选择“在此处打开powershell窗口”即可)
  2. 依次输入如下两行命令$env:HTTP_PROXY="http://域名:端口"$env:HTTPS_PROXY="http://域名:端口。比如:$env:HTTP_PROXY="http://127.0.0.1:10809"即可。

2.Linux端的实现

在linux中可以使用环境变量,许多命令行程序(如 curlwget)会使用 <PROTOCOL>_PROXY 环境变量提供的代理。

首先sudo gedit ~/.bashrc,在最后添加

export ALL_PROXY=socks5://127.0.0.1:xxxx(软件中查看的端口号)

source ~/.bashrc,即可实现终端走代理。

3.无效情况

对于部分网址,挂了代理依旧连不上,视情况特殊对待。

比如raw.githubusercontent.com,亲测无效,上不去,在配置ROS的时候还是必须的。因此可以使用修改hosts的方案:在/etc/hosts中新增

151.101.84.133  raw.githubusercontent.com

又如s3.amazonaws.com,网上说的改hosts的方法也亲测无效,但在配置realsense sdk的时候是必须的。最终使用手机流量+usb网络共享解决。

温馨提示:如果显示NETWORK ERROR,请使用https://keenster.cn方式打开本站

Search

    Table of Contents