很多人配好代理IP之后仍然看到本地的结果,原因藏在域名解析这一步。访问一个网址,机器要先把它翻译成地址,再发请求。这个翻译发生在哪里,决定了最终请求从哪里出去,也决定了代理IP有没有真正起作用。
翻译发生在哪一步?
有两种情况:一种是在你的机器上先翻译好,再拿着结果去找入口转发;另一种是把网址原样交给入口,让入口那一侧去翻译。两种做法看起来差别不大,实际结果可能完全不同,因为翻译的地点变了,后面的路径也跟着变。代理IP在这两步里的位置不一样,效果自然不一样。
为什么会看到本地的结果?
因为有些请求在发出之前就已经被本地解析处理过了,比如本地有缓存、或者某类流量没有走代理通道。表现就是:查出口地址明明变了,但打开某些页面看到的还是本地内容。代理IP配置正常,但部分流量没被覆盖,这是一个典型的「配了但没全生效」的情况。
怎么确认它真的覆盖到了?
用两个不同类型的目标分别验证:一个普通网页,一个接口请求,两边都确认出口地址一致,才算覆盖完整。只验证其中一种,很容易漏掉没走通道的那部分。代理IP的验证宁可多花几分钟做两类,也不要事后花半小时猜。
「出口地址明明变了,为什么结果还是本地的?」
- 确认本地是否有解析缓存
- 确认该类型流量是否被通道覆盖
- 用网页和接口两类目标分别验证
- 必要时清缓存后再测一次
需要注意的是:解析缓存不只在浏览器里,系统和部分软件也会缓存,验证前把这几处都清一遍,结果才可信。
覆盖完整,代理IP才算真的生效。
