SNIHostName — SNI 호스트 이름

SNIHostName — SNI 호스트 이름

SNIHostName 클래스의 인스턴스는 서버 이름 표시(SNI, Server Name Indication) 확장에서 host_name 타입의 서버 이름을 나타내요.

출처: Java API Reference

본문

RFC 6066의 3절 "Server Name Indication"에 설명된 대로, HostName은 클라이언트가 이해하는 서버의 완전히 정규화된 DNS 호스트 이름을 포함해요. 호스트 이름의 인코딩된 서버 이름 값은 끝에 점이 없는 ASCII 인코딩을 사용하는 바이트 문자열로 표현돼요. 이는 RFC 5890에 정의된 A-labels(응용을 위한 국제화 도메인 이름의 ASCII 호환 인코딩 형태)를 통해 국제화 도메인 이름(IDN)을 지원해요.

SNIHostName 객체는 변경 불가능(immutable)해요. SNIHostNameSNIServerName을 상속해요.

생성자와 메서드를 정리하면 다음과 같아요.

  • SNIHostName(byte[] encoded) — 지정된 인코딩 값으로 SNIHostName을 만들어요. IllegalArgumentException이 발생할 수 있어요.
  • SNIHostName(String hostname) — 지정된 호스트 이름으로 만들어요.

메서드로 getAsciiName()(US-ASCII 호환 호스트 이름 반환), createSNIMatcher(String regex)(SNIHostName용 매처 생성) 등이 있어요.

더 알아보기 (Learn more)