Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

라우팅 엔진 기반의 정적 HTTP 리디렉션 서비스 구성

참고:

MX 시리즈에서 차세대 서비스를 활성화한 경우 Junos OS 릴리스 19.3R2부터 HTTP 리디렉션 서비스도 지원됩니다.

MS-MPC/MS-MIC 또는 MX-SPC3 서비스 카드를 사용하는 대안으로 라우팅 엔진 HTTP 리디렉션 서비스를 구성할 수 있습니다. 벽으로 둘러싸인 정원을 방화벽 서비스 필터로 구성합니다. 벽으로 둘러싸인 정원은 서버 그룹으로, 캡티브 포털 통해 재인증할 필요 없이 벽으로 둘러싸인 정원 내의 사이트에 대한 가입자 액세스를 제공합니다. 벽으로 둘러싸인 정원 서비스 필터는 벽으로 둘러싸인 정원으로 향하는 트래픽과 벽으로 둘러싸인 정원 밖으로 향하는 트래픽을 식별합니다. 벽으로 둘러싸인 정원 외부로 향하는 HTTP 트래픽만 HTTP 리디렉션 서비스에 의해 처리를 위해 라우팅 엔진 전송됩니다. CPCD 서비스는 서비스 세트를 통해 라우팅 엔진 서비스 인터페이스와 연결됩니다.

라우팅 엔진 서비스 인터페이스는 si-접두사(예: si-1/1/0)로 식별됩니다. si-interface는 라우팅 엔진 대한 모든 리디렉션과 트래픽 및 서비스를 다시 작성합니다. si-인터페이스는 캡티브 포털 컨텐츠 전송(CPCD) 서비스를 활성화하고 활성화하려면 최대 상태와 함께 작동해야 합니다. CPCD 서비스가 활성화된 후, si-인터페이스의 작동 상태 변경은 기존 CPCD 서비스에 영향을 미치지 않습니다.

CPCD 서비스는 벽으로 둘러싸인 정원으로 향하지 않는 가입자 HTTP 요청 트래픽을 리디렉션 서버로 전송하며, 이는 리디렉션 URL로 응답합니다. 리디렉션 URL은 승인되지 않은 외부 사이트 대신 캡티브 포털 트래픽을 전송합니다. 이 캡티브 포털 벽으로 둘러싸인 정원 외부의 보호 서버에 대한 액세스 권한을 부여하기 전에 리디렉션된 가입자를 위한 인증 및 인증 서비스를 제공합니다.

리디렉션 서버는 로컬 또는 원격일 수 있습니다.

  • 로컬 리디렉션 서버 - 라우터에 상주하고 벽으로 둘러싸인 정원 내의 캡티브 포털 가입자 트래픽을 리디렉션합니다.

  • 원격 리디렉션 서버 - 라우터 뒤의 벽으로 둘러싸인 정원 안에 정책 서버와 같은 디바이스에 위치합니다. 가입자의 HTTP 트래픽 대상 주소가 원격 리디렉션 서버 주소로 다시 작성됩니다. 원격 서버는 가입자 트래픽을 벽으로 둘러싸인 정원 내부의 캡티브 포털 리디렉션합니다.

벽으로 둘러싸인 정원을 방화벽 서비스 필터로 구성

벽으로 둘러싸인 정원을 방화벽 서비스 필터로 구성할 때, 벽으로 둘러싸인 정원 내의 서버로 향하는 트래픽을 식별하고 건너뜁시다. 다른 모든 HTTP 트래픽은 벽으로 둘러싸인 정원 밖의 주소로 지정됩니다. 이 트래픽은 필터 조건과 일치하지 않기 때문에 처리를 위해 라우팅 엔진 흐릅니다.

