Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

포트 제어 프로토콜

포트 제어 프로토콜 개요

PCP(포트 제어 프로토콜)는 NAT44 및 방화벽 디바이스와 같은 업스트림 디바이스에 의한 수신 패킷 전달을 제어하는 방법과 애플리케이션 킵얼라이브 트래픽을 줄이는 방법을 제공합니다. PCP는 MS-DPC, MS-100, MS-400, MS-500 멀티서비스 PIC에서 지원됩니다. Junos OS 릴리스 17.4R1부터 NAPT44용 PCP는 MS-MPC 및 MS-MIC에서도 지원됩니다. Junos 20.2R1부터 차세대 서비스에 대해 CGNAT DS-Lite 서비스용 PCP가 지원됩니다. Junos OS 릴리스 18.2R1부터 MS-MPC 및 MS-MIC의 PCP는 DS-Lite를 지원합니다. Junos OS 릴리스 18.1 및 이전 릴리스에서 MS-MPC 및 MS-MIC의 PCP는 DS-Lite를 지원하지 않습니다.

PCP는 CGN(Carrier-Grade NAT) 및 소규모 NAT(예: 가정용 NAT) 모두의 컨텍스트에서 구현되도록 설계되었습니다. PCP를 사용하면 호스트가 ISP에서 운영하는 CGN 뒤를 포함하여 NAT 디바이스 뒤에 있을 때 장시간(웹캠의 경우와 같이) 또는 짧은 시간(예: 게임을 하거나 전화 통화 중)동안 서버를 운영할 수 있습니다. PCP를 사용하면 애플리케이션이 외부 IP 주소 및 포트에서 내부 IP 주소 및 포트로의 매핑을 생성할 수 있습니다. 이러한 매핑은 네트워크 주소 변환(NAT) 또는 방화벽 뒤에 있는 컴퓨터로 향하는 성공적인 인바운드 통신에 필요합니다. 들어오는 연결에 대한 매핑을 만든 후에는 원격 컴퓨터에 들어오는 연결의 IP 주소 및 포트에 대한 정보를 알려야 합니다. 이는 일반적으로 애플리케이션별 방식으로 수행됩니다.

Junos OS는 PCP 버전 2 및 버전 1을 지원합니다.

PCP는 다음 구성 요소로 구성됩니다.

  • PCP 클라이언트 - 리소스를 획득하고 제어하기 위해 PCP 서버에 PCP 요청을 발행하는 호스트 또는 게이트웨이입니다.

  • PCP 서버 - 일반적으로 PCP 요청을 수신하고 처리하는 CGN 게이트웨이 또는 공동 위치 서버입니다

Junos OS를 사용하면 포트 포워딩 및 포트 블록 할당과 같은 NAPT44 기능을 사용하여 플로우 매핑을 위해 PCP 서버를 구성할 수 있습니다. 플로우는 다음과 같은 소스에서 처리할 수 있습니다.

  • 그림 1과 같이 사용자 장비에서 직접 수신된 PCP 요청을 포함하는 트래픽.

    그림 1: 기본 PCP NAPT44 토폴로지 Basic PCP NAPT44 Topology
  • DS-Lite 소프트와이어 개시자(B4) 역할을 하는 라우터에 의해 추가된 PCP 요청을 포함하는 트래픽 매핑. DS-Lite 일반 모드로 알려진 이 모드는 그림 2에 나와 있습니다.

    그림 2: DS-Lite 일반 모드 PCP with DS-Lite Plain Mode 가 있는 PCP
참고:

Junos OS는 PCP 생성 트래픽에 대한 명확한 포트 블록 할당을 지원하지 않습니다.

포트 제어 프로토콜의 이점

많은 NAT 친화적인 애플리케이션은 NAT 디바이스에 의해 세션의 시간 초과가 발생하지 않도록 애플리케이션 수준 메시지를 자주 보냅니다. PCP는 다음과 같은 용도로 사용됩니다.

  • 이러한 NAT keepalive 메시지의 빈도를 줄입니다

  • 가입자 액세스 네트워크의 대역폭 감소

  • 서버에 대한 트래픽 감소

  • 모바일 디바이스의 배터리 소모 감소

포트 제어 프로토콜 버전 2

Junos OS 릴리스 15.1부터는 RFC 6887을 준수하는 포트 제어 프로토콜(PCP) 버전 2가 지원됩니다. PCP는 NAT44 및 방화벽 디바이스와 같은 업스트림 디바이스에 의한 수신 패킷 전달을 제어하는 방법과 애플리케이션 keep-alive 트래픽을 줄이는 방법을 제공합니다. PCP 버전 2는 NONCE 인증을 지원합니다. PCP를 사용하면 애플리케이션이 외부 IP 주소 및 포트에서 내부 IP 주소 및 포트로의 매핑을 생성할 수 있습니다. 논스 페이로드는 재생 공격을 방지하며 명시적으로 사용하지 않도록 설정하지 않는 한 기본적으로 전송됩니다.

