香港服务器跨境部署:入口IP和出口IP怎么区分?
网站接上 CDN 后,海外 API 又要求登记来源 IP 白名单,这时应该提交哪个地址?如果直接把域名解析出来的 IP 交给对方,就可能把网站访问入口与应用对外请求的出口混在一起。香港服务器接收访客请求时,和主动连接海外服务时,公网地址可能相同,也可能因 CDN、NAT 或额外代理而不同。确认 IP 条件前,先查清每段连接由谁发起、经过哪里。
网站入口IP是访客连接的目的地址
访客打开网站时,浏览器连接域名对应的网络入口。直连香港源站时,该地址可能是服务器公网地址;接入 CDN、负载均衡或反向代理后,则要按实际前置服务判断。
Cloudflare 官方 DNS 文档说明,开启代理的记录返回其 Anycast 地址,而非源站地址。[1] 网站可以部署在香港,浏览器却先连接 CDN 网络。因此,域名解析结果不能直接用来判断香港应用调用外部 API 时的来源地址。
接口白名单要确认应用实际使用的出口
香港服务器里的应用调用海外 API 时,会向外建立另一条连接。接口服务识别到的来源 IP,取决于这条连接经过的网络路径。直接使用公网地址出站,与经过 NAT 网关、SNAT 或应用代理出站,结果可能不同。
AWS 公有 NAT 网关通过互联网网关出站时,会把私有实例的来源地址映射为网关关联的弹性 IP。[2] 这是地址转换的示例,具体香港服务器是否使用 NAT,需要单独确认。
如果海外服务要求固定来源 IP,应在真实应用环境里发起测试请求,请接口提供方确认其白名单实际识别到的地址,再与己方 NAT 和代理配置核对。不要只提交服务器内网地址,或把 CDN 的网站入口地址当成业务出口。
测试应覆盖实际进程、代理配置及使用中的 IPv4、IPv6 路径。命令行查询只说明该次请求的出口,不能代表经其他代理或网关发出的业务请求。
同一网站里的请求也可能由不同设备发起
网站页面由香港服务器提供,并不代表页面涉及的所有外部请求都由这台服务器发出。浏览器也可以直接向其他服务请求资源或数据。[3] 下面按常见动作区分需要检查的地址。
|
业务动作 |
连接发起方 |
应核对的地址 |
|
访客打开网站 |
访客浏览器 |
访问的目的地址是源站、CDN,还是其他代理入口 |
|
后台程序调用海外 API |
香港应用所在环境 |
接口提供方识别到的公网来源 IP |
|
网页脚本直接请求第三方接口 |
访客浏览器 |
通常核对访客网络的出口;如有其他代理,按实际路径判断 |
核对 IP 前,先查清接口是在后台调用,还是由浏览器直接请求;两者不能套用同一份服务器出口信息。
增加IP之前先明确它解决什么问题
业务需要固定来源白名单时,应确认出口是否固定、是否由多个业务共用,以及变更时如何通知。增加几枚用于网站访问的 IP,不代表应用出站会自动使用它们;还需要相应的地址绑定、路由、NAT 或代理配置。
如果只是给多个域名分别配置 HTTPS,也不必直接按“一张证书一个 IP”采购。NGINX 官方文档说明,支持 SNI 的客户端与服务端可以在同一 IP 上按域名选择证书;旧式或特殊客户端则应单独确认兼容性。[4]
“原生”“独立”等套餐标签,也应请服务商解释具体含义。接口有地区或地址类型要求的,按接口方规则验证。
租用前确认地址并留下一次可复核的测试
将香港服务器用于跨境网站或 API 入口时,可以把以下信息交给服务商和开发人员共同确认。
域名是否经过 CDN、负载均衡或反向代理,源站实际使用哪个地址。
应用访问外部服务时是否经过 NAT 或额外代理,接口方识别到哪些来源 IP。
业务所需出口是否固定,迁移、扩容或故障切换时是否可能改变,变更前如何通知。
需要登记白名单的服务有哪些,是否分别验证过实际使用的 IPv4 与 IPv6 路径。
保留测试时间、调用环境、接口提供方确认结果及相关配置说明,后续更换节点或调整网络时按同一路径复测。
咨询 SellBGP 香港服务器时,可以直接说明是否接入 CDN、需要连接哪些外部服务,以及对固定出口和地址变更的要求,再确认具体方案。关于香港节点适合承担的业务层,可继续阅读本站的亚太业务前置节点部署说明。