为什么查询结果显示的是 CDN,而非源站
访客
查询该域名
CDN 边缘节点
104.21.x.x
DNS 返回的就是它
源站服务器
真实 IP,从不暴露
什么是反向代理?DNS 与 Web 实用指南
反向代理是代表一台或多台后端服务器接收请求,并将其转发到相应目的地的服务器。在访客看来,代理往往就是公共端点;浏览器并不会直接连接应用服务器。反向代理可以终止 HTTPS、按主机名或路径路由请求、均衡流量、缓存响应、压缩内容,并应用安全控制。DNS 通常会把公共主机名指向代理,或指向其前端由服务商管理的地址。随后,代理再用自己的路由配置去访问上游应用。
反向代理与正向代理
正向代理代表客户端行事:客户端通过它发送请求以访问外部服务,往往出于策略、隐私或网络访问方面的原因。反向代理代表服务器行事:外部客户端连接到它,由它把请求转发给后端服务。因此,单说“代理”这个词是有歧义的。在网站架构中,反向代理通常对外呈现公共服务端点,并隐藏后端池的细节。它可以在同一套基础设施上路由多个域名,并把不同的路径导向不同的应用,同时只保留一个公共连接点。
| 功能 | 反向代理可能提供的帮助 |
|---|---|
| TLS 终止 | 在边缘处理证书和 HTTPS |
| 路由 | 根据主机或请求路径选择后端 |
| 负载分配 | 在已配置的上游之间分发请求 |
| 缓存 | 无需联系源站即可提供符合条件的响应 |
| 访问控制 | 在转发之前应用请求规则 |
DNS 和反向代理解决的是连接的不同部分。DNS 把主机名映射到公共地址或别名。客户端一旦连接,代理就会根据 HTTP 主机信息、TLS 服务器名称指示以及自己的配置,来选择正确的服务。这就解释了为什么直接请求一个裸 IP 可能会显示默认页面或证书警告,即使域名本身工作正常:请求中可能没有包含预期的主机名上下文。同样,更改 DNS 并不会自动创建相应的代理路由,也不会自动申请证书。两层必须在主机名和目的地上保持一致。
代理造成故障的常见方式
域名可能解析正确,但反向代理指向了一个已失效的上游、使用了错误的端口,或拒绝了它未被配置去服务的主机名。如果边缘缺少有效证书,或加密的上游配置有误,就可能出现 TLS 故障。当后端过载或不可达时,代理也可能返回超时。反过来,如果 DNS 把客户端引向了错误的代理地址,一个健康的应用也会看起来不可用。请先记录 DNS 应答,再依次检查 HTTP 响应、TLS 连接、代理日志和后端健康状况。
- 确认 DNS 指向预期的公共代理端点。
- 核实代理中针对该域名有主机规则以及健康的上游。
- 当 HTTPS 失败时,同时检查边缘和上游的 TLS 设置。
- 利用代理日志来区分路由错误和应用错误。
- 不要以为 IP 查询就能揭示后端服务器。
安全与运维边界
反向代理可以减少后端服务的直接暴露,但除非配置并维护了访问规则,它并不会自动成为安全边界。在架构允许的情况下,源站应当只接受来自预期路径的流量。管理界面在没有适当认证的情况下,不应放在公共路由上。请及时为代理软件打补丁,限制管理访问,并验证转发的头部,因为代理成了客户端和上游信息的可信解释者。请记录由哪个团队负责 DNS、代理规则、证书和后端,这样在事件响应中,就不会因为各组都以为是其他层的责任而陷入停滞。
关于公共边缘与后端之间的关系,请阅读什么是源站服务器。关于全球代理网络,请参阅 CDN 如何使用 DNS。公开的域名转 IP 检查可以确认 DNS 给出的地址,但反向代理的路由和应用的健康状况,则需要各自的运维检查。把这些职责分开,调试会更精确,也避免把一个地址结果误当作完整的基础设施诊断。
明确代理规则的归属
反向代理处在一个关键的交接点上,所以请记录由谁负责 DNS、主机路由、证书、上游定义和访问策略。一项变更可能在某一层是正确的,却仍因另一层没有更新而失败:DNS 指向了代理,但代理缺少虚拟主机;路由存在,但证书是为另一个名称签发的;或者上游是健康的,但防火墙拦截了代理所在的子网。请为每个生产主机名保留一张简单的路径图和一个已知正常的请求。在故障期间,请使用相同的请求时间戳或关联 ID,来比对公共 DNS 应答、代理访问日志、上游健康状况和应用日志。
需要查看某个域名的公网 DNS 地址?使用 Domain IP Lookup 工具。
相关阅读
三种角色,往往来自三家不同的公司
DNS 委派如何在注册商与服务商之间运作
了解父区域如何把域名委派给权威域名服务器,以及为什么在错误的 DNS 服务商处修改记录不会对公网产生任何影响。
两种寻址方案,并行运行
IPv4
192.0.2.10
32 位,约 43 亿个地址,已耗尽
IPv6
2606:4700::6810:84e5
128 位,约 3.4×10³⁸ 个地址
IPv4 地址耗尽与缓慢的 IPv6 过渡
全球新的 IPv4 地址早在多年前就已耗尽。本文说明此后究竟是什么维持着一切运转,以及为什么过渡至今仍未完成。
值得告警的信号
监控大型域名组合的 DNS 变更
靠手工盯着单个域名的 DNS,面对几十甚至上千个域名时根本行不通。下面介绍一种及早发现变更与悬空记录的实用方法。