버전 2 맵 요청(새로 고침 또는 삭제용)에 대한 클라이언트 nonce를 확인하려면 PCP 매핑을 생성하도록 하는 원래 맵 요청에서 수신된 nonce가 보존되어야 합니다. 매핑을 생성할 수 있는 초기 요청의 버전도 보존됩니다. nonce와 version 매개 변수를 저장하는 이 동작은 PCP 매핑당 13바이트가 사용됨을 나타냅니다. 이러한 스토리지 공간의 약간의 증가는 요청된 단일 매핑에 대한 시스템의 현재 메모리 사용량과 일치할 때 중요하지 않습니다(함께 생성되는 EIM(엔드포인트 독립 매핑) 및 EIF(엔드포인트 독립 필터링) 고려). 고객 배치에서 PCP는 EIM 및 EIF 매핑이 이러한 모든 매핑의 일부를 나타내도록 합니다.

Junos 릴리스 15.1까지 서비스 PIC는 버전 1 메시지 인코딩을 사용하는 PCP 초안 버전 22에 따라 주니퍼 네트웍스 라우터의 PCP 서버를 지원합니다. PCP(Port Control Protocol) draft-ietf-pcp-base-22(2012년 7월 만료) 에 정의된 초안 버전에서 RFC 6887 -- PCP(Port Control Protocol)에 정의된 최종 표준 버전으로 PCP가 개선됨에 따라 메시지 인코딩이 버전 2로 변경되어 필요에 따라 피어 및 맵 요청을 인증하기 위한 임의 nonce 페이로드가 추가되었습니다. 버전 1은 버전 2 형식과 호환되는 메시지를 디코딩하지 않으며 nonce 인증은 지원되지 않습니다. 실제 네트워크 환경에서는 CPE(Customer Premises Equipment) 디바이스가 버전 2만 지원하는 경우가 점점 늘어나면서 버전 2 메시지를 구문 분석하고 전송해야 합니다. 버전 1을 지원하는 CPE 장치와의 하위 호환성이 유지되고(버전 협상은 표준의 일부임) v2 메시지가 사용 중일 때 요청 nonce 페이로드 패킷을 인증합니다.

명령의 show services pcp statistics 출력에는 PCP 지원되지 않는 버전 필드가 포함되어 있으며, 이 필드는 버전이 1 또는 2가 아닐 때마다 나타내도록 증가합니다. 새로운 필드인 PCP 요청 nonce가 기존 매핑과 일치하지 않음은 nonce 페이로드가 매핑에 기록된 것과 일치하지 않아 무시된 PCP 버전 2 요청 수를 나타내기 위해 도입되었습니다(인증 실패). 버전 2가 사용 중인 경우, 클라이언트 nonce가 인증에 사용됩니다.

포트 제어 프로토콜 구성

이 주제는 포트 제어 프로토콜(PCP)을 구성하는 방법을 설명합니다. PCP는 MS-DPC, MS-100, MS-400, MS-500 멀티서비스 PIC에서 지원됩니다. Junos OS 릴리스 17.4R1부터 NAPT44용 PCP는 MS-MPC 및 MS-MIC에서도 지원됩니다. Junos OS 릴리스 18.2R1부터 MS-MPC 및 MS-MIC의 PCP는 DS-Lite를 지원합니다. Junos OS 릴리스 18.1 및 이전 릴리스에서 MS-MPC 및 MS-MIC의 PCP는 DS-Lite를 지원하지 않습니다. Junos OS 릴리스 20.2R1부터 PCP는 CGNAT 서비스용 MX-SPC3 보안 서비스 카드에서 지원됩니다.

다음 구성 작업을 수행합니다.

