DNS и TLS работают полностью независимо друг от друга.
TLS используется, помимо прочего, например, для шифрования, для проверки личности сервера по его полному доменному имени (Полное доменное имя). Это делается путем проверки того, может ли рассматриваемый сервер предоставить сертификат, содержащий полное доменное имя, подписанное доверенным центром сертификации (CA).
DNS используется для преобразования имен хостов в IP-адреса, чтобы устанавливать сетевые соединения (например, соединения TCP) на нижнем уровне. То, как происходит это разрешение, полностью прозрачно для других компонентов, таких как TLS. Не имеет значения, включает ли разрешение имен A
, AAAA
или упомянутую запись CNAME
- в нашем контексте вход всегда представляет собой одно имя хоста, выход всегда - один (или более) IP-адрес. Промежуточные результаты, такие как сопоставления CNAME
, по существу отбрасываются после выполнения разрешения имени.
Это означает, что клиент TLS всегда использует полное доменное имя, первоначально запрошенное пользователем, независимо от любых сопоставлений CNAME
, для проверки сертификата. Способ представления действительного сертификата зависит от сервера - придерживаясь вашего примера, сервер за полным доменным именем mysite.com
должен будет представить сертификат, действительный для example.com
, чтобы клиент мог его принять. Как генерируется закрытый / открытый ключ этого сертификата и используется ли он совместно с другими сертификатами или серверами,