벽으로 둘러싸인 정원에 캡티브 포털 또는 서버 목록으로 단일 서버를 포함할 수 있도록 서비스 필터를 구성할 수 있습니다.

  • 단일 서버를 캡티브 포털 벽으로 둘러싸인 정원을 구성합니다.

    1. 서비스 필터를 생성합니다.

    2. 캡티브 포털 트래픽에 대한 처리를 식별하고 건너뛰기 위한 필터 용어를 정의합니다.

      1. 캡티브 포털 대상 포트의 대상 주소를 지정하여 캡티브 포털 목적지인 트래픽에 일치하도록 필터 조건을 지정합니다.

      2. 일치하는 트래픽이 라인 카드의 처리를 건너뛰게 되도록 지정합니다.

    3. 필터 용어를 정의하여 이전 용어와 일치하지 않는 모든 트래픽에서 HTTP 트래픽을 식별하고 CPCD 서비스 규칙에 의해 처리를 위해 전송합니다.

      1. 건너뛰기된 HTTP 트래픽과 일치하도록 하나 이상의 HTTP 포트 번호를 지정합니다.

      2. 일치하는 트래픽이 CPCD 서비스에 의해 처리되도록 지정합니다.

    4. 나머지 HTTP가 아닌 트래픽에 대한 추가 작업을 건너뛰도록 필터 용어를 정의합니다.

    예를 들어, 다음 구성은 192.0.2.0에서 캡티브 포털 있는 IPv4 HTTP 트래픽인 walled-v4에 대한 필터를 만듭니다. 주소와 일치하는 트래픽을 위해 처리가 건너뛰고, 트래픽이 캡티브 포털 전송됩니다. 타의 추종을 불허하는 트래픽은 http 용어로 갑니다. 여기서 HTTP 트래픽은 건너뛰는 모든 트래픽 중에서 선택되어 CPCD 서비스에 따라 처리하도록 전송됩니다. 마지막으로, 용어 건너뛰기로 인해 나머지 HTTP가 아닌 모든 트래픽을 건너뛰게 됩니다.

  • 벽으로 둘러싸인 정원을 서버 목록 또는 서브넷으로 구성합니다.

    1. 서비스 필터를 생성합니다.

    2. 필터 용어를 정의합니다.

      1. 서버의 대상 접두사 목록을 지정하여 벽으로 둘러싸인 정원의 모든 서버를 목적지로 하는 트래픽과 일치하도록 필터 조건을 지정합니다.

      2. 일치하는 트래픽이 라인 카드의 처리를 건너뛰게 되도록 지정합니다.

    3. 필터 용어를 정의하여 이전 용어와 일치하지 않는 모든 트래픽에서 HTTP 트래픽을 식별하고 CPCD 서비스 규칙에 의해 처리를 위해 전송합니다.

      1. 건너뛰기된 HTTP 트래픽과 일치하도록 하나 이상의 HTTP 포트 번호를 지정합니다.

      2. 일치하는 트래픽이 CPCD 서비스에 의해 처리되도록 지정합니다.

    4. 나머지 HTTP가 아닌 트래픽에 대한 추가 작업을 건너뛰도록 필터 용어를 정의합니다.

    5. (선택 사항) 벽으로 둘러싸인 정원 내의 서버를 지정하는 접두사 목록을 정의합니다. 서브넷 또는 여러 개의 개별 주소를 지정할 수 있습니다.

    예를 들어, 다음 구성은 벽으로 둘러싸인 정원에 두 개의 서버를 지정하는 접두사 목록인 wg-list를 포함하는 IPv6 HTTP 트래픽, 벽으로 둘러싸인 v6-list에 대한 필터를 만듭니다. 필터 용어 포털6은 벽으로 둘러싸인 정원으로 향하는 IPv6 트래픽을 식별합니다. 타의 추종을 불허하는 트래픽은 http6라고 하며, 여기서 HTTP 트래픽은 건너뛰는 모든 트래픽 중에서 선택되어 CPCD 서비스에 따라 처리하도록 전송됩니다. 마지막으로, 용어 건너뛰기6는 HTTP가 아닌 나머지 모든 트래픽을 건너뛰게 합니다.

로컬 및 원격 리디렉션 서버에 대한 HTTP 리디렉션 구성

성벽으로 둘러싸인 정원 외부의 사이트에 대한 HTTP 요청이 발생하면 CPCD는 인증 및 인증을 위해 트래픽을 캡티브 포털 리디렉션할 수 있습니다.

