HTTPS RR in Curl
a year ago
- #HTTPS
- #DNS
- #Security
- RFC 9460引入了DNS中的HTTPS资源记录(RR),用于提供目标主机名的服务元数据。
- HTTPS RR可作为SRV和URI记录的替代方案,并取代HSTS和alt-svc头部功能。
- HTTPS RR的核心特性包括ECH(加密客户端问候)配置、ALPN列表、目标主机名、端口及IP地址。
- ECH能加密TLS握手过程中的SNI字段,使监听者无法获取实际通信目标站点。
- ALPN列表声明支持的HTTP版本,可能直接升级HTTP至HTTPS或支持HTTP/3协议。
- HTTPS RR可指定服务的备用主机名、端口及IP地址。
- curl已提供实验性HTTPS RR支持,需在编译时显式启用该功能。
- curl通过DoH(DNS-over-HTTPS)、c-ares库或结合c-ares的getaddrinfo()实现并行HTTPS RR查询。
- 当前限制包括无法运行时禁用HTTPS RR,且部分功能尚未完全实现。
- Cloudflare等站点已部署HTTPS RR,鼓励测试并提供反馈以推动改进。
- Debian实验版本现包含支持HTTPS RR的curl,但因OpenSSL和GnuTLS限制暂未实现ECH功能。