Skip to content
uencoder

SNI

SNI (Server Name Indication, RFC 6066) carries the target hostname during the TLS handshake so that multiple HTTPS virtual hosts on one IP can pick the right certificate.

Purpose

It passes the hostname in the ClientHello so a server hosting many virtual hosts can select the matching certificate.

Mechanism

The ClientHello carries an SNI extension with the target hostname, and the server returns the matching certificate from its collection. Without SNI the server can only present a default certificate, making multi-virtual-host HTTPS impractical.

Use cases

  • HTTPS virtual hosting
  • CDN multi-domain hosting
  • Cloud TLS

Related tools

References