벽으로 둘러싸인 정원 외부로 향하는 트래픽에 대해 수행할 작업을 지정하는 CPCD 서비스 규칙을 구성합니다. 이 트래픽은 벽으로 둘러싸인 정원 서비스 필터에 의해 식별되어 서비스에 전달되거나 벽으로 둘러싸인 정원 서비스 규칙에 의해 식별되고 허용되었습니다. 구성하는 작업은 로컬 또는 원격 HTTP 리디렉션 서버를 사용하고 있는지 여부에 따라 다릅니다.

  • 라우터에서 로컬 HTTP 리디렉션 서버를 사용하는 경우 리디렉션 작업을 지정합니다.

  • 라우터 뒤의 벽으로 둘러싸인 정원에 있는 원격 HTTP 리디렉션 서버를 사용하는 경우, 단순히 리디렉션 URL을 지정할 수 없습니다. 이 경우 서비스 규칙은 트래픽의 IP 대상 주소를 다시 작성해야 합니다. 새 대상 주소는 원격 HTTP 리디렉션 서버의 주소입니다. 그런 다음 원격 서버는 리디렉션 URL을 제공하여 트래픽을 캡티브 포털 보냅니다.

CPCD 서비스는 서비스 세트에 의해 서비스 인터페이스와 연결됩니다. 서비스 세트와 벽으로 둘러싸인 정원 서비스 필터는 모두 정적으로 구성된 인터페이스에 적용됩니다.

  1. CPCD 서비스 구성 수준에 액세스합니다.
  2. 벽으로 둘러싸인 정원 바깥으로 향하는 트래픽에 적용되는 규칙을 만듭니다.
  3. 들어오는 트래픽에 규칙이 적용되도록 지정합니다.
  4. CPCD가 HTTP 트래픽에 작업을 적용하기 위한 규칙 용어를 정의합니다. 벽으로 둘러싸인 정원이 서비스 필터로 구성되므로 서비스로 전송되기 전에 트래픽이 HTTP 트래픽으로 이미 필터링됩니다.
    • 로컬 HTTP 리디렉션 서버의 경우 원래 URL(벽으로 둘러싸인 정원 외부)이 추가된 캡티브 포털 URL인 리디렉션 URL을 제공합니다.

    • 원격 HTTP 리디렉션 서버의 경우 원격 서버의 대상 주소를 제공합니다.

예를 들어, 로컬 서버에 대한 다음 구성에서 CPCD 서비스 규칙은 redir-svc로 트래픽을 캡티브 포털 http://www.portal.example.com리디렉션합니다. 가입자가 입력한 원래 URL은 리디렉션 URL에 추가됩니다.

원격 서버에 대해 다음과 같이 구성하면 원래 대상 주소를 원격 서버 주소인 192.0.2.230에 다시 쓰는 CPCD 서비스 규칙 재작성 svc가 생성됩니다.

서비스 프로필 및 서비스 프로필과 서비스 인터페이스를 연결하도록 서비스 세트 구성

서비스 세트는 라우팅 엔진 수행할 하나 이상의 서비스를 정의합니다. HTTP 리디렉션 서비스의 경우, CPCD 규칙을 포함하는 CPCD 서비스 프로필을 정의합니다. 서비스 세트는 CPCD 서비스 프로필을 특정 서비스 인터페이스에 적용합니다.

  1. 서비스 프로필을 생성합니다.
  2. 서비스 프로필에 대해 하나 이상의 CPCD 규칙을 지정합니다.
  3. 서비스 세트를 만듭니다.
  4. 서비스 세트가 라우팅 엔진 기반 CPCD용인지 지정합니다.
  5. CPCD 서비스 프로필을 지정합니다.
  6. 서비스 인터페이스를 지정합니다.

예를 들어, 다음 구성은 CPCD 서비스 프로필 redir-prof를 생성하며, 이는 CPCD 규칙 redir-svc를 참조합니다. 서비스 세트 ss2는 라우팅 엔진 기반 CPCD의 일부로 지정됩니다. 집합은 CPCD 서비스 프로파일 redir-prof를 서비스 인터페이스 si-4/0/0과 연결합니다.

논리적 인터페이스에 CPCD 서비스 세트 및 서비스 필터 연결

HTTP 리디렉션 서비스를 사용하려면 CPCD 서비스 세트를 논리적 인터페이스에 연결해야 합니다. 벽으로 둘러싸인 정원이 서비스 필터로 구성된 경우, 서비스 세트와 동일한 인터페이스에 연결해야 합니다. 해당 인터페이스에 도착하고 나가는 트래픽은 서비스 필터에 의해 필터링됩니다. 서비스를 위해 식별된 트래픽은 CPCD 프로필이 적용되는 라우팅 엔진 서비스 인터페이스로 전송됩니다.

  1. 인라인 서비스를 활성화하고 대역폭을 지정합니다.
  2. 논리적 인라인 서비스 인터페이스를 구성합니다.
  3. 주소 패밀리를 구성합니다.
  4. 서비스 세트 및 서비스 필터를 인터페이스에 연결합니다.
    • 정적 인터페이스:

    • 동적 인터페이스