PCP 서버 옵션 구성

  1. PCP 서버 이름을 지정합니다.
  2. 서버의 IPv4 또는 IPv6 주소를 설정합니다. PCP DS-Lite의 경우, AFTR ipv6-address (주소 패밀리 전환 라우터 또는 소프트와이어 집선 장치)의 주소와 일치해야 합니다.
    참고:

    Junos OS 릴리스 18.2R1부터 MS-MPC 및 MS-MIC의 PCP는 DS-Lite를 지원합니다. Junos OS 릴리스 18.1 및 이전 릴리스에서 MS-MPC 및 MS-MIC의 PCP는 DS-Lite를 지원하지 않습니다.

    또는

  3. PCP DS-Lite의 경우 DS-Lite 소프트와이어 집선 장치 구성의 이름을 제공합니다.
  4. 서버의 최소 및 최대 매핑 수명을 지정합니다.
  5. 짧은 수명 또는 긴 수명 오류를 생성하기 위한 시간 제한을 지정합니다.
  6. (선택 사항) - 지정된 PCP 서버에서 PCP 옵션을 활성화합니다. 다음 옵션을 사용할 수 있습니다third-partyprefer-failure. 타사 옵션은 PCP 클라이언트의 타사 요청을 활성화하는 데 필요합니다. DS-Lite에는 옵션이 필요합니다third-party. 이 prefer-failure 옵션은 PCP 클라이언트가 NAT 풀에서 사용 가능한 다른 주소를 할당하는 대신 사용할 수 없는 특정 IP 주소/포트를 요청할 때 오류 메시지 생성을 요청합니다. prefer-failure 지정하지 않으면 NAPT44는 구성된 NAT 옵션을 기반으로 NAT 풀에서 사용 가능한 주소/포트를 할당합니다.
  7. (선택 사항) - 매핑에 사용할 NAT 풀을 지정합니다.
    참고:

    매핑을 위한 네트워크 주소 변환(NAT) 풀을 명시적으로 지정하지 않을 경우, Junos OS는 소스 IP, 소스 포트 및 프로토콜을 기반으로 부분 규칙 일치를 수행하고, Junos OS는 첫 번째 일치 규칙에 대해 구성된 네트워크 주소 변환(NAT) 풀을 사용하여 PCP에 대한 매핑을 할당합니다.

    여러 네트워크 주소 변환(NAT) 풀을 사용하려면 명시적 구성을 사용해야 합니다 .

    MX-SPC3 보안 서비스 카드 및 차세대 서비스의 경우, 명령문은 nat-options PCP 서버에 연결할 하나의 풀 이름만 지원합니다.

  8. (선택 사항) - 클라이언트당 최대 매핑 수를 구성합니다. 기본값은 32이며 최대값은 128입니다.

PCP 규칙 구성

PCP 규칙은 모든 서비스 집합 규칙과 동일한 기본 옵션을 갖습니다.

  • term 단일 규칙에 여러 애플리케이션을 허용하는 옵션입니다.

    차세대 서비스를 위한 MX-SPC3 보안 서비스 카드를 실행할 때 용어는 필요하지 않습니다.

  • 규칙의 from 적용을 받는 트래픽을 식별하는 옵션입니다.

  • then 수행할 작업을 식별하는 옵션입니다. PCP 규칙의 경우, 이 옵션은 선택한 트래픽을 처리하는 pcp 서버를 식별합니다

  1. 계층 수준으로 [edit services pcp rule rule-name] 이동하여 입력을 지정합니다 match-direction .
  2. 계층 수준으로 [edit services pcp rule rule-name term term-name] 이동하여 용어 이름을 제공합니다.

    차세대 서비스를 위한 MX-SPC3 보안 서비스 카드를 실행할 때는 이 단계가 필요하지 않습니다.

  3. (선택 사항) - 규칙에 from 따라 처리하기 위해 선택할 트래픽을 필터링하는 옵션을 제공합니다. 이 옵션을 생 from 략하면 서비스 집합의 서비스 인터페이스에서 처리되는 모든 트래픽이 규칙의 적용을 받습니다. 계층 수준에서 다음 옵션을 사용할 수 있습니다.[edit services pcp rule rule-name term term-name from]
    application-sets set-name

    애플리케이션 세트에 대한 트래픽은 PCP 규칙에 의해 처리됩니다.

    차세대 서비스를 위한 MX-SPC3 보안 서비스 카드를 실행할 때는 이 단계가 필요하지 않습니다.

    applications [ application-name ]

    애플리케이션의 트래픽은 PCP 규칙에 의해 처리됩니다.

    차세대 서비스를 위한 MX-SPC3 보안 서비스 카드를 실행할 때는 이 옵션이 필요하지 않습니다.

    destination-address address <except>

    대상 주소 또는 접두사에 대한 트래픽은 PCP 규칙에 의해 처리됩니다. 옵션을 except 포함하는 경우, 대상 주소 또는 접두사에 대한 트래픽은 PCP 규칙에 의해 처리 되지 않습니다 .

    destination-address-range high maximum-value low minimum-value <except>

    대상 주소 범위에 대한 트래픽은 PCP 규칙에 의해 처리됩니다. 옵션을 except 포함하는 경우, 대상 주소 범위에 대한 트래픽은 PCP 규칙에 의해 처리 되지 않습니다 .

    destination-port high maximum-value low minimum-value

    대상 포트 범위에 대한 트래픽은 PCP 규칙에 의해 처리됩니다.

    destination-prefix-list list-name <except>

    접두사 목록의 대상 주소에 대한 트래픽은 PCP 규칙에 의해 처리됩니다. 옵션을 except 포함하는 경우, 접두사 목록의 대상 주소에 대한 트래픽은 PCP 규칙에 의해 처리 되지 않습니다 .

    source-address address <except>

    소스 주소 또는 접두사의 트래픽은 PCP 규칙에 의해 처리됩니다. 이 except 옵션을 포함하는 경우, 소스 주소 또는 접두사의 트래픽은 PCP 규칙에 의해 처리 되지 않습니다 .

    source-address-range high maximum-value low minimum-value <except>

    소스 주소 범위의 트래픽은 PCP 규칙에 의해 처리됩니다. 이 except 옵션을 포함하는 경우, 소스 주소 범위의 트래픽은 PCP 규칙에 의해 처리 되지 않습니다 .

    source-prefix-list list-name <except>

    접두사 목록의 소스 주소에서 오는 트래픽은 PCP 규칙에 의해 처리됩니다. 옵션을 except 포함하는 경우, 접두사 목록의 소스 주소에서 전송되는 트래픽은 PCP 규칙에 의해 처리 되지 않습니다 .

  4. 대상 PCP 서버를 식별하는 옵션을 설정합니다 then .

