服务器IP检测在移动端与桌面端出现差异,通常是因为两端走了不同的网络出口或不同的DNS解析结果。要确认差异,最直接的做法是:在同一个Wi-Fi下,分别用手机和电脑访问同一个“显示来源IP”的页面,记录两端看到的IP,再对比是否一致。如果一致,说明出口相同;如果不一致,说明至少有一端经过了代理、分流或运营商NAT。多人协作时,把两端IP、网络类型、时间点一起记录,才能避免反复返工。
协作场景下最容易返工的原因,是每个人只交一句“我这边IP不对”。可验收的交付物应当包含四项:设备类型、网络环境、检测到的IP、检测时间。缺任何一项,别人都无法复现。
验收标准可以定为:同一网络下两端IP一致,或差异能被明确解释为代理、双栈或分流策略。解释不清的差异,一律按未完成处理。
按下面顺序执行,每步都记录结果,不要跳步:
curl -4 ifconfig.me 与 curl -6 ifconfig.me,分别看IPv4和IPv6出口。判断规则:Wi-Fi下两端一致、移动数据下不同,属于正常的运营商出口差异;同一Wi-Fi下两端不同,优先怀疑代理或分流;只有IPv6不同而IPv4相同,说明是双栈出口差异,不是故障。
IP出口一致,不代表域名解析到的服务器IP一致。移动端和桌面端可能使用不同的DNS,导致解析结果不同。检查方法是两端分别查询同一域名的A记录和AAAA记录,比较返回的IP集合。
nslookup 域名 或 dig 域名。如果解析结果不同但都能正常访问,属于CDN就近调度,不必当成问题;如果某端解析到无法连接的IP,才需要进一步排查。
不是所有差异都要修。可以接受的包括:移动数据与Wi-Fi出口不同、CDN按地区返回不同节点、IPv4与IPv6并存。必须处理的是:同一网络下两端IP不同且无法解释、某端解析到不可达IP、代理关闭后仍显示异常出口。
责任划分建议:网络环境由测试者本人确认,代理与分流策略由配置负责人确认,DNS与解析由运维或域名负责人确认。每项结论都要附上原始记录,而不是口头描述。
先建立一份共享记录表,字段固定为设备、网络、IPv4、IPv6、时间、是否开代理。让每位协作者按同一格式填写一次移动端和桌面端结果,再对照本文的判断规则标注“可接受”或“待排查”。这样差异是否真实存在,一次就能看清。