SNIMatcher — SNI 매처

SNIMatcher — SNI 매처

SNIMatcher 클래스의 인스턴스는 SNIServerName 인스턴스에 대해 일치 연산을 수행하는 매처를 나타내요.

출처: Java API Reference

본문

서버는 서버 이름 표시(SNI) 정보를 사용해 특정 SSLSocket 또는 SSLEngine 인스턴스가 연결을 수락해야 하는지 결정할 수 있어요. 예를 들어 하나의 기본 네트워크 주소에 여러 "가상" 또는 "이름 기반" 서버가 호스팅될 때, 서버 애플리케이션은 SNI 정보로 이 서버가 클라이언트가 접근하려는 정확한 서버인지 결정할 수 있어요.

이 클래스의 인스턴스는 특정 타입(예: 호스트 이름)의 허용 가능한 서버 이름을 검증하는 데 사용될 수 있어요. SNIMatcher 객체는 변경 불가능하며, 서브클래스는 인스턴스 생성 후 상태를 바꿀 수 있는 메서드를 제공하지 말아야 해요.

주요 메서드를 정리하면 다음과 같아요.

  • protected SNIMatcher(int type) — 지정된 서버 이름 타입으로 매처를 만들어요.
  • final int getType() — 이 매처 객체의 서버 이름 타입을 반환해요.
  • abstract boolean matches(SNIServerName serverName) — 주어진 SNIServerName을 일치시키려 시도해요.

SNI 기반 서버 라우팅을 구현할 때 사용해요.

더 알아보기 (Learn more)