예를 들어, 다음 구성을 사용하면 섀시 슬롯 4의 라인 카드와 라인 카드 슬롯 0의 MIC에서 인라인 서비스를 사용할 수 있습니다. 논리 인터페이스에 주소를 할당합니다. 그런 다음 IPv4 주소 패밀리를 위한 서비스 세트 sset2 및 서비스 필터 walled-v4를 ge-2/0/1.0에 연결합니다. 서비스 세트 및 필터는 모두 인터페이스 입력 및 출력에 적용됩니다.

HTTP 서버가 콘텐츠 액세스를 제어하는 데 사용할 수 있는 GET 헤더 태그 삽입

어떤 경우에는 HTTP 서버가 사용자가 콘텐츠에 액세스할 수 있도록 허용할지 여부를 결정할 수도 있습니다. 릴리스 19.1 Junos OS 시작하여 라우팅 엔진 기반의 정적 HTTP 리디렉션 서비스 필터를 구성하여 라우팅 엔진 이러한 목적을 위해 HTTP GET 메시지의 패킷 헤더에 삽입하는 태그를 지정할 수 있습니다. 라우터 호스트 이름 또는 가입자의 MAC 주소, IPv4 주소 또는 IPv6 주소에 대한 태그를 삽입할 수 있습니다.

다음 단계는 그림 1에 해당합니다.

  1. 사용자의 디바이스인 HTTP 클라이언트는 HTTP 서버로 TCP 핸드셰이크 시퀀스를 수행합니다.

  2. 핸드셰이크가 성공하면 클라이언트는 사용자가 요청한 URL을 가지고 HTTP GET를 보냅니다.

  3. 라우팅 엔진 /$ 및 $/로 묶인 임의의 문자 문자열을 조합하여 해당 URL을 수정합니다. 문자열 길이는 나중에 삽입될 태그의 결합된 길이와 일치합니다. 클라이언트가 반환할 때 문자열은 식별자 역할을 합니다.

    삽입할 태그 길이가 30자이고 요청된 URL이 http://192.51.100.20/test.html 가정합니다. 라우팅 엔진 다음 예와 같이 30자 임의의 문자 문자열로 수정된 URL을 반환합니다.

    http://192.51.100.20/test.html/$IIGSbVdNDTDvnJFIAyoysXwVJawoYj$/

  4. 라우팅 엔진 302(발견됨) 또는 307(임시 리디렉션)의 상태 코드와 함께 수정된 URL을 보냅니다. 전송된 코드는 사용되는 HTTP의 버전과 BNG의 Junos OS 버전에 따라 다릅니다. 두 코드 모두 클라이언트에 액세스 요청이 수정된 URL에 다시 표시되어야 함을 나타냅니다.

  5. 라우팅 엔진 클라이언트 및 서버와의 TCP 연결을 재설정합니다.

  6. 클라이언트는 수정된 URL에 대해 HTTP 서버와 TCP 핸드셰이크를 수행합니다.

  7. 클라이언트는 수정된 URL을 포함하는 HTTP GET를 보냅니다.

  8. 라우팅 엔진 연결된 문자열의 길이가 클라이언트에 전송된 문자열과 동일한지 확인합니다.

    • 길이가 정확하면 URL을 원래 요청된 URL로 다시 스트립하고 태그를 GET 헤더에 삽입하고 GET을 HTTP 서버로 전달합니다. 구성된 경우 GET는 원래 요청된 서버 대신 리디렉션 URL로 선택적으로 전달될 수 있습니다.

    • 길이가 올바르지 않으면 라우팅 엔진 패킷을 드롭하고 드롭 카운터를 증가합니다.

  9. HTTP 서버는 GET 메시지를 평가하고 요청이 거부되면 액세스 권한을 부여하는 경우 200(확인)의 상태 코드로 클라이언트에 응답을 보냅니다.

  10. 라우팅 엔진 클라이언트 및 서버와의 TCP 연결을 종료합니다.

