Network Infrastructure Layer

Server Name
Indication

SNI 是 TLS 协议的关键扩展,它解决了 HTTPS 在握手初期无法识别目标域名的问题,是现代 Web 虚拟主机架构的基石。

探索核心原理 阅读 RFC 文档

协议背景

在没有 SNI 之前,服务器在看到加密数据前必须先提供 SSL 证书。但由于一个 IP 可能对应多个域名,服务器无法确定该展示哪个证书。

SNI 通过在 Client Hello 中包含域名字段,完美解决了这一悖论,使得“单 IP 多证书”成为可能。

01

解决 HTTPS 的
“先鸡还是先蛋”问题

工作流解析

TLS Handshake Sequence with SNI

01. TCP Connect

连接建立

客户端与服务器 IP 完成标准的三次握手。

02. Client Hello

关键负载

客户端发送加密请求,并在扩展字段中显式指明:
"Host: sni0.com"

03. Response

证书下发

服务器根据主机名,从证书库中检索并返回匹配的加密凭据。

为什么它如此重要?

它是现代 Web 性能与成本优化的核心手段。

IPv4 资源保护

无需为每个域名申请昂贵的独立公网 IP。

虚拟主机支持

在一台物理服务器上安全地隔离成千上万个 HTTPS 站点。

Compatibility Matrix

Windows
Vista or newer
Android
3.0 (Honeycomb) +
iOS
All versions
Chrome
Since 2010