有些时候,启动的一些前端服务需要请求国外资源。我们在电脑挂着VPN,在终端的内容依旧不能访问相关网络。即便ClashX提供命令给终端提供工具,前端开的通过终端开的服务也不支持。此时我们就需要Proxychains-ng服务的支持了

本来用brew install proxychains-ng 就可以了的,但是受限于Mac的环境,brew安装的proxychains-ng不能正常使用。所以还得本次从源码开始编译!

Proxychains-ng下载地址:https://github.com/rofl0r/proxychains-ng/releases/tag/v4.16

Mac M系列芯片需要关闭SIP模式才能使用proxychains-ng,教材在:https://www.zanglikun.com/14963.html

常规系统安装proxychains-ng(Apple 芯片必须此方式)

我把官方的README.md文件拿来,不傻的都能看懂


  # needs a working C compiler, preferably gcc
  ./configure --prefix=/usr --sysconfdir=/etc
  make
  [optional] sudo make install
  [optional] sudo make install-config (installs proxychains.conf)

  if you dont install, you can use proxychains from the build directory
  like this: ./proxychains4 -f src/proxychains.conf telnet google.com 80

Mac M芯片安装proxychains-ng

解压压缩包并进入文件夹

# 这里我是模拟的命令,你可以直接解压,然后在终端进入解压后的文件夹
unzip proxychains-ng-4.16.zip && cd proxychains-ng-4.16

第一次编译 arm64e 环境

cd proxychains-ng-4.16
make clean
CFLAGS="-arch arm64e" LDFLAGS="-arch arm64e" ./configure
make

# 创建bak文件,将arm64e环境编译的文件带过去
mkdir bak
cp libproxychains4.dylib ./bak

第二次编译 也是arm64e环境

make clean
CFLAGS="-arch arm64e" LDFLAGS="-arch arm64e" ./configure
make

# 复制文件过去
cp libproxychains4.dylib ./bak

第三次编译 arm64环境

make clean
CFLAGS="-arch arm64" LDFLAGS="-arch arm64" ./configure
sudo make install

使用install.sh拷贝./bak/libproxychains4.dylib 到/usr/local/lib/目录

sudo ./tools/install.sh -D -m 644 bak/libproxychains4.dylib /usr/local/lib/libproxychains4.dylib

参考于:https://blog.csdn.net/sanqima/article/details/123158915

修改Proxychains-ng的配置文件

sudo vi /etc/proxychains.conf

一般只需要修改最下面文件即可,比如我本地ClashX的代理端口是:7890

最后一个配置填入(修改 socks5那个就行):

[ProxyList]
# add proxy here ...
# meanwile
# defaults set to "tor"
socks5 127.0.0.1 7890

由于本教程是做本地搭建ChatGPT-Next-Web需要用的:我在附上额外修改这个前端项目所需的配置文件

原本配置文件是注释掉的,放开注释即可!

使用命令

# 正常命令是 
curl cip.cc

# 使用proxychains-ng如下
proxychain4 curl cip.cc

试验(这里文章在我实际操作有略微出入,建议:开启的VPN的全局模式。终端访问无论如何是都不会走VPN的(这点是系统底层,VPN无法操作无可厚非)。域名对本机的VPN来说,如果不开启VPN全局模式,而是规则模式,那么VPN可走国内,也可走国外。最终会导致:开启proxychain4访问,VPN访问cip.cc 不一定走外国IP访问,但是VPN内部规则配置的www.google.com 一定是走国外的。所以下面实验建议开启全局尝试!)

zanglikun@zanglikundeMacBook-Pro ~ % curl cip.cc
IP	: 49.77.58.136
地址	: 中国  江苏  南京
运营商	: 电信

数据二	: 江苏省南京市 | 电信

数据三	: 中国江苏省南京市 | 电信

URL	: http://www.cip.cc/49.77.58.136


zanglikun@zanglikundeMacBook-Pro ~ % proxychains4 curl cip.cc
[proxychains] config file found: /etc/proxychains.conf
[proxychains] preloading /usr/local/lib/libproxychains4.dylib
[proxychains] DLL init: proxychains-ng 4.16
[proxychains] Strict chain  ...  127.0.0.1:7890  ...  cip.cc:80  ...  OK
IP	: 61.224.72.85
地址	: 中国  台湾  台中市
运营商	: cht.com.tw

数据二	: 台湾省台中市 | 中华电信

数据三	: 中国台湾省 | 中华电信

URL	: http://www.cip.cc/61.224.72.85

完结 ✿✿ヽ(°▽°)ノ✿

特殊说明:
上述文章均是作者实际操作后产出。烦请各位,请勿直接盗用!转载记得标注原文链接:www.zanglikun.com
第三方平台不会及时更新本文最新内容。如果发现本文资料不全,可访问本人的Java博客搜索:标题关键字。以获取全部资料 ❤