如何让Ubuntu上的Node应用在PIA VPN分流模式下绕开VPN
Node.js应用绕开PIA VPN失败的问题
我的Ubuntu笔记本作为Web服务器运行,已完成端口转发至内网IP,公网IP也已配置在域名DNS记录中。服务器基于Node.js部署,通过sudo pm2启动以维持持久化实例,内部使用express、http及https模块。
出于隐私需求,我需要实现:除该Web服务器的入站/出站流量外,其余所有应用流量均通过PIA VPN传输。PIA支持分流隧道功能,可按应用选择接入或绕开VPN,我的理想配置是:默认所有应用走VPN,仅Node.js相关流量绕开VPN。
我尝试为以下二进制文件添加「绕开VPN」规则,其余应用设置为「使用VPN」:
/usr/bin/node/usr/bin/pm2/usr/bin/npm
但配置后,Node应用的所有出站请求均失败。例如执行以下代码时:
http.get({host: 'api.ipofy.org', port: '80', path: '/'})
本该返回公网IP,却抛出错误:
Error: connect ECONNREFUSED 0.0.0.0:80
如果设置默认所有应用绕开VPN,仅为特定应用(如浏览器)启用VPN,Node应用可正常运行,但我更倾向于默认所有应用走VPN、仅Node绕开的配置。我想知道是否还需要为其他二进制文件添加「绕开VPN」规则,或者有其他可行的实现方案。
内容的提问来源于stack exchange,提问作者jake
相关产品推荐
相关产品推荐

