加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_泰州站长网 (http://www.0523zz.com/)- 视觉智能、AI应用、CDN、行业物联网、智能数字人!
当前位置: 首页 > 综合聚焦 > 创业热点 > 经验 > 正文

有了这个神器后,终于可以跨越困难了!

发布时间:2021-05-29 04:31:37 所属栏目:经验 来源:互联网
导读:你是否经常有在终端下通过一些实用程序进行工作的需求呢,比如:Git 等。但是由于这些终端程序默认并不支持 Socks 5 代理或 HTTP 代理,在访问一些需要科学上网的网络服务时速度或许会非常的慢。 通常我们的解决方法就是使用环境变量 export ALL_PROXY=soc

你是否经常有在终端下通过一些实用程序进行工作的需求呢,比如:Git 等。但是由于这些终端程序默认并不支持 Socks 5 代理或 HTTP 代理,在访问一些需要科学上网的网络服务时速度或许会非常的慢。

通常我们的解决方法就是使用环境变量 export ALL_PROXY=socks5://proxyAddress:port 或者 export http_proxy=http://proxyAddress:port 给所有终端程序配置一个全局代理,这样做虽然有效但并不是最佳解决方案。

今天就给大家介绍一款神器 graftcp,graftcp 可以把任何指定的终端程序的 TCP 连接重定向到 SOCKS5 或 HTTP 代理,并且不会影响其它的终端程序。是不是很好的解决了你的痛点呢?

简介

graftcp 可以把任何指定程序(应用程序、脚本、shell 等)的 TCP 连接重定向到 SOCKS5 或 HTTP 代理。

对比 tsocks、proxychains 或 proxychains-ng,graftcp 并不使用 LD_PRELOAD 技巧来劫持共享库的 connect()、getaddrinfo() 等系列函数达到重定向目的,这种方法只对使用动态链接编译的程序有效。

对于静态链接编译出来的程序,例如默认选项编译的 Go 程序,proxychains-ng 就无效了。graftcp 使用 ptrace(2) 系统调用跟踪或修改任意指定程序的 connect 信息,对任何程序都有效。工作原理后面将会解释。 

项目地址:https://github.com/hmgle/graftcp 

安装

graftcp 在 Linux 系统内运行。graftcp-local 使用 Go 编写, Go 环境是必需的。

$ git clone https://github.com/hmgle/graftcp.git  

$ cd graftcp  

$ make 

make 执行完后,即可运行 graftcp-local/graftcp-local 和 ./graftcp。你也可以把它们都安装进系统:

$ sudo make install 

之后 graftcp-local 会随着系统启动而自动运行。

(编辑:云计算网_泰州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读