그림 1: HTTP 리디렉션 메시지 플로우에 대한 태그 삽입. Tag Insertion for HTTP Redirect Message Flow.
참고:

태그는 구성된 순서와 동일한 순서로 헤더에 삽입됩니다. 태그 이름은 대소문자로 구분되므로 tag ABCD 서로 tag abcd 다른 이름으로 처리됩니다.

GET 헤더에 삽입할 태그를 구성하려면 다음을 수행합니다.

  1. CPCD 서비스 구성 수준에 액세스합니다.
  2. 벽으로 둘러싸인 정원 바깥으로 향하는 트래픽에 적용되는 규칙을 만듭니다.
  3. 들어오는 트래픽에 규칙이 적용되도록 지정합니다.
  4. (선택 사항) 하나 이상의 대상 주소를 지정하여 태그 지정을 위한 트래픽을 필터링합니다.
    참고:

    또는 방화벽 서비스 필터에서 트래픽을 식별하기 위해 대상 주소를 지정할 수 있습니다.

  5. CPCD가 HTTP 트래픽에 작업을 적용하기 위한 규칙 용어를 정의합니다. 벽으로 둘러싸인 정원이 서비스 필터로 구성되므로 서비스로 전송되기 전에 트래픽이 HTTP 트래픽으로 이미 필터링됩니다.

예를 들어, 다음 구성은 입력 인터페이스의 트래픽과 일치하는 서비스 규칙인 insert-rule을 만듭니다. 용어 t1은 가입자의 MAC 주소 x-mac-addr와 가입자의 IPv4 주소 값을 가진 x-sub-ip라는 두 개의 태그를 삽입합니다.

다음 샘플 규칙에서 198.51.100.50 또는 198.51.100.75와 일치하는 대상 주소의 트래픽만 태그 처리됩니다. 가입자의 IP 주소와 라우터의 호스트 이름에 대한 태그가 삽입됩니다. 규칙의 두 번째 용어는 원래 요청된 URL로 전송되는 대신 트래픽이 전달되는 리디렉션 URL을 제공합니다.

라우팅 엔진 기반 HTTP 리디렉션에 대한 모든 CPCD 서비스 규칙과 마찬가지로, CPCD 서비스 프로필에 규칙을 포함해야 하며, 그런 다음 CPCD 서비스 세트를 사용하여 프로필을 인라인 서비스 인터페이스와 연결해야 합니다. 라우팅 엔진 규칙을 사용하여 서비스 세트와 동일한 논리적 인터페이스에서 서비스 필터에 의해 전달된 HTTP 트래픽을 처리합니다.

다음 샘플 구성을 고려합니다. 태그 리디렉션 규칙은 입력 인터페이스의 트래픽을 일치시키고 GET 헤더에 가입자의 IP 주소 값 및 라우터의 호스트 이름에 두 개의 태그를 삽입하도록 정의됩니다. 그런 다음 이 규칙은 태그 처리된 트래픽에 대한 리디렉션 URL을 제공합니다. CPCD 서비스 프로필 http-insert-redirect는 이 규칙을 포함하도록 정의됩니다.

서비스 세트 sset1은 라우팅 엔진 기반 CPCD용으로 정의됩니다. CPCD 서비스 프로필을 인라인 서비스 인터페이스에 적용합니다.

서비스 필터 walled-tag는 192.0.2.100의 벽으로 둘러싸인 정원으로 전송하기 위한 HTTP 트래픽, 198.51.100.50으로 향하는 HTTP 트래픽, 서비스 처리로 이동해야 하는 기타 모든 트래픽 등 세 가지 유형의 트래픽을 식별하고 작동합니다. 이는 서비스 규칙이 아닌 서비스 필터에서 대상 주소를 일치시키는 예입니다.

서비스 세트 sset1 및 서비스 필터 벽으로 둘러싸인 태그는 논리적 인터페이스에 적용됩니다.

릴리스 기록 테이블
릴리스
설명
19.1
릴리스 19.1 Junos OS 시작하여 라우팅 엔진 기반의 정적 HTTP 리디렉션 서비스 필터를 구성하여 라우팅 엔진 이러한 목적을 위해 HTTP GET 메시지의 패킷 헤더에 삽입하는 태그를 지정할 수 있습니다.