一、先看看你的代理设置是不是埋了坑
很多人以为在系统设置里勾选代理就完事了,结果发现浏览器能走代理,终端死活不认账。这时候要分清楚系统级代理和应用级代理的区别。Ubuntu的图形界面设置只对部分图形应用生效,像终端里的wget、apt这些命令根本不吃这套。
举个栗子:你填好了神龙海外代理IP提供的地址(比如127.0.0.1:8080),但执行curl ipinfo.io还是显示本地IP。这说明终端根本没走代理,这时候得用下面这个命令验证环境变量:
echo $http_proxy
如果返回空值,说明终端压根没认你的图形界面设置,得手动配置环境变量。
二、环境变量要这样玩才有效
临时生效的配置方法(重启后失效):
export http_proxy="http://代理IP:端口" export https_proxy="http://代理IP:端口"
要是用神龙海外代理IP的认证账号,记得把格式改成:
export http_proxy="http://用户名:密码@代理IP:端口"
想永久生效的话,得把这些配置写进~/.bashrc或者/etc/environment文件。这里有个新手必踩的坑:修改完配置文件后必须执行这个命令才能生效:
source ~/.bashrc
三、有些程序就是头铁不认代理
遇到这种情况别慌,先看这张表:
| 程序类型 | 解决方案 |
|---|---|
| Chrome浏览器 | 检查chrome://settings里的系统代理选项 |
| APT包管理器 | 修改/etc/apt/apt.conf文件 |
| Docker容器 | 要单独配置daemon.json |
| Java应用 | 需要加JVM启动参数 |
重点说说APT的配置方法,在/etc/apt/apt.conf.d/目录下新建个文件,比如叫proxy.conf,内容这么写:
Acquire::http::Proxy "http://代理IP:端口"; Acquire::https::Proxy "http://代理IP:端口";
四、DNS泄漏这个隐形杀手
就算流量走了代理,DNS查询可能还在裸奔。用这个命令检测:
nslookup example.com
如果返回的服务器地址是本地ISP提供的,说明DNS泄漏了。这时候建议使用神龙海外代理IP提供的DNS-over-HTTPS功能,或者在系统设置里手动指定DNS服务器。
五、选对代理服务商很重要
市面上很多代理IP存在这些毛病:
- IP被目标网站拉黑
- 连接时不时抽风
- 认证方式不兼容Linux
神龙海外代理IP在这方面做得比较到位,他们的动态端口绑定技术能自动适配各种系统配置,而且支持SOCKS5和HTTP双重协议。特别是对Ubuntu用户来说,他们提供的一键环境变量生成器特别实用,能自动生成符合shell语法的代理配置命令。
QA常见问题速查
Q:为什么设置了代理,ping命令还是直连?
A:ping走的是ICMP协议,普通HTTP代理管不着,需要搭配或者隧道技术(注意这里不展开讲)
Q:终端里部分命令走代理,部分不走怎么办?
A:检查是否有的命令用了sudo权限,这时候需要给root用户单独配置环境变量
Q:怎么验证代理是否真的生效?
A:推荐用这两个命令组合检测:
curl -x http://代理IP:端口 ipinfo.io
curl ipinfo.io
Q:有没有适合小白的解决方案?
A:建议直接使用神龙海外代理IP的智能路由模式,他们的客户端会自动处理系统代理配置,还能智能分流国内外流量。
全球领先国外代理IP服务商-神龙海外代理
使用方法:注册账号→联系客服免费试用→购买需要的套餐→前往不同的场景使用代理IP