네트워크 주소 변환(NAT) 규칙 구성

네트워크 주소 변환(NAT) 규칙을 구성하려면 다음을 수행합니다.

  1. 네트워크 주소 변환(NAT) 규칙 이름과 일치 방향을 구성합니다.
  2. 사용할 네트워크 주소 변환(NAT) 풀을 지정합니다.
  3. 변환 유형을 구성합니다.
  4. IPv4-IPv4 NAT 또는 DS-Lite와 함께 PCP를 사용하는 경우 EIM(엔드포인트 독립 매핑) 및 EIF(엔드포인트 독립 필터링)를 구성합니다.
    참고:

    IPv4-to-IPv4 NAT 또는 DS-Lite용 PCP를 사용하여 EIM 및 EIF를 구성하지 않으면 PCP 매핑이 생성되지 않습니다.

PCP를 적용하도록 서비스 집합 구성

PCP를 사용하려면 옵션에 규칙 이름(또는 규칙 이름 목록의 이름)을 제공해야 합니다.pcp-rule rule-name

  1. 계층 수준으로 [edit services service-set service-set-name 이동합니다.
  2. 새로운 서비스 집합인 경우 인터페이스 정보 및 적용될 수 있는 기타 규칙을 포함한 기본 서비스 집합 정보를 제공합니다.
  3. 지정된 PCP 서버로 트래픽을 전송하는 데 사용되는 PCP 규칙 또는 규칙 목록의 이름을 지정합니다.
참고:

또한 서비스 세트는 필요한 nat-rulesoftwire-rule.

SYSLOG 메시지 구성

PCP 로그 생성을 제어하기 위해 새로운 syslog 클래스, 구성 옵션, pcp-logs이 제공되었습니다. 다음과 같은 수준의 로깅을 제공합니다.

  • protocol—매핑 생성, 삭제와 관련된 모든 로그가 이 로깅 수준에 포함됩니다.

  • protocol-error—–모든 프로토콜 오류 관련 로그(예: 매핑 새로 고침 실패, PCP 조회 실패, 매핑 생성 실패). 이 로깅 수준에 포함됩니다.

  • system-error—메모리 및 인프라 오류가 이 수준의 로깅에 포함됩니다.

포트 제어 프로토콜 작업 모니터링

다음 운영 명령을 사용하여 포트 제어 프로토콜(PCP) 작업을 모니터링할 수 있습니다.

  • MS-MPC의 경우 명령을 show services nat mappings pcp 사용합니다.

    참고:

    PCP는 Junos OS 릴리스 19.3R2의 차세대 서비스에 대해 지원되지 않습니다

  • MS-MPC의 경우 명령을 show services nat mappings endpoint-independent 사용합니다.

    차세대 서비스의 경우 이 show services nat source mappings endpoint-independent 명령을 사용합니다.

  • show services pcp statistics protocol

다음은 이러한 명령의 출력 예입니다.

예: NAPT44로 포트 제어 프로토콜 구성

참고:

PCP는 MS-DPC, MS-100, MS-400, MS-500 멀티서비스 PIC에서 지원됩니다. Junos OS 릴리스 17.4R1부터 NATP44에 대한 PCP는 MS-MPC 및 MS-MIC에서도 지원됩니다.

요구 사항

하드웨어 요구 사항

  • PCP 클라이언트가 있는 UE.

  • MS-DPC 서비스 PIC가 있는 MX 3D 라우터.

  • 소프트웨어 요구 사항

  • Junos OS 13.2

  • 레이어 3 서비스 패키지

개요

ISP는 PCP 클라이언트가 있는 UE가 시간 초과 없이 서버에 대한 연결을 유지할 수 있도록 하려고 합니다. PCP 클라이언트는 필요한 연결 유형 및 기간에 대한 PCP 요청을 생성합니다. 연결은 웹캠을 사용하는 애플리케이션과 같이 긴 시간일 수도 있고 온라인 게임과 같이 짧은 시간일 수도 있습니다. MX 3D 라우터는 PCP 클라이언트 요청과 NAPT44를 해석하는 PCP 서버를 제공합니다. 그림 3 은 이 예의 기본 토폴로지를 보여줍니다.

그림 3: NAPT44 PCP with NAPT44 를 사용하는 PCP

PCP 구성

CLI 빠른 구성

이 예제를 빠르게 구성하려면 다음 명령을 복사하여 텍스트 파일에 붙여 넣고 줄 바꿈을 제거한 다음 네트워크 구성과 일치하는 데 필요한 세부 정보를 변경한 다음 명령을 복사하여 [edit] 계층 수준의 CLI에 붙여넣습니다.

섀시 구성

단계별 절차

레이어 3 서비스 패키지로 서비스 PIC(FPC 2 슬롯 0)를 구성하려면:

  1. [edit chassis] 계층 수준으로 이동합니다.

  2. 레이어 3 서비스 패키지를 구성합니다.

결과

인터페이스 구성

단계별 절차

  1. MS-DPC 서비스를 구성합니다.

  2. 네트워크 주소 변환(NAT) 및 PCP 서비스에 사용되는 고객 대면 인터페이스를 구성합니다.

  3. 인터넷 연결 인터페이스를 구성합니다.

결과

네트워크 주소 변환(NAT) 구성

단계별 절차

  1. 계층으로 [edit services nat] 이동합니다.

  2. 라는 pcp-pool네트워크 주소 변환(NAT) 풀을 구성합니다.

  3. 라는 네트워크 주소 변환(NAT) 규칙을 구성합니다. pcp-rule

결과

PCP 구성

단계별 절차

PCP 서버 및 PCP 규칙 옵션을 구성합니다.

  1. 서버의 계층 수준으로 edit services pcp 이동 pcp-s1

  2. PCP 서버 옵션을 구성합니다.

  3. PCP 규칙을 생성합니다.

  4. PCP 규칙 옵션을 구성합니다.

결과

서비스 집합 구성

단계별 절차

  1. 계층 수준에서 서비스 세트를 sset_0생성합니다.edit services service-set

  2. 서비스 집합과 연결된 네트워크 주소 변환(NAT) 규칙을 식별합니다.

  3. 서비스 집합과 연관된 PCP 규칙을 식별합니다.

  4. 서비스 집합과 연관된 서비스 인터페이스를 식별합니다.

결과

변경 내역 표

기능 지원은 사용 중인 플랫폼과 릴리스에 따라 결정됩니다. 기능 탐색기를 사용하여 플랫폼에서 기능이 지원되는지 확인합니다.

출시
설명
20.2R1
Junos 20.2R1부터 차세대 서비스에 대해 CGNAT DS-Lite 서비스용 PCP가 지원됩니다.
20.2R1
Junos OS 릴리스 20.2R1부터 PCP는 CGNAT 서비스용 MX-SPC3 보안 서비스 카드에서 지원됩니다.
18.2R1
Junos OS 릴리스 18.2R1부터 MS-MPC 및 MS-MIC의 PCP는 DS-Lite를 지원합니다.
18.2R1
17.4R1
Junos OS 릴리스 17.4R1부터 NAPT44용 PCP는 MS-MPC 및 MS-MIC에서도 지원됩니다.
17.4R1
Junos OS 릴리스 17.4R1부터 NAPT44용 PCP는 MS-MPC 및 MS-MIC에서도 지원됩니다.
17.4R1
Junos OS 릴리스 17.4R1부터 NATP44에 대한 PCP는 MS-MPC 및 MS-MIC에서도 지원됩니다.
15.1
Junos OS 릴리스 15.1부터는 RFC 6887을 준수하는 포트 제어 프로토콜(PCP) 버전 2가 지원됩니다.