诊断 Proxychains LD_PRELOAD 失败
在假定应用已使用所配置代理之前,先诊断 LD_PRELOAD 失败与拦截限制。
程序启动了,但终端提示某个 proxychains 库无法被预加载。应将此视为配置步骤失败,而不是在检查出口 IP 时可以忽略的无害警告。
Proxychains-ng 依赖已加载的库来拦截相关调用。如果该库缺失、不兼容或未被加载到进程中,程序仍可运行,但不会有你预期的拦截。
让库与进程相匹配
检查软件包实际的库位置以及可执行文件的架构。把 32 位路径写死的老旧答案并不是适用于 64 位程序的通用修复方法。不要将未经验证的预加载设置全局添加到每个 shell 会话。
Linux 动态加载器手册解释了库搜索与安全执行限制。某些进程启动情形会有意忽略或限制预加载设置。静态可执行文件也不会仅仅因为设置了环境变量就变得可被动态拦截。
项目 README 记录了该包装器受支持的模式。即使初始库成功加载,自带网络实现、使用独立辅助进程或已有运行实例的应用也可能引入其他限制。
当可用时,应用自带的原生代理设置可能是更清晰的选择。它使用应用自身预期的网络接口,而不是假定每个连接都能被外部捕获。
遇到包装器配置失败时,先停下来,确认实际启动的是什么。仅凭进程退出状态可能只说明应用运行过,并不能说明其流量走了代理。请将库加载、被拦截的调用和观察到的对外连接作为彼此独立的证据。