Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

멀티프로토콜 BGP

멀티프로토콜 BGP 이해하기

멀티프로토콜 BGP(MP-BGP)는 BGP(Border Gateway Protocol)의 확장으로서, BGP가 다수의 네트워크 레이어와 주소 패밀리를 위한 라우팅 정보를 전송할 수 있게 해줍니다. MP-BGP는 유니캐스트 IP 포워딩에 사용되는 경로와 별도로 멀티캐스트 라우팅에 사용되는 유니캐스트 경로를 전송할 수 있습니다.

MP-BGP를 활성화하려면 다음과 같은 family inet 명령문을 포함하여 유니캐스트 IPv4가 아닌 주소 패밀리를 위한 NLRI(Network Layer Reachability Information)를 전송하도록 BGP를 구성하셔야 합니다.

IPv6 주소 패밀리를 위한 NLRI를 전송하도록 MP-BGP를 활성화하려면 다음과 같은 family inet6 명령문을 포함합니다.

라우터에서만 IPv4 주소 패밀리를 위한 레이어 3 VPN(Virtual Private Network) NLRI를 전송하도록 MP-BGP를 활성화하려면 다음과 같은 family inet-vpn 명령문을 포함합니다.

라우터에서만 IPv6 주소 패밀리를 위한 레이어 3 VPN NLRI를 전송하도록 MP-BGP를 활성화하려면 다음과 같은 family inet6-vpn 명령문을 포함합니다.

라우터에서만 IPv4 주소 패밀리를 위한 멀티캐스트 VPN NLRI를 전송하도록 MP-BGP를 활성화하고 VPN 신호 전송을 활성화하려면 다음과 같은 family inet-mvpn 명령문을 포함합니다.

IPv6 주소 패밀리를 위한 멀티캐스트 VPN NLRI를 전송하도록 MP-BGP를 활성화하고 VPN 신호 전송을 활성화하려면 다음과 같은 family inet6-mvpn 명령문을 포함합니다.

멀티프로토콜 BGP 기반의 멀티캐스트 VPN에 대한 자세한 정보는 Junos OS 멀티캐스트 프로토콜 사용자 가이드를 참조하십시오.

이러한 명령문을 포함할 수 있는 계층 수준의 목록은 해당 명령문에 대한 요약 섹션에 나와 있습니다.

주:

[edit protocols bgp family] 계층 수준에서 지정된 주소 패밀리를 변경할 경우, 라우팅 디바이스의 모든 현재 BGP 세션이 손실되었다가 재설정됩니다.

Junos OS 릴리스 9.6 및 이후 버전에서는 특정 BGP 주소 패밀리에 대한 루프 값을 지정하실 수 있습니다.

기본적으로 BGP 피어는 유니캐스트 포워딩에 사용되는 유니캐스트 경로만 전송합니다. BGP 피어가 멀티캐스트 경로만 전송하도록 구성하려면 multicast 옵션을 지정하십시오. BGP 피어가 유니캐스트 경로와 멀티캐스트 경로 모두를 전송하도록 구성하려면 any 옵션을 지정하시면 됩니다.

MP-BGP가 구성되면 BGP는 MP-BGP 경로를 각기 다른 라우팅 테이블에 설치합니다. 각 라우팅 테이블은 프로토콜 패밀리 또는 AFI(주소 패밀리 Indicator) 및 SAFI(Subsequent 주소 패밀리 Identifier)로 식별됩니다.

아래에는 가능한 모든 AFI 및 SAFI 조합이 나와 있습니다.

  • AFI=1, SAFI=1, IPv4 unicast

  • AFI=1, SAFI=2, IPv4 multicast

  • AFI=1, SAFI=128, L3VPN IPv4 unicast

  • AFI=1, SAFI=129, L3VPN IPv4 multicast

  • AFI=2, SAFI=1, IPv6 unicast

  • AFI=2, SAFI=2, IPv6 multicast

  • AFI=25, SAFI=65, BGP-VPLS/BGP-L2VPN

  • AFI=2, SAFI=128, L3VPN IPv6 unicast

  • AFI=2, SAFI=129, L3VPN IPv6 multicast

  • AFI=1, SAFI=132, RT-Constrain

  • AFI=1, SAFI=133, Flow-spec

  • AFI=1, SAFI=134, Flow-spec

  • AFI=3, SAFI=128, CLNS VPN

  • AFI=1, SAFI=5, NG-MVPN IPv4

  • AFI=2, SAFI=5, NG-MVPN IPv6

  • AFI=1, SAFI=66, MDT-SAFI

  • AFI=1, SAFI=4, labeled IPv4

  • AFI=2, SAFI=4, labeled IPv6 (6PE)

inet.2 라우팅 테이블에 설치된 경로는 SAFI를 사용하여 멀티캐스트 소스로 가는 경로로 식별되기 때문에 MP-BGP 피어로만 내보낼 수 있습니다. inet.0 라우팅 테이블에 설치된 경로는 표준 BGP 피어로만 내보낼 수 있습니다.

유니캐스트 트래픽을 보낼 수 없는 멀티캐스트 소스로의 경로가 있을 가능성은 거의 없기 때문에 inet.2 라우팅 테이블은 inet.0에 있는 경로의 하위 집합이어야 합니다. inet.2 라우팅 테이블은 멀티캐스트 RPF(Reverse Path Forwarding) 확인에 사용되는 유니캐스트 경로와 MP-BGP가 NLRI 멀티캐스트 업데이트에서 학습한 추가 연결성 정보를 저장합니다. inet.2 라우팅 테이블은 NLRI를 any로 설정하여 MP-BGP를 구성하면 자동으로 생성됩니다.

MP-BGP를 활성화하면 다음과 같은 작업을 수행하실 수 있습니다.

BGP 피어 세션에서 수신되는 접두사 수 제한

BGP 피어 세션에서 수신되는 접두사 수를 제한하고, 삽입된 접두사 수가 설정된 제한을 초과하면 속도 제한 메시지를 기록하실 수 있습니다. 접두사 수가 제한을 초과할 때 피어링을 붕괴시킬 수도 있습니다.

BGP 세션에서 수신할 수 있는 접두사 수에 대해 제한을 설정하려면 다음과 같은 prefix-limit 명령문을 포함하십시오.

이 명령문을 포함할 수 있는 계층 수준의 목록은 이 명령문에 대한 요약 섹션을 참조하십시오.

maximum number의 경우, 1~4,294,967,295 범위의 값을 지정합니다. 지정된 최대 접두사 수가 초과되면 시스템 로그 메시지가 전송됩니다.

teardown 명령문을 포함할 경우, 최대 접두사 수가 초과되면 세션이 붕괴됩니다. 비율을 지정할 경우, 접두사 수가 지정된 최대 비율 제한을 초과하면 메시지가 기록됩니다. 붕괴된 세션은 idle-timeout 명령문을 포함하지 않았으면 곧 다시 설정됩니다. idle-timeout 명령문을 포함하면 지정된 시간 동안 또는 영원히 세션이 다운된 상태를 유지합니다. forever를 지정할 경우에는 clear bgp neighbor 명령을 실행해야만 세션이 재설정됩니다. drop-excess <percentage> 옵션을 포함하는 경우, 최대 접두사 수에 도달하면 초과 경로는 삭제됩니다. 백분율을 지정하는 경우, 접두사 수가 최대 수의 백분율 값을 초과할 때 경로가 기록됩니다. hide-excess <percentage> 옵션을 포함하는 경우, 최대 접두사 수에 도달하면 초과 경로는 숨겨집니다. 백분율을 지정하는 경우, 접두사 수가 최대 수의 백분율 값을 초과할 때 경로가 기록됩니다. 비율을 수정하면 경로가 자동으로 재평가됩니다. 활성 경로가 지정된 백분율 아래로 떨어지면 이러한 경로는 숨겨진 상태로 유지됩니다.

주:

Junos OS 릴리스 9.2 및 이후 버전에서는 BGP 피어 세션에서 수신 대신 허용 가능한 접두사 수에 대해 제한을 설정하실 수 있습니다. 자세한 정보는 BGP 피어 세션에서 허용되는 접두사 수 제한을 참조하십시오.

BGP 피어 세션에서 허용되는 접두사 수 제한

Junos OS 릴리스 9.2 및 이후 버전에서는 BGP 피어 세션에서 허용 가능한 접두사 수를 제한할 수 있습니다. 지정된 제한이 초과되면 시스템 로그 메시지가 전송됩니다. 지정된 접두사의 수에 대한 제한이 초과될 경우 BGP 세션을 재설정하도록 지정하실 수도 있습니다.

BGP 피어 세션에서 허용 가능한 접두사 수에 대해 제한을 설정하려면 다음과 같은 accepted-prefix-limit 명령문을 포함합니다.

이 명령문을 포함할 수 있는 계층 수준의 목록은 이 명령문에 대한 요약 섹션을 참조하십시오.

maximum number의 경우, 1~4,294,967,295 범위의 값을 지정합니다.

허용되는 접두사 수가 설정된 제한을 초과할 때 BGP 피어 세션을 재설정하려면 teardown 명령문을 포함하십시오. 또한 1~100 범위의 비율을 포함하여 허용되는 접두사 수가 해당 상한 비율을 초과할 경우 시스템 로그 메시지가 전송되도록 하실 수도 있습니다. 기본적으로 재설정되는 BGP 세션은 짧은 시간 내에 다시 설정됩니다. 지정된 기간 동안 BGP 세션이 재설정되지 않도록 하려면 idle-timeout 명령문을 포함합니다. 시간 초과 값은 1~2400분 사이의 값으로 설정하실 수 있습니다. clear bgp neighbor명령을 실행할 때까지 BGP 세션이 다시 설정되지 않도록 하려면 forever옵션을 포함합니다. drop-excess <percentage> 명령문을 포함하고 비율을 지정하면 접두사 수가 지정된 비율을 초과할 때 초과된 경로는 손실됩니다. hide-excess <percentage> 명령문을 포함하고 비율을 지정할 경우에는 접두사 수가 지정된 비율을 초과할 때 초과된 경로가 숨겨집니다. 비율을 수정하면 경로가 자동으로 재평가됩니다.

주:

NSR(Nonstop Active Routing)이 설정되어 있어 백업 라우팅 엔진으로의 전환이 발생하면 다운 상태의 BGP 피어가 자동으로 재시작됩니다. idle-timeout forever 명령문이 구성되어 있어도 BGP 피어가 다시 시작됩니다.

주:

또는 BGP 피어 세션에서 수신 가능한(허용 가능한 것과 다름) 접두사 수에 대해 제한을 설정하실 수 있습니다. 자세한 정보는 BGP 피어 세션에서 수신되는 접두사 수 제한을 참조하십시오.

BGP 라우팅 테이블 그룹 구성

BGP 세션은 유니캐스트 또는 멀티캐스트 NLRI를 수신하면 적절한 테이블에 경로를 설치합니다(유니캐스트의 경우 inet.0 또는 inet6.0, 멀티캐스트의 경우 inet.2 또는 inet6.2). 유니캐스트 및 멀티캐스트 테이블 모두에 유니캐스트 접두사를 추가하려는 경우, BGP 라우팅 테이블 그룹을 구성하실 수 있습니다. 이는 멀티캐스트 NLRI 협상을 수행할 수 없는 경우에 유용한 기능입니다.

BGP 라우팅 테이블 그룹을 구성하려면 다음과 같은 rib-group 명령문을 포함하십시오.

이 명령문을 포함할 수 있는 계층 수준의 목록은 이 명령문에 대한 요약 섹션을 참조하십시오.

다른 AS에 위치한 PE 라우팅 디바이스로 경로 해결

경로 해결을 위해 레이블이 지정된 경로가 inet.3 라우팅 테이블에 위치하도록 허용하실 수 있습니다. 그러면 이러한 경로는 원격 PE가 다른 AS(Autonomous System)에 걸쳐 위치하는 프로바이더 에지(PE) 라우팅 디바이스 연결에 대해 해결됩니다. PE 라우팅 디바이스가 VPN 라우팅 및 포워딩(VRF) 라우팅 인스턴스에 경로를 설치하기 위해서는 다음 홉이 inet.3 테이블 내에 저장된 경로로 해결되어야 합니다.

inet.3 라우팅 테이블로 경로를 해결하려면 다음과 같은 resolve-vpn 명령문을 포함하십시오.

이 명령문을 포함할 수 있는 계층 수준의 목록은 이 명령문에 대한 요약 섹션을 참조하십시오.

레이블 지정된 경로와 레이블 미지정 경로 허용하기

레이블이 지정된 경로와 레이블이 지정되지 않은 경로 모두 단일 세션에서 교환되도록 허용하실 수 있습니다. 레이블이 지정된 경로는 inet.3 또는 inet6.3 라우팅 테이블에 배치되고, 레이블 지정 여부에 상관없이 유니캐스트 경로는 라우팅 디바이스와 송수신이 가능합니다.

레이블 지정 경로와 레이블 미지정 경로 모두 교환되도록 허용하려면 다음과 같은 rib 명령문을 포함하십시오.

이 명령문을 포함할 수 있는 계층 수준의 목록은 이 명령문에 대한 요약 섹션을 참조하십시오.

예: IPv4 전송을 통해 IPv6 BGP 경로 구성

이 예는 IPv4 인터페이스로 양쪽이 구성된 IPv4 연결을 통해 IPv6 및 IPv4 접두사를 모두 내보내는 방법을 보여줍니다.

요구 사항

이 예제를 구성하기 전에 디바이스 초기화 이외의 특별한 구성은 필요하지 않습니다.

개요

IPv6 BGP 접두사를 내보낼 때 다음 사항에 유념합니다.

  • BGP는 IPv4에 매핑된 IPv6 접두사를 사용하여 다음 홉 접두사를 파생합니다. 예를 들어 IPv4 다음 홉 접두사 10.19.1.1은 IPv6 다음 홉 접두사 ::ffff:10.19.1.1로 해석됩니다.

    주:

    IPv6 BGP 접두사를 내보내기 위해 IPv4 매핑되는 IPv6 다음 홉에 대한 활성 경로가 있어야 합니다.

  • 링크 전체에 IPv6 연결이 구성되어야 합니다. 연결은 IPv6 터널 또는 듀얼 스택 구성이어야 합니다. 이 예에서 이중 집적화가 사용됩니다.

  • IPv4 매핑 IPv6 접두사를 구성하면 96비트 이상의 마스크를 사용합니다.

  • 일반적인 IPv6 접두사를 사용할 경우 정적 경로를 구성합니다. 이 예는 정적 경로를 사용합니다.

그림 1은 샘플 토폴로지를 표시합니다.

그림 1: IPv4 전송을 통한 IPv6 BGP 경로 구성을 위한 토폴로지IPv4 전송을 통한 IPv6 BGP 경로 구성을 위한 토폴로지

구성

CLI 빠른 구성

이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 바꾸고 [edit] 계층 수준에서 명령을 CLI로 복사해 붙여 넣습니다.

디바이스 R1

디바이스 R2

디바이스 R3

디바이스 R1 구성

단계별 절차

다음 예는 구성 계층에서 다양한 수준의 탐색이 필요합니다. CLI 탐색 관련 정보는 Junos OS CLI 사용자 가이드구성 모드에서의 CLI 편집기 사용을 참조하십시오.

디바이스 R1 구성

  1. IPv4 주소와 IPv6 주소를 포함하여 인터페이스를 구성합니다.

  2. EBGP를 구성합니다.

  3. IPv4 유니캐스트 및 IPv6 유니캐스트 경로를 전달하도록 BGP를 활성화합니다.

    IPv4 유니캐스트 경로는 기본적으로 활성화됩니다. 그러나 다른 NLRI 주소 패밀리를 구성하는 경우, IPv4 유니캐스트가 명시적으로 구성되어야 합니다.

  4. 라우팅 정책 구성

  5. 일부 정적 경로를 구성합니다.

  6. AS(Autonomous System) 번호를 구성합니다.

결과

구성 모드에서 show interfaces, show policy-options, show protocolsshow routing-options 명령을 입력하여 구성을 확인합니다. 출력 결과가 의도한 구성대로 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정하십시오.

디바이스 구성을 마쳤으면 구성 모드에서 commit을 입력합니다. 디바이스 R2 및 디바이스 R3의 구성을 반복하고, 필요에 따라 인터페이스 이름 및 IP 주소를 변경합니다.

검증

구성이 올바르게 작동하고 있는지 확인합니다.

이웃 상태 확인

목적

BGP가 IPv6 유니캐스트 경로를 전달하도록 활성화되어 있는지 확인

작업

운영 모드에서 show bgp neighbor 명령을 입력합니다.

의미

출력에서 inet6-unicast의 다양한 발생은 BGP가 IPv6 유니캐스트 경로를 전달할 수 있음을 보여줍니다.

라우팅 테이블 확인

목적

디바이스 R2의 inet6.0 라우팅 테이블에 BGP 경로를 보유하는지 확인합니다.

작업

운영 모드에서 show route protocol bgp inet6.0 명령을 입력합니다.

BGP IPv6 세션을 통한 IPv4 경로 보급 개요

IPv6 네트워크에서 BGP는 일반적으로 BGP 피어 간의 IPv6 세션을 통해 IPv6 NLRI(Network Layer Reachability Information)를 보급합니다. 이전 릴리스에서 Junos OS는 inet6 유니캐스트, inet6 멀티캐스트 또는 inet6 레이블이 지정된 유니캐스트 주소 패밀리만 지원했습니다. 이 기능을 통해 모든 BGP 주소 패밀리를 교환할 수 있습니다. 코어에 IPv6가 있는 이중 스택 환경에서 이 기능을 사용하면 BGP가 IPv6 BGP 세션을 통해 IPv4 다음 홉으로 IPv4 유니캐스트 연결성을 알릴 수 있습니다.

이 기능은 IPv4가 양쪽 끝점에서 구성되는 BGP IPv6 세션 전용입니다. local-ipv4-address은 IBGP 또는 다중 홉 EBGP 세션에 대한 루프백 주소 또는 임의의 ipv4 주소일 수 있습니다. BGP 컨페더레이션에 속하지 않는 단일 홉 외부 BGP 스피커의 경우 구성된 로컬 IPv4 주소가 직접 연결되지 않으면 BGP 세션이 닫히고 유휴 상태로 유지되며 오류가 생성되어 show bgp neighbor 명령의 출력에 표시됩니다.

IPv6 세션을 통한 IPv4 경로 보급을 사용하도록 설정하려면 local-ipv4-address을 다음과 같이 구성합니다.

주:

BGP에는 이미 IPv6 BGP 세션을 통해 이러한 address family를 알릴 수 있는 기능이 있으므로 inet6 unicast, inet6 multicast 또는 inet6 labeled-unicast address family에 대해서는 이 기능을 구성할 수 없습니다.

구성된 local-ipv4-address은 BGP가 자체 다음 홉으로 경로를 보급할 때만 사용됩니다. IBGP가 EBGP 피어에서 학습한 경로를 보급하거나 경로 리플렉터가 BGP 경로를 클라이언트에 보급할 때, BGP는 경로 다음 홉을 변경하지 않고 구성된 local-ipv4-address을 무시하고 원래 IPv4 다음 홉을 사용합니다.

예: IPv6 BGP 세션을 통한 IPv4 경로 보급하기

이 예는 IPv6 BGP 세션을 통해 IPv4 경로를 보급하는 방법을 보여줍니다. 해당 코어에 IPv6이 있는 이중 스택 환경에서는 원격 IPv4 호스트에 도달해야 합니다. 따라서 BGP는 IPv6 소스 및 목적지 주소를 사용하여 BGP 세션을 통해 BGP 피어로 IPv4 다음 홉이 있는 IPv4 경로를 보급합니다. 이 기능을 통해 BGP가 IPv6 세션을 통해 IPv4 다음 홉을 사용하여 IPv4 유니캐스트 연결성을 보급할 수 있습니다.

요구 사항

이 예에서 사용되는 하드웨어 및 소프트웨어 구성 요소는 다음과 같습니다.

  • 이중 스택 기능이 있는 라우터 3개

  • 모든 디바이스에서 Junos OS 릴리스 16.1 이상 실행

IPv6 BGP 세션을 통한 IPv4 보급을 가능하도록 설정하기 전에 다음을 확인합니다.

  1. 디바이스 인터페이스를 구성합니다.

  2. 모든 장치에 이중 스택을 구성합니다.

개요

릴리스 16.1부터 Junos OS는 BGP가 IPv6 BGP 세션을 통해 IPv4 다음 홉으로 IPv4 유니캐스트 연결성을 보급할 수 있도록 합니다. 이전 Junos OS 릴리스에서 BGP는 IPv6 BGP 세션을 통한 inet6 unicast, inet6 multicast 및 inet6 labeled unicast address family만 보급할 수 있었습니다. 이 기능을 통해 BGP가 IPv6 세션을 통해 모든 BGP address family를 교환할 수 있습니다. BGP가 IPv4 다음 홉이 있는 IPv4 경로를 IPv6 세션을 통해 BGP 피어에 보급하도록 설정할 수 있습니다. 구성된 local-ipv4-address은 BGP가 자체 다음 홉으로 경로를 보급할 때만 사용됩니다.

주:

BGP에는 이미 IPv6 BGP 세션을 통해 이러한 address family를 알릴 수 있는 기능이 있으므로 inet6 unicast, inet6 multicast 또는 inet6 labeled-unicast address family에 대해서는 이 기능을 구성할 수 없습니다.

토폴로지

그림 2에서는 라우터 R1과 R2 사이에 IPv6 외부 BGP 세션이 실행되고 있습니다. IPv6 IBGP 세션은 라우터 R2와 라우터 R3 간에 설정됩니다. IPv4 정적 경로는 R1에서 BGP에 재배포됩니다. IPv6 BGP 세션을 통해 IPv4 경로를 배포하기 위해 [edit protocols bgp address family] 계층 수준의 모든 라우터에서 새로운 기능이 활성화되어야 합니다.

그림 2: IPv6 BGP 세션을 통한 IPv4 경로 보급하기IPv6 BGP 세션을 통한 IPv4 경로 보급하기

구성

CLI 빠른 구성

이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 바꾸고 [edit] 계층 수준에서 명령을 CLI로 복사해 붙여 넣은 다음, 구성 모드에서 commit을 입력합니다.

라우터 R1

라우터 R2

라우터 R3

라우터 R1 구성하기

단계별 절차

다음 예는 구성 계층에서 다양한 수준의 탐색이 필요합니다. CLI 탐색에 관한 정보는 CLI 사용자 가이드에서 구성 모드에서 CLI 편집기 사용을 참조하십시오.

라우터 R1을 구성하려면 다음과 같이 하십시오.

주:

적절한 인터페이스 이름, 주소 및 기타 매개 변수를 수정한 후 다른 라우터에 이 절차를 반복합니다.

  1. IPv6 및 IPv6 주소로 인터페이스를 구성합니다.

  2. 루프백 주소를 구성합니다.

  3. 보급해야 하는 IPv4 정적 경로를 구성합니다.

  4. BGP 호스트를 위한 AS(Autonomous System)를 구성합니다.

  5. 외부 에지 라우터에서 EBGP를 구성합니다.

  6. BGP IPv6 세션을 통해 IPv4 주소 140.1.1을 보급하는 기능을 활성화할 수 있습니다.

  7. 모든 정적 경로를 수락하는 정책 p1을 정의합니다.

  8. EBGP 그룹 EBgp-v6에 정책 p1을 적용합니다.

결과

구성 모드에서 show interfaces, show protocols, show routing-optionsshow policy-options 명령을 입력하여 구성을 확인합니다. 출력 결과가 의도한 구성대로 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정하십시오.

디바이스 구성을 완료하면 해당 구성을 커밋합니다.

검증

구성이 올바르게 작동하고 있는지 확인합니다.

BGP 세션이 작동 중인지 확인하기

목적

BGP가 구성된 인터페이스에서 실행되고 BGP 세션이 각 neighbor 주소에 대해 활성화되어 있는지 확인됩니다.

작업

운영 모드의 라우터 R1에서 show bgp summary 명령을 실행합니다.

의미

BGP 세션이 가동되고 있으며 BGP 피어링이 설정되어 있습니다.

IPv4 주소가 보급되는지 확인하기

목적

구성된 IPv4 주소가 라우터 R1에 의해 구성된 BGP neighbor에 보급되는지 확인합니다.

작업

운영 모드의 라우터 R1에서 show route advertising-protocol bgp ::150.1.1.2 명령을 실행합니다.

의미

IPv4 정적 경로는 BGP neighbor 라우터 R2에 보급되고 있습니다.

BGP neighbor 라우터 R2가 보급된 IPv4 주소를 수신하는지 확인하기

목적

라우터 R2가 라우터 R1이 IPv6을 통해 BGP neighbor 네트워크에 보급하는 IPv4 주소를 수신하는지 확인합니다.

작업
의미

라우터 R2의 라우팅 테이블에 정적 IPv4 경로가 있다는 것은 라우터 R1에서 보급된 IPv4 경로를 수신하고 있음을 나타냅니다.

IPv6 다음 홉과 IPv4 경로를 BGP에 재배포하는 방법 이해

주로 IPv6 트래픽을 전송하는 네트워크에서 필요할 때 IPv4 경로를 라우팅해야 합니다. 예를 들어 IPv6 전용 네트워크가 있지만 IPv4 트래픽을 라우팅하는 고객이 있는 인터넷 서비스 공급자가 있습니다. 이 경우, 이러한 고객을 수용하고 IPv6 네트워크를 통해 IPv4 트래픽을 전달할 필요가 있습니다. RFC 5549에 기술된 바와 같이, IPv6 다음 홉 IPv4 트래픽이 있는 IPv4 네트워크 레이어 연결성 정보 보급은 고객 사내 장치(CPE) 디바이스에서 IPv4-over-IPv6 게이트웨이로 터널링됩니다. 이러한 게이트웨이는 anycast address를 통해 CPE 디바이스에 공지됩니다. 그런 다음 게이트웨이 디바이스는 원격 CPE 디바이스로 동적 IPv4-over-IPv6 터널을 만들고 IPv4 집계 경로를 보급하여 트래픽을 조정합니다.

주:

동적 IPv4-over-IPv6 터널 기능은 Junos OS 릴리스 17.3R1에서 통합 ISSU를 지원하지 않습니다.

프로그래밍 가능한 인터페이스를 가진 경로 리플렉터(RR)는 IBGP를 통해 IPv6 주소를 다음 홉으로 하는 게이트웨이 라우터 및 호스트 경로에 연결됩니다. 이러한 RR은 IPv4/32 주소를 보급하여 터널 정보를 네트워크에 추가합니다. 게이트웨이 라우터는 원격 고객 제공자 에지에 대한 동적 IPv4-over-IPv6 터널을 생성합니다. 또한 게이트웨이 라우터는 트래픽을 조정하기 위해 IPv4 집계 경로를 보급합니다. 그런 다음 RR은 ISP에 터널 소스 경로를 보급합니다. 또한 RR이 터널 경로를 제거하면 BGP는 터널을 해체하여 CPE에 도달할 수 없게 하는 경로를 철회합니다. 모든 집계 경로 기여자 경로가 제거되면 게이트웨이 라우터는 IPv4 집계 경로 및 IPv6 터널 소스 경로를 철회합니다. 게이트웨이 라우터는 앵커 패킷 전달 엔진 라인 카드가 작동 중단될 때 경로 철회를 전송하여 트래픽을 다른 게이트웨이 라우터로 리디렉션합니다.

IPv6 다음 홉을 사용하는 IPv4 경로를 지원하기 위해 다음 확장이 도입되었습니다.

BGP 다음 홉 인코딩

BGP는 IPv6 다음 홉으로 IPv4 경로를 전송하는 데 사용되는 다음 홉 인코딩 기능을 통해 확장됩니다. 원격 피어에서 이 기능을 사용할 수 없는 경우 BGP는 이 인코딩 기능을 기반으로 피어를 그룹화하고 협상된 NLRI(Network Layer Reachability Information) 목록에서 인코딩 기능을 사용하지 않고 BGP family를 제거합니다. Junos OS는 inet.0과 같은 하나의 확인 테이블만 허용합니다. IPv6 다음 홉을 사용하는 IPv4 BGP 경로를 허용하기 위해 BGP는 새 확인 트리를 만듭니다. 이 기능을 사용하면 Junos OS 라우팅 테이블에 여러 확인 트리를 가질 수 있습니다.

RFC 5549, IPv6 다음 홉을 사용한 IPv4 네트워크 레이어 연결성 정보 보급 외에도, RFC 5512, BGP 캡슐화 SAFI(Subsequent Address Family Identifier)와 BGP 터널 캡슐화 속성이 다음 홉 주소의 주소 패밀리를 결정하기 위해 도입되었습니다. 캡슐화 커뮤니티는 수신 노드가 생성해야 하는 터널 유형을 나타냅니다. BGP가 IPv6 다음 홉 주소와 V4oV6 캡슐화 커뮤니티를 포함하는 IPv4 경로를 수신하면 BGP는 IPv4-over-IPv6 동적 터널을 생성합니다. BGP가 캡슐화 커뮤니티 없이 경로를 수신하면 V4oV6 터널을 생성하지 않고 BGP 경로가 해결됩니다.

새로운 정책 작업 dynamic-tunnel-attributes dyan-attribute[edit policy-statement policy name term then] 계층 수준에서 이용 가능하여 새롭게 확장된 캡슐화을 지원합니다.

터널 현지화

동적 터널 인프라는 더 많은 수의 터널을 지원하기 위해 터널 현지화로 향상되었습니다. 앵커가 실패할 때 트래픽을 처리할 수 있는 복원력을 제공하기 위해 터널 현지화가 필요합니다. 하나 이상의 섀시가 서로 백업하고 라우팅 프로토콜 프로세스(rpd)가 장애 지점에서 백업 섀시로 트래픽을 유도하도록 합니다. 섀시는 개별 루프백 주소 대신 이러한 집계 접두사만 네트워크에 보급합니다.

터널 핸들링

IPv4 over IPv6 터널은 터널 고정과 함께 동적 터널 인프라를 사용하여 필요한 섀시 전체 규모를 지원합니다. 터널 상태는 패킷 전달 엔진으로 현지화되고 다른 패킷 전달 엔진은 트래픽을 터널 앵커로 전달합니다.

터널 수신

터널 수신 또는 터널 캡슐화은 네트워크 트래픽을 고객 사이트로 전달합니다. 트래픽이 섀시로 유입된 패킷 전달 엔진에 터널 상태가 존재하는 경우 라우팅 프로토콜 프로세스(rpd)는 다음 절차를 사용하여 IPv6 터널을 통해 IPv4 경로를 재배포합니다.
그림 3: 동일한 PFE에서 터널 상태를 사용할 수 있는 경우 터널 수신 처리동일한 PFE에서 터널 상태를 사용할 수 있는 경우 터널 수신 처리
그림 4: 터널 상태가 다른 PFE에 있을 때 터널 수신 처리터널 상태가 다른 PFE에 있을 때 터널 수신 처리
  1. IPv6 헤더 내부에 IPv4 트래픽을 캡슐화합니다.

    캡슐화 전에 최대 전송 단위(MTU) 시행이 수행됩니다. 캡슐화된 패킷 크기가 터널 MTU를 초과하고 IPv4 패킷의 DF-bit이 설정되지 않은 경우 패킷은 단편화되고 이러한 단편은 캡슐화됩니다.

  2. 내부 패킷 헤더에 해시 기반 트래픽 로드 밸런싱을 사용합니다.

  3. 트래픽을 목적지 IPv6 주소로 전달합니다. IPv6 주소는 IPv6 헤더에서 가져옵니다.

터널 송신

터널 송신은 CPE(고객 사내 장치)에서 네트워크 측으로 트래픽을 전달합니다.
그림 5: 동일한 PFE에서 터널 상태를 사용할 수 있는 경우 터널 송신 처리동일한 PFE에서 터널 상태를 사용할 수 있는 경우 터널 송신 처리
그림 6: 원격 PFE에서 터널 상태를 사용할 수 있는 경우 터널 송신 처리원격 PFE에서 터널 상태를 사용할 수 있는 경우 터널 송신 처리
  1. IPv6 패킷 내부에 있는 IPv4 패킷의 캡슐화를 해제합니다.

  2. 스푸핑 차단 검사를 수행하여 IPv6, IPv4 쌍이 터널 설정에 사용된 정보와 일치하는지 확인합니다.

  3. 캡슐 해제된 패킷의 IPv4 헤더에서 IPv4 목적지 주소를 조회하고 지정된 IPv4 주소로 패킷을 전달합니다.

터널 로드 밸런싱 및 앵커 패킷 전달 엔진 장애 처리

패킷 전달 엔진에 고정된 터널 트래픽의 null-route 필터링을 방지하려면 패킷 전달 엔진 오류를 신속하게 처리해야 합니다. 터널 현지화에는 BGP 보급을 사용하여 장애를 전체적으로 복구하는 작업이 포함됩니다. 터널 트래픽은 장애 지점에서 동일한 터널 상태를 포함하는 다른 백업 섀시로 우회됩니다. 트래픽 로드 밸런싱의 경우, 섀시는 각 접두사 세트에 대해 서로 다른 MED(Multiple Exit Discriminator) 값을 보급하여 터널의 1/4에 대한 트래픽만 각 섀시를 통과하도록 구성됩니다. 또한 CPE 트래픽은 각 섀시에 동일한 애니캐스트 주소 집합을 구성하고 각 섀시로 향하는 트래픽의 4분의 1만 조정함으로써 유사한 방식으로 처리됩니다.

앵커 패킷 전달 엔진은 터널에 대한 모든 처리를 수행하는 단일 엔터티입니다. 앵커 패킷 전달 엔진은 정적 프로비저닝을 통해 선택되며 패킷 전달 엔진 물리적 인터페이스에 연결됩니다. 패킷 전달 엔진 중 하나가 다운되면 데몬은 라인 카드에 모든 패킷 전달 엔진을 다운으로 표시하고 이 정보를 라우팅 프로토콜 프로세스 및 기타 데몬에 전달합니다. 라우팅 프로토콜 프로세스는 장애가 발생한 패킷 전달 엔진에 고정된 접두사와 중단된 패킷 전달 엔진에 할당된 IPv6 주소에 대해 BGP 철회를 보냅니다. 이 보급 대상은 트래픽을 다른 백업 섀시로 다시 라우팅합니다. 장애가 발생한 패킷 전달 엔진이 다시 작동하면 섀시는 패킷 전달 엔진을 up로 표시하고 라우팅 프로토콜 프로세스를 업데이트합니다. 라우팅 프로토콜 프로세스는 특정 패킷 전달 엔진에 고정된 터널을 라우팅 트래픽에 사용할 수 있는 피어에 대한 BGP 업데이트를 트리거합니다. 대규모 터널 구성의 경우 이 프로세스에 몇 분 정도 걸릴 수 있습니다. 따라서, Ack 메커니즘은 트래픽을 원래 섀시로 전환하는 동안 트래픽 손실을 최소화하도록 시스템에 내장되어 있습니다.

터널 루프백 스트림 Statistics

동적 터널 인프라는 패킷 전달 엔진의 루프백 스트림을 사용하여 캡슐화 후 패킷을 루프합니다. 이 루프백 스트림의 대역폭은 제한적이기 때문에 터널 루프백 스트림의 성능을 모니터링할 필요가 있습니다.

루프백 스트림의 Statistics를 모니터링하려면, 포워딩 속도, 드롭 패킷 속도 및 바이트 속도를 포함하여 집계된 루프백 스트림 Statistics를 표시하는 작동 명령 show pfe statistics traffic detail을 사용합니다.

IPv6 다음 홉 Address로 IPv4 경로를 재분배하는 BGP

릴리스 17.3R1부터 Junos OS 디바이스는 IPv4 트래픽을 IPv6 전용 네트워크를 통해 전달할 수 없습니다. 일반적으로는 IPv4 트래픽을 전달할 수 없습니다. RFC 5549에 설명된 바와 같이 IPv4 트래픽은 CPE 장치에서 IPv4-over-IPv6 게이트웨이로 터널링됩니다. 이러한 게이트웨이는 anycast address를 통해 CPE 디바이스에 공지됩니다. 그런 다음 게이트웨이 디바이스는 원격 고객 구내 장비에 동적 IPv4-over-IPv6 터널을 만들고 트래픽을 조정하기 위해 IPv4 집계 경로를 보급합니다. 프로그래밍 가능한 인터페이스가 있는 경로 리플렉터는 터널 정보를 네트워크에 주입합니다 경로 리플렉터는 IBGP를 통해 게이트웨이 라우터에 연결되며, 게이트웨이 라우터는 IPv6 address를 다음 홉으로 활용하여 호스트 경로의 IPv4 address를 보급합니다.

주:

동적 IPv4-over-IPv6 터널 기능은 Junos OS 릴리스 17.3R1에서 통합 ISSU를 지원하지 않습니다.

IPv6 다음 홉 address로 IPv4 경로를 배포하기 위해 BGP 구성을 시작하기 전에 다음 작업을 합니다.

  1. 디바이스 인터페이스를 구성합니다.

  2. OSPF 또는 기타 IGP 프로토콜을 구성합니다.

  3. MPLS 및 LDP를 구성합니다.

  4. BGP를 구성합니다.

IPv6 다음 홉 address로 IPv4 경로를 배포하기 위한 BGP 구성:

  1. IPv6 피어가 있는 BGP 그룹에 대해 확장된 다음 홉 encoding 옵션을 구성하여 IPv6 세션을 통해 IPv4 address family를 라우팅합니다.
  2. 동적 IPv4-over-IPv6 터널을 구성하고 해당 속성을 정의하여 IPv6-전용 네트워크를 통해 IPv4 트래픽을 전달합니다. IPv4 트래픽은 CPE 장치에서 IPv4-over-IPv6 게이트웨이로 터널링됩니다.
  3. 터널 속성을 구성합니다.

    예를 들어, 다음 속성을 통해 동적 터널 first_tunnel을 구성합니다.

  4. 구성된 동적 터널 속성 프로파일을 접두사 목록 또는 경로 필터에 연결하는 정책을 정의합니다.

    예를 들어, 동적 터널 first_tunnel 속성을 특정 경로 2.2.2.2/32로 향하는 트래픽에만 연관시키려면 dynamic_tunnel_policy 정책을 정의합니다.

  5. 정의된 정책을 내보냅니다.

    예를 들어 구성된 dynamic_tunnel_policy 정책을 내보냅니다.

레이어 2 VPN 및 VPLS 신호 전송 활성화

BGP(Border Gateway Protocol)를 활성화하여 레이어 2 VPN 및 VPLS NLRI 메시지를 전송할 수 있습니다.

VPN 및 VPLS 신호 전송을 활성화하려면 다음과 같은 family 명령문을 포함하십시오.

이 명령문을 포함할 수 있는 계층 수준의 목록은 이 명령문에 대한 요약 섹션을 참조하십시오.

최대 접두사 수를 구성하려면 다음과 같은 prefix-limit 명령문을 포함하십시오.

이 명령문을 포함할 수 있는 계층 수준의 목록은 이 명령문에 대한 요약 섹션을 참조하십시오.

최대 접두사 수를 설정할 경우, 해당 수에 도달하면 메시지가 기록됩니다. teardown 명령문을 포함하면 최대 접두사 수에 도달할 때 세션이 붕괴됩니다. 비율을 지정하면 접두사 수가 지정된 비율에 도달할 때 메시지가 기록됩니다. 세션이 붕괴되면 곧 다시 재설정됩니다. 지정된 시간 동안 또는 영원히 세션이 붕괴된 상태를 유지하려면 idle-timeout 명령문을 포함하십시오. forever를 지정할 경우, clear bgp neighbor 명령을 사용해야만 세션이 재설정됩니다. drop-excess <percentage> 명령문을 포함하고 비율을 지정하면 접두사 수가 지정된 비율을 초과할 때 초과된 경로는 손실됩니다. hide-excess <percentage> 명령문을 포함하고 비율을 지정할 경우에는 접두사 수가 지정된 비율을 초과할 때 초과된 경로가 숨겨집니다. 비율을 수정하면 경로가 자동으로 재평가됩니다.

트래픽 필터링을 위한 BGP 플로우 경로 이해하기

플로우 경로는 IP 패킷에 대한 일치 조건의 합입니다. 플로우 경로는 입력 포워딩 테이블 필터로서(암시적) 설치되며 플로우 사양 NLRI(Network Layer Reachability Information) 메시지를 사용하여 네트워크상에서 전파되어 플로우 라우팅 테이블 instance-name.inetflow.0에 설치됩니다. 패킷은 특정 일치 조건이 맞을 때만 플로우 경로를 통해 이동할 수 있습니다.

플로우 경로와 방화벽 필터는 구성 요소를 기반으로 패킷을 필터링하여 일치하는 패킷에 작업을 수행한다는 점에서 서로 비슷합니다. 플로우 경로가 제공하는 트래픽 필터링 및 속도 제한 기능은 방화벽 필터와 상당히 유사합니다. 또한 플로우 경로를 여러 자율 시스템에 전파할 수도 있습니다.

플로우 경로는 BGP가 플로우 사양 NLRI 메시지를 통해 전파합니다. BGP가 이러한 NLRI를 전파할 수 있게 활성화해야 합니다.

Junos OS 릴리스 15.1부터 기존의 inet-flow 및 inetvpn-flow 제품군에 대해 NSR(Nonstop Active Routing) 지원을 확장하고 draft-ietf-idr-bgp-flowspec-oid-01에 따라 BGP flowspec에 대해 경로 검증 기능을 확장하기 위해 변경 사항이 구현됩니다. 이러한 향상을 위해 두 개의 새로운 명령문이 도입됩니다. enforce-first-asno-install을 참조해 주십시오.

주:

Junos OS 릴리스 16.1부터 IPv6 지원이 BGP 플로우 사양으로 확장되어 IPv6 및 VPN-IPv6 패킷에 대해 트래픽 플로우 사양 규칙을 전파할 수 있습니다. BGP 플로우 사양은 NSR(Nonstop Active Routing) 도중 분산 서비스 거부 공격을 최소화하기 위해 트래픽 필터링 규칙의 조정을 자동화합니다.

Junos OS 릴리스 16.1R1부터 BGP 플로우 사양은 트래픽을 표시하는 extended-community 필터링 작업을 지원합니다. IPv4 트래픽의 경우, Junos OS는 통과하는 IPv4 패킷의 DSCP(DiffServ Code Point) 비트를 확장 커뮤니티의 해당 값으로 수정합니다. IPv6 패킷의 경우에는 Junos OS가 전송되는 IPv6 패킷의 traffic class 필드에서 처음 6비트를 확장 커뮤니티의 해당 값으로 수정합니다.

Junos OS 릴리스 17.1R1부터 BGP는 3세대 FPC(PTX5000의 경우 FPC3-PTX-U2 및 FPC3-PTX-U3, PTX3000의 경우 FPC3-SFF-PTX-U0 및 FPC3-SFF-PTX-U1)가 설치되어 있는 PTX 시리즈 라우터에서 플로우 사양 NLRI(Network Layer Reachability Information) 메시지를 전달할 수 있습니다. 방화벽 필터 정보를 BGP의 일부로 전달하면 AS(Autonomous System) 전반에서 서비스 거부(DOS) 공격으로부터 방화벽 필터를 동적으로 전달할 수 있습니다.

Junos OS 릴리스 17.2R1부터 BGP는 3세대 FPC가 설치되어 있는 PTX1000 라우터에서 플로우 사양 NLRI(Network Layer Reachability Information) 메시지를 전달할 수 있습니다. 방화벽 필터 정보를 BGP의 일부로 전달하면 AS(Autonomous System) 전반에서 서비스 거부(DOS) 공격으로부터 방화벽 필터를 동적으로 전달할 수 있습니다.

cRPD 릴리스 20.3R1부터 BGP 플로우 사양 NLRI를 통해 전파되는 폴리싱 규칙과 플로우 사양은 cRPD 환경에서 Linux Netfilter 프레임워크를 통해 Linux 커널로 다운로드됩니다.

플로우 경로에 대한 일치 조건

플로우 경로에 대해 then 명령문의 작업이 수행되기 전에 패킷이 충족해야 하는 조건을 지정하십시오. from 명령문의 모든 조건이 일치해야 작업이 수행됩니다. 일치 조건을 지정하는 순서는 중요하지 않습니다. 패킷이 용어의 모든 조건과 맞아야 일치 조건이 충족되기 때문입니다.

일치 조건을 구성하려면 [edit routing-options flow] 계층 수준에서 match 명령문을 포함하십시오.

표 1에는 플로우 경로 일치 조건에 대한 설명이 나와 있습니다.

표 1: 플로우 경로 일치 조건

일치 조건

설명

destination prefix prefix-offset number

IP 대상 주소 필드입니다.

prefix-offset 옵션 필드(enhanced-ip 모드를 위해 구성된 업그레이드 버전의 MPC가 있는 Junos 디바이스에서만 제공됨)를 사용하면 Junos OS가 IPv6 접두사를 맞추기 시작하기 전에 건너뛰어야 하는 비트 수를 지정할 수 있습니다.

destination-port number

TCP 또는 사용자 데이터그램 프로토콜(UDP) 대상 포트 필드입니다. 동일한 용어에 portdestination-port 일치 조건을 모두 지정할 수 없습니다.

숫자 값 대신 다음 텍스트 동의어 중 하나를 지정할 수 있습니다(포트 번호도 나열되어 있습니다). afs(1483), bgp(179), biff(512), bootpc(68), bootps(67), cmd(514), cvspserver(2401), dhcp(67), domain(53), eklogin(2105), ekshell(2106), exec(512), finger(79), ftp(21), ftp-data(20), http(80), https(443), ident(113), imap(143), kerberos-sec(88), klogin(543), kpasswd(761), krb-prop(754), krbupdate(760), kshell(544), ldap(389), login(513), mobileip-agent(434), mobilip-mn(435), msdp(639), netbios-dgm(138), netbios-ns(137), netbios-ssn(139), nfsd(2049), nntp(119), ntalk(518), ntp(123), pop3(110), pptp(1723), printer(515), radacct(1813), radius(1812), rip(520), rkinit(2108), smtp(25), snmp(161), snmptrap(162), snpp(444), socks(1080), ssh(22), sunrpc(111), syslog(514), tacacs-ds(65), talk(517), telnet(23), tftp(69), timed(525), who(513), xdmcp(177), zephyr-clt(2103) 또는 zephyr-hm(2104)

dscp number

DSCP(Differentiated Services Code Point)입니다. DiffServ 프로토콜은 IP 헤더의 서비스 유형(ToS) 바이트를 사용합니다. 이 바이트의 가장 중요한 6비트가 DSCP를 구성합니다.

DSCP는 16진수 또는 10진수 형식으로 지정할 수 있습니다.

flow-label numeric-expression

플로우 레이블 값을 일치시킵니다. 이 필드 값의 범위는 0 ~ 1048575입니다.

이 일치 조건은 enhanced-ip 모드를 위해 구성된 업그레이드 버전의 MPC가 있는 Junos 디바이스에서만 지원됩니다. 이 일치 조건은 IPv4에 대해 지원되지 않습니다.

fragment type

단편화된 조각 유형의 필드입니다. 키워드는 연관된 조각 유형별로 그룹화됩니다.

  • dont-fragment

    주:

    이 옵션은 IPv6에 대해 지원되지 않습니다.

  • first-fragment

  • is-fragment

  • last-fragment

  • not-a-fragment

이 일치 조건은 enhanced-ip 모드를 위해 구성된 업그레이드 버전의 MPC가 있는 Junos OS 디바이스에서만 지원됩니다.

icmp-code numbericmp6-code icmp6-code-value;

ICMP 코드 필드입니다. 이 값 또는 키워드는 icmp-type보다 더 구체적인 정보를 제공합니다. 이 값의 의미는 연관된 icmp-type 값에 따라 달라지기 때문에 icmp-code와 함께 icmp-type을 지정해야 합니다.

숫자 값을 대신해 다음 텍스트 동의어 중 하나를 지정할 수 있습니다(필드 값도 나열되어 있음). 키워드는 ICMP 유형별로 그룹화되어 있으며 이는 다음과 관련이 있습니다.

  • 매개변수 문제: ip-header-bad (0), required-option-missing(1)

  • 리디렉션: redirect-for-host(1), redirect-for-network(0), redirect-for-tos-and-host(3), redirect-for-tos-and-net (2)

  • 시간 초과: ttl-eq-zero-during-reassembly(1), ttl-eq-zero-during-transit(0)

  • 도달 불가: communication-prohibited-by-filtering(13), destination-host-prohibited(10), destination-host-unknown(7), destination-network-prohibited(9), destination-network-unknown(6), fragmentation-needed(4), host-precedence-violation(14), host-unreachable(1), host-unreachable-for-TOS(12), network-unreachable(0), network-unreachable-for-TOS(11), port-unreachable(3), precedence-cutoff-in-effect(15), protocol-unreachable(2), source-host-isolated(8), source-route-failed(5)

icmp-type number icmp6-type icmp6-type-value

ICMP 패킷 유형 필드입니다. 일반적으로 이 일치 조건은 현재 포트에서 어떤 프로토콜이 사용되고 있는지 알아내기 위해 protocol 일치 명령문과 함께 지정합니다.

숫자 값 대신 다음 텍스트 동의어 중 하나를 지정할 수 있습니다(필드 값도 나열되어 있음). echo-reply(0), echo-request(8), info-reply(16), info-request(15), mask-request(17), mask-reply(18), parameter-problem(12), redirect(5), router-advertisement(9), router-solicit(10), source-quench(4), time-exceeded(11), timestamp(13), timestamp-reply(14) 또는 unreachable (3).

packet-length number

IP 패킷의 총 길이입니다.

port number

TCP 또는 UDP 원본 또는 대상 포트 필드입니다. 동일한 용어에서 port 일치 조건을 destination-port 또는 source-port 일치 조건과 함께 지정할 수는 없습니다.

숫자 값 대신, destination-port에 나열된 텍스트 동의어 중 하나를 지정할 수 있습니다.

protocol number

IP 프로토콜 필드입니다. 숫자 값 대신 다음 텍스트 동의어 중 하나를 지정할 수 있습니다(필드 값도 나열되어 있음). ah, egp(8), esp(50), gre(47), icmp(1), igmp(2), ipip(4), ipv6(41), ospf(89), pim(103), rsvp(46), tcp(6) 또는 udp (17)

이 일치 조건은 enhanced-ip 모드를 위해 구성된 업그레이드 버전의 MPC가 있는 Junos 디바이스에서만 IPv6에 대해 지원됩니다.

source prefixprefix-offset number

IP 원본 주소 필드입니다.

prefix-offset 옵션 필드(enhanced-ip 모드를 위해 구성된 업그레이드 버전의 MPC가 있는 Junos 디바이스에서만 제공됨)를 사용하면 Junos OS가 IPv6 접두사를 맞추기 시작하기 전에 건너뛰어야 하는 비트 수를 지정할 수 있습니다.

source-port number

TCP 또는 UDP 원본 포트 필드입니다. 동일한 용어에 portsource-port 일치 조건을 지정할 수 없습니다.

숫자 필드 대신 destination-port 아래에 나열된 텍스트 동의어 중 하나를 지정할 수 있습니다.

tcp-flag type

TCP 헤더 형식입니다.

플로우 경로에 대한 작업

패킷이 플로우 경로에 구성해둔 조건과 일치할 경우 작업을 지정할 수 있습니다. 작업을 구성하려면 [edit routing-options flow] 계층 수준에서 then 명령문을 포함하십시오.

표 2에는 플로우 경로 작업에 대한 설명이 나와 있습니다.

표 2: 플로우 경로 작업 수정자

작업 또는 작업 수정자

설명

행동

accept

패킷을 수락합니다. 이는 기본 설정입니다.

discard

인터넷 제어 메시지 프로토콜(ICMP) 메시지를 보내지 않고 조용히 패킷을 버립니다.

community

경로의 모든 커뮤니티를 지정된 커뮤니티로 대체합니다.

mark value

이 플로우와 일치하는 트래픽에 대해 DSCP 값을 설정합니다. 0 ~ 63의 값을 지정합니다. 이 작업은 enhanced-ip 모드를 위해 구성된 업그레이드 버전의 MPC가 있는 Junos 디바이스에서만 지원됩니다.

next term

평가를 위해 다음 일치 조건으로 계속 진행합니다.

routing-instance extended-community

패킷이 전달되는 라우팅 인스턴스를 지정합니다.

rate-limit bits-per-second

플로우 경로에서 대역폭을 제한합니다. 초당 비트 수(bps)로 제한을 표현합니다. Junos OS 릴리스 16.1R4부터 속도 제한 범위는 [0 ~ 1000000000000]입니다.

sample

플로우 경로에서 트래픽을 샘플링합니다.

플로우 경로 검증

Junos OS는 검증 절차를 이용해 검증한 플로우 라우팅 테이블에만 플로우 경로를 설치합니다. 라우팅 엔진은 플로우 라우팅 테이블에 경로를 설치하기 전에 검증을 수행합니다.

BGP NLRI(Network Layer Reachability Information) 메시지를 이용해 수신된 플로우 경로는 플로우 기본 인스턴스 라우팅 테이블 instance.inetflow.0에 설치되기 전에 검증됩니다. 검증 절차는 draft-ietf-idr-flow-spec-09.txt, 플로우 사양 규칙의 보급에 설명되어 있습니다. BGP NLRI 메시지를 사용하여 플로우 경로에 대한 확인 프로세스를 우회하고 자체 특정 내보내기 정책을 사용할 수 있습니다.

검증 작업을 추적하려면 [edit routing-options flow] 계층 수준에서 validation 명령문을 포함하십시오.

BGP 플로우 사양 알고리즘 버전 7 이상에 대한 지원

기본적으로 Junos OS는 BGP 플로우 사양 초안의 버전 6에 명시된 용어 순서 알고리즘을 사용합니다. Junos OS 릴리스 10.0 이상에서는 BGP 플로우 사양의 버전 7에 처음 명시되어 RFC 5575, 플로우 사양 규칙의 보급을 통해 지원되는 용어 순서 알고리즘을 준수하도록 라우터를 구성할 수 있습니다.

모범-사례:

Junos OS는 BGP 플로우 사양 초안의 버전 7에 처음 명시된 용어 순서 알고리즘을 사용하도록 구성하시는 것이 좋습니다. 또한 Junos OS가 한 개 라우터에서 구성된 모든 라우팅 인스턴스에 동일한 용어 순서 알고리즘을 사용하도록 구성하실 것을 권장합니다.

BGP가 인터넷 초안 버전 7에서 처음 명시된 플로우 사양 알고리즘을 사용하도록 구성하려면 [edit routing-options flow term-order] 계층 수준에서 standard 명령문을 포함하십시오.

버전 6에 명시된 용어 순서 알고리즘을 사용하도록 되돌리려면 [edit routing-options flow term-order] 계층 수준에서 legacy 명령문을 포함하십시오.

주:

구성된 용어 순서는 로컬에서만 적용됩니다. 즉, 용어 순서가 원격 BGP 피어로 전송되는 플로우 경로와 함께 전파되지 않고, 원격 BGP 피어의 용어 순서는 전적으로 자체의 용어 순서 구성에 따라 결정됩니다. 따라서 원격 피어의 용어 순서 구성을 모른다면 순서의 영향을 받는 작업 next term을 구성할 때 주의하셔야 합니다. 로컬의 next term은 원격 피어에서 구성된 next term과 다를 수 있습니다.

주:

Junos OS Evolved에서 next term은 작업의 마지막 용어로 표시될 수 없습니다. next term이 작업으로 지정되었지만 구성된 일치 조건이 전혀 없는 필터 용어는 지원되지 않습니다.

Junos OS 릴리스 16.1부터 특정 인터페이스에서 수신되는 트래픽에 flowspec 필터를 적용하지 않는 옵션을 사용할 수 있습니다. 이러한 특정 인터페이스에서 수신되는 모든 패킷을 수락하는 flowspec 필터의 시작 부분에 새로운 용어가 추가됩니다. 이 새로운 용어는 포워딩 테이블 필터에 첨부된 용어의 제외 목록을 플로우 사양 필터의 일부로 생성하는 변수입니다.

flowspec 필터를 특정 인터페이스에서 수신되는 트래픽에 적용되지 않도록 제외하려면 먼저 [edit interfaces] 계층 수준에서 패밀리 inet 필터 그룹 group-id 명령문을 포함하여 해당 인터페이스에서 group-id를 구성한 다음 [edit routing-options] 계층 수준에서 flow interface-group group-id exclude 명령문을 포함하여 이 flowspec 필터를 해당 인터페이스 그룹과 연결해야 합니다. set routing-options flow interface-group group-id 명령문으로 라우팅 인스턴스당 한 개의 group-id만 구성할 수 있습니다.

예: 플로우 사양 경로를 전달하기 위한 BGP 활성화

이 예제는 BGP가 플로우 사양 네트워크 레이어 도달 가능성 정보(NLRI) 메시지를 전송하도록 허용하는 방법을 보여줍니다.

요구 사항

시작하기 전에:

  • 디바이스 인터페이스를 구성합니다.

  • 내부 게이트웨이 프로토콜(IGP)을 구성합니다.

  • BGP를 구성합니다.

  • 라우팅 테이블에서 BGP로 경로(예: 직접 경로 또는 IGP 경로)를 내보내는 라우팅 정책을 구성합니다.

개요

방화벽 필터 정보를 BGP의 일부로 전달하면 AS(Autonomous System) 전반에서 서비스 거부(DOS) 공격으로부터 방화벽 필터를 동적으로 전달할 수 있습니다. 플로우 경로는 플로우 사양 NLRI에 포함되며 네트워크 또는 가상 프라이빗 네트워크(VPN)를 통해 전달되며 필터와 유사한 정보를 공유합니다. 플로우 경로는 패킷에 대한 결과 작업과 일치 조건의 어그리게이션입니다. 이는 방화벽과 같은 트래픽 필터링 및 속도 제한 기능을 제공합니다. 유니캐스트 플로우 경로는 기본 인스턴스, VPN 라우팅 및 포워딩(VRF) 인스턴스, 가상 라우터 인스턴스에 지원됩니다.

내보내기 및 가져오기 정책은 패밀리 inet flow 또는 패밀리 inet-vpn flow NLRI에 적용 가능하며, 허용 및 보급된 플로우 경로에 영향이 발생합니다. 이는 내보내기 및 가져오기 정책이 다른 BGP 패밀리에 적용되는 방식과 유사합니다. 유일한 차이가 있다면 플로우 정책 구성이 rib inetflow.0명령문을 포함해야 한다는 점입니다. 이 명령 명령문을 통해 해당 정책이 플로우 경로에 적용됩니다. then reject해당 정책에 then accept또는 명령문만이 포함되며 from명령문이 포함되지 않을 경우 이 규칙에 예외가 발생합니다. 이후 해당 정책은 IP 유니캐스트 및 IP 플로우를 비롯한 모든 경로에 영향을 미칩니다.

플로우 경로 필터는 수행할 작업에 이어지는 일치하는 기준 집합과 함께 먼저 라우터에 정적으로 구성됩니다. 이후, family inet unicast 이외에도 family inet flow(또는 family inet-vpn flow)이(가) 이 BGP 활성화 디바이스 및 그 피어 간에 구성됩니다.

기본적으로, 정적 구성된 플로우 경로(방화벽 필터)는 family inet flow 또는 family inet-vpn flow NLRI를 지원하는 다른 BGP 활성화 디바이스에 보급됩니다.

수신 BGP 디바이스 장치는 방화벽 필터를 플로우 라우팅 테이블instance-name.inetflow.0에 설치하기에 앞서 확인 프로세스를 수행합니다. 확인 절차는 RFC 5575(플로우 사양 규칙의 보급)에 설명되어 있습니다.

수신 BGP 활성화 디바이스는 다음 기준을 통과하는 플로우 경로를 허용합니다:

  • 플로우 경로의 원본자가 경로에 내장된 목적지 주소에 가장 일치하는 유니캐스트 경로의 원본자와 일치할 경우.

  • 플로우 경로의 목적지 주소와 비교했을 때 더 구체적인 유니캐스트 경로가 없고, 따라서 다른 다음 홉 AS(Autonomous System)로부터 활성 경로를 받은 경우.

첫 번째 기준은 플로우 경로에 내장된 목적지 주소에 대한 유니캐스트 포워딩에서 사용되는 다음 홉을 통해 필터가 보급되도록 보장합니다. 예를 들어, 플로우 경로가 10.1.1.1, proto=6, port=80으로 주어진 경우, 수신 BGP 디바이스는 목적지 접두사 10.1.1.1/32와 일치하는 유니캐스트 경로 테이블 내의 더 구체적인 유니캐스트 경로를 선택합니다. 10.1/16 및 10.1.1/24를 포함하는 유니캐스트 라우팅 테이블에서, 후자는 비교할 유니캐스트 경로로 선택됩니다. 활성화된 유니캐스트 경로 항목만이 고려됩니다. 이는 최상의 유니캐스트 경로 원본자에 의해 보급되는 경우 플로우 경로가 유효하다는 개념을 따릅니다.

두 번째 기준은 주어진 주소 블록이 다른 항목에 할당되는 상황을 해결합니다. 어그리게이션 경로인 가장 일치하는 유니캐스트 경로를 해결하는 플로우는 다른 다음 홉 AS(Autonomous System)로 라우팅되는 더 구체적인 경로를 적용하지 않는 경우에만 허용됩니다.

BGP NLRI 메시지를 사용하여 플로우 경로에 대한 확인 프로세스를 우회하고 자체 특정 내보내기 정책을 사용할 수 있습니다. BGP가 플로우 사양 NLRI 메시지를 전달하면, 패킷이 정책에 의해 허용된 이후에는 [edit protocols bgp group group-name family inet flow] 계층 수준의 no-validate 명령문이 플로우 경로 확인 절차를 생략합니다. 내보내기 정책이 목적지 주소 및 커뮤니티, 다음 홉 및 AS 경로 등의 경로 속성에 일치하도록 구성할 수 있습니다. 패킷이 플로우 경로에 구성해둔 조건과 일치할 경우 작업을 지정할 수 있습니다. 작업을 구성하려면 [edit routing-options flow] 계층 수준에서 명령문을 포함하십시오. 플로우 사양 NLRI 유형은 RFC 5575에 정의된 대로 목적지 접두사, 원본 접두사, 프로토콜 및 포트 등의 구성 요소를 포함합니다. 내보내기 정책은 플로우 사양 NLRI 내의 경로 속성 및 목적지 주소를 사용하여 인바운드 경로를 필터링할 수 있습니다. 내보내기 정책은 RFC 5575 내 다른 구성 요소를 필터링할 수 없습니다.

플로우 사양은 필요한 프로토콜 확장을 정의하여 IPv4 유니캐스트 및 VPN 유니캐스트 필터링의 더 일반적인 적용을 해결합니다. 동일한 메커니즘은 재사용될 수 있으며, 새로운 일치 기준이 다른 BGP 주소 패밀리(예: IPv6 unicast)에 대한 주소 유사 필터링에 추가됩니다.

플로우 경로가 inetflow.0 테이블에 설치된 이후에는 커널 내 방화벽 목록에도 추가됩니다.

라우터에 한하여 플로우 사양 NLRI 메시지는 VPN에서 지원됩니다. VPN은 NLRI 내 route target 확장 커뮤니티를 내보내기 정책과 비교합니다. 일치하는 항목이 있을 경우, VPN은 해당 플로우 경로를 사용하여 패킷 트래픽을 필터링하고 속도를 제한합니다. 수신된 플로우 경로는 플로우 라우팅 테이블instance-name.inetflow.0에 설치됩니다. 플로우 경로는 또한 VPN 네트워크 전체에 전달되고 VPN 간에 공유됩니다. 멀티프로토콜 BGP(MP-BGP)가 inet-vpn 주소 패밀리에 대한 플로우 사양 NLRI를 전송하도록 하려면 flow 문을 [edit protocols bgp group group-name family inet-vpn] 계층 수준에 포함합니다. VPN 플로우 경로는 기본 인스턴스에서만 지원됩니다. 패밀리 inet-vpn을(를) 통한 VPN에 대한 플로우 경로는 자동 확인되지 않으므로, no-validate문은 [edit protocols bgp group group-name family inet-vpn] 계층 수준에서 지원되지 않습니다. 플로우 경로가 단일 AS 내에서 디바이스 간에 로컬 구성된 경우에는 확인이 필요하지 않습니다.

내보내기 및 가져오기 정책은 다른 BGP 패밀리에 내보내기 및 가져오기 정책이 적용되는 방식과 유사하게 허용되거나 광고되는 플로우 경로에 영향을 미치는 family inet flow또는 family inet-vpn flowNLRI에 적용될 수 있습니다. 유일한 차이가 있다면 플로우 정책 구성이 from rib inetflow.0 명령문을 포함해야 한다는 점입니다. 이 명령 명령문을 통해 해당 정책이 플로우 경로에 적용됩니다. then reject해당 정책에 then accept또는 명령문만이 포함되며 from명령문이 포함되지 않을 경우 이 규칙에 예외가 발생합니다. 이후 해당 정책은 IP 유니캐스트 및 IP 플로우를 비롯한 모든 경로에 영향을 미칩니다.

이 예제는 다음의 가져오기 정책을 구성하는 방법을 보여줍니다:

  • 경로 필터로 지정된 플로우 경로의 보급을 허용하는 정책. 10.13/16 블록이 적용되는 플로우 경로만이 보급됩니다. 이 정책은 유니캐스트 경로에 영향을 주지 않습니다.

  • 모든 유니캐스트 및 플로우 경로가 인접 라우터에 보급되도록 허용하는 정책.

  • 모든 경로(유니캐스트 또는 플로우)가 인접 라우터에 보급되도록 허용하지 않는 정책.

토폴로지

구성

정적 플로우 경로 구성하기

CLI 빠른 구성

이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 바꾸고 [edit] 계층 수준에서 명령을 CLI로 복사해 붙여 넣습니다.

단계별 절차

다음 예는 구성 계층에서 다양한 수준의 탐색이 필요합니다. CLI 탐색 관련 정보는 Junos OS CLI 사용자 가이드구성 모드에서의 CLI 편집기 사용을 참조하십시오.

BGP 피어 세션 구성:

  1. 일치 조건을 구성합니다.

  2. 작업을 구성합니다.

  3. (권장) 플로우 사양 알고리즘에서는 표준 기반 기간 순서를 구성합니다.

    플로우 사양 RFC 초안 버전 6에 명시된 대로, 기본 기간 순서 알고리즘에서는 덜 구체적인 일치 조건의 기간이 항상 더 구체적인 일치 조건의 기간보다 먼저 평가됩니다. 따라서 더 구체적인 일치 조건이 있는 기간은 평가되지 않습니다. RFC 5575의 Version 7은 덜 구체적인 일치 조건에 앞서 더 구체적인 일치 조건이 평가되도록 해당 알고리즘을 개정했습니다. 이전 버전과의 호환성을 위해, 신규 알고리즘이 더 적절하더라도 Junos OS에서의 기본 동작은 변하지 않습니다. 신규 알고리즘을 사용하려면 term-order standard 명령문을 포함하십시오. 이 명령문은 Junos OS 릴리스 10.0 이상에서 지원됩니다.

결과

구성 모드에서 show routing-options 명령을 입력하여 구성을 확인합니다. 출력 결과가 의도한 구성대로 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정하십시오.

디바이스 구성을 마쳤으면 구성 모드에서 commit을 입력합니다.

경로 필터로 지정된 플로우 경로 보급하기

CLI 빠른 구성

이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 바꾸고 [edit] 계층 수준에서 명령을 CLI로 복사해 붙여 넣습니다.

단계별 절차

다음 예는 구성 계층에서 다양한 수준의 탐색이 필요합니다. CLI 탐색 관련 정보는 Junos OS CLI 사용자 가이드구성 모드에서의 CLI 편집기 사용을 참조하십시오.

BGP 피어 세션 구성:

  1. BGP 그룹을 구성합니다.

  2. 플로우 정책 구성합니다.

  3. 로컬 AS(Autonomous System) 번호를 구성합니다.

결과

구성 모드에서 show protocols, show policy-optionsshow routing-options 명령을 입력하여 구성을 확인합니다. 출력 결과가 의도한 구성대로 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정하십시오.

디바이스 구성을 마쳤으면 구성 모드에서 commit을 입력합니다.

유니캐스트 및 플로우 경로 보급하기

CLI 빠른 구성

이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 바꾸고 [edit] 계층 수준에서 명령을 CLI로 복사해 붙여 넣습니다.

단계별 절차

다음 예는 구성 계층에서 다양한 수준의 탐색이 필요합니다. CLI 탐색 관련 정보는 Junos OS CLI 사용자 가이드구성 모드에서의 CLI 편집기 사용을 참조하십시오.

BGP 피어 세션 구성:

  1. BGP 그룹을 구성합니다.

  2. 플로우 정책 구성합니다.

  3. 로컬 AS(Autonomous System) 번호를 구성합니다.

결과

구성 모드에서 show protocols, show policy-optionsshow routing-options 명령을 입력하여 구성을 확인합니다. 출력 결과가 의도한 구성대로 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정하십시오.

디바이스 구성을 마쳤으면 구성 모드에서 commit을 입력합니다.

유니캐스트 또는 플로우 경로 보급하지 않기

CLI 빠른 구성

이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 바꾸고 [edit] 계층 수준에서 명령을 CLI로 복사해 붙여 넣습니다.

단계별 절차

다음 예는 구성 계층에서 다양한 수준의 탐색이 필요합니다. CLI 탐색 관련 정보는 Junos OS CLI 사용자 가이드구성 모드에서의 CLI 편집기 사용을 참조하십시오.

BGP 피어 세션 구성:

  1. BGP 그룹을 구성합니다.

  2. 플로우 정책 구성합니다.

  3. 로컬 AS(Autonomous System) 번호를 구성합니다.

결과

구성 모드에서 show protocols, show policy-optionsshow routing-options 명령을 입력하여 구성을 확인합니다. 출력 결과가 의도한 구성대로 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정하십시오.

디바이스 구성을 마쳤으면 구성 모드에서 commit을 입력합니다.

라우팅 테이블에 설치된 플로우 경로 수 제한하기

CLI 빠른 구성

이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 바꾸고 [edit] 계층 수준에서 명령을 CLI로 복사해 붙여 넣습니다.

단계별 절차

다음 예는 구성 계층에서 다양한 수준의 탐색이 필요합니다. CLI 탐색 관련 정보는 Junos OS CLI 사용자 가이드구성 모드에서의 CLI 편집기 사용을 참조하십시오.

주:

경로 제한을 적용하면 예측 불가능한 동적 경로 프로토콜 동작이 발생할 수 있습니다. 예를 들어 제한에 도달하고 경로가 거부되면, 경로의 수가 제한선 아래로 떨어진 이후에는 BGP가 거부된 경로의 재설치를 반드시 시도하지는 않습니다. 이 문제를 해결하기 위해 BGP 세션을 삭제해야 할 수도 있습니다.

플로우 경로를 제한하려면:

  1. inetflow.0 테이블에 설치된 접두사 수에 대한 상한선을 지정합니다.

  2. 50%의 임곗값을 설정하여, 500개의 경로가 설치됐을 때 시스템 로그에 경고가 로그인됩니다.

결과

구성 모드에서 show routing-options 명령을 입력하여 구성을 확인합니다. 출력 결과가 의도한 구성대로 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정하십시오.

디바이스 구성을 마쳤으면 구성 모드에서 commit을 입력합니다.

BGP 피어 세션에서 수신되는 접두사 수 제한하기

CLI 빠른 구성

이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 바꾸고 [edit] 계층 수준에서 명령을 CLI로 복사해 붙여 넣습니다.

주:

teardown <percentage> ,drop-excess <percentage> 또는 hide-excess<percentage> 문 옵션을 한 번에 하나씩 포함할 수 있습니다.

단계별 절차

다음 예는 구성 계층에서 다양한 수준의 탐색이 필요합니다. CLI 탐색 관련 정보는 Junos OS CLI 사용자 가이드구성 모드에서의 CLI 편집기 사용을 참조하십시오.

특정 인접 디바이스에 대한 접두사 제한을 구성하면 어떤 피어가 얼마나 많은 플로우 경로를 보급할 수 있는지를 제어하는 데 있어 예측 가능성을 높일 수 있습니다.

접두사 수를 제한하려면:

  1. 인접 10.12.99.2에서 BGP 경로 제한을 1000개로 설정합니다.

  2. 세션 또는 접두사가 제한에 도달하면 인접 세션 또는 접두사가 teardown <percentage>,drop-excess <percentage> 또는 hide-excess<percentage>문 옵션을 수행하도록 구성합니다.

    teardown <percentage>문을 지정하고 비율을 지정하면 접두사의 수가 지정된 비율에 도달할 시 메시지가 기록됩니다. 세션이 종료된 이후에는 idle-timeout 명령문을 포함하지 않을 경우 세션이 짧은 시간 내에 다시 설정됩니다.

    drop-excess <percentage>문을 지정하고 비율을 지정하면 접두사의 수가 해당 비율을 초과할 시 액세스 경로가 감소합니다

    hide-excess <percentage>문을 지정하고 비율을 지정하면 접두사의 수가 해당 비율을 초과할 시 액세스 경로가 숨겨집니다.

결과

구성 모드에서 show protocols 명령을 입력하여 구성을 확인합니다. 출력 결과가 의도한 구성대로 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정하십시오.

디바이스 구성을 마쳤으면 구성 모드에서 commit을 입력합니다.

검증

구성이 올바르게 작동하고 있는지 확인합니다.

NLRI 확인하기

목적

neighbor에 활성화된 NLRI를 보십시오.

작업

운영 모드에서 show bgp neighbor 10.12.99.5 명령을 실행합니다. 출력에서 inet-flow을 찾습니다.

경로 확인

목적

플로우 경로를 보십시오. 샘플 출력에는 BGP에서 학습된 플로우 경로 및 정적으로 구성된 플로우 경로가 표시됩니다.

로컬 구성([edit routing-options flow] 계층 수준에서 구성)된 플로우 경로의 경우, 경로는 플로우 프로토콜에 의해 설치됩니다. 따라서, show route table inetflow.0 또는 show route table instance-name.inetflow.0와 같이 라우팅 인스턴스의 이름이 instance-name인 테이블을 지정하여 플로우 경로를 표시할 수 있습니다. 또는, show route protocol flow 명령을 실행하여 여러 라우팅 인스턴스에 로컬 구성된 모든 플로우 경로를 표시할 수 있습니다.

플로우 경로가 로컬 구성되지 않았으나 라우터의 BPG 피어에서 수신되는 경우, 이 플로우 경로는 BGP에 의해 라우팅 테이블에 설치됩니다. 테이블을 지정하거나 모든 BGP 경로(플로우 및 비 플로우)를 표시하는 show route protocol bgp을(를) 실행하여 플로우 경로를 표시할 수 있습니다.

작업

운영 모드에서 show route table inetflow.0 명령을 실행합니다.

의미

플로우 경로는 방화벽 필터의 지속 기간을 나타냅니다. 플로우 경로 구성 시에는 일치 조건 및 작업을 지정해야 합니다. 일치 속성에서는 원본 주소, 목적지 주소 및 포트와 프로토콜 등의 기타 한정자를 일치시킬 수 있습니다. 여러 일치 조건을 포함하는 단일 플로우 경로의 경우, 모든 일치 조건은 해당 경로의 접두사 필드에 요약되어 있습니다. show route 명령을 플로우 경로에 발행하면, 해당 경로의 접두사 필드가 모든 일치 조건과 함께 표시됩니다. 10.12.44.1,*은(는) 일치하는 조건이 match destination 10.12.44.1/32임을 의미합니다. 출력의 접두사가 *,10.12.44.1인 경우에는 일치 조건이 match source 10.12.44.1/32였음을 의미합니다. 일치하는 조건에 원본 및 목적지이 모두 포함된 경우, 별표는 주소로 대체됩니다.

용어 term-order 번호는 방화벽 필터에서 평가된 기간(플로우 경로)의 시퀀스를 나타냅니다. show route extensive 명령은 각 기간(경로)의 작업을 표시합니다.

플로우 검증 확인

목적

플로우 경로 정보를 표시합니다.

작업

운영 모드에서 show route flow validation detail 명령을 실행합니다.

방화벽 필터 확인하기

목적

커널에 설치된 방화벽 필터를 표시합니다.

작업

운영 모드에서 show firewall 명령을 실행합니다.

허용된 플로우 경로 수 초과 시 시스템 로깅 확인하기

목적

라우팅 테이블에 설치된 플로우 경로 수 제한하기에 설명된 대로 설치된 플로우 경로의 수에 대한 제한을 구성하면 임곗값 도달 시 시스템 로그 메시지를 확인하십시오.

작업

운영 모드에서 show log <message> 명령을 실행합니다.

BGP 피어링 세션에서 수신된 접두사의 수 초과 시 시스템 로깅 확인하기

목적

BGP 피어 세션에서 수신되는 접두사 수 제한하기에 설명된 대로 설치된 플로우 경로의 수에 대한 제한을 구성하면 임곗값 도달 시 시스템 로그 메시지를 확인하십시오.

작업

운영 모드에서 show log message 명령을 실행합니다.

teradown <percentage>문 옵션을 지정할 경우,

drop-excess <percentage>문 옵션을 지정할 경우,

hide-excess <percentage>문 옵션을 지정할 경우,

예: IPv6 flow 사양 경로를 전달하도록 BGP 구성

이 예에서는 트래픽 필터링을 위해 IPv6 flow 사양을 구성하는 방법에 대해 보여줍니다. BGP flow 사양은 서비스 거부 공격을 완화하기 위해 트래픽 필터링 규칙의 도메인 사이와 도메인 내의 조정을 자동화하는 데 사용할 수 있습니다.

요구 사항

이 예에서 사용되는 하드웨어 및 소프트웨어 구성 요소는 다음과 같습니다.

  • MX 시리즈 라우터 2개

  • Junos OS 릴리스 16.1 이상

BGP가 IPv6 flow 사양 경로를 전달하도록 구성하려면:

  1. 디바이스 인터페이스에서 IP 주소를 구성합니다.

  2. BGP를 구성합니다.

  3. 라우팅 테이블에서 BGP로 경로(예: 정적 경로, direct 경로 또는 IGP 경로)를 내보내는 라우팅 정책을 구성합니다.

개요

flow 사양은 서비스 거부 공격에 대한 보호를 제공하고 소스 근처에서 대역폭을 소비하고 중단하는 불량 트래픽을 제한합니다. 이전 Junos OS 릴리스에서 flow 사양 규칙은 네트워크 레이어 연결성 정보로 IPv4 over BGP에 전파되었습니다. Junos OS 릴리스 16.1부터 flow 사양 기능은 IPv6 family에서 지원되며, IPv6 및 IPv6 VPN에 대한 트래픽 흐름 사양 규칙을 전파할 수 있습니다.

토폴로지

그림 7은 샘플 토폴로지를 표시합니다. 라우터 R1과 라우터 R2는 서로 다른 AS(Autonomous System)에 속합니다. IPv6 flow 사양은 라우터 R2에서 구성됩니다. 유입되는 모든 트래픽은 flow 사양 조건을 기준으로 필터링되며, 지정된 조치에 따라 트래픽이 다르게 처리됩니다. 이 예에서 flow 사양 조건과 일치하는 abcd::11:11:11:10/128로 향하는 모든 트래픽은 삭제되며, abcd::11:11:11:30/128로 향하고 flow 사양 조건과 일치하는 트래픽은 허용됩니다.

그림 7: IPv6 flow 경로를 전달하도록 BGP 구성IPv6 flow 경로를 전달하도록 BGP 구성

구성

CLI 빠른 구성

이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 바꾸고 [edit] 계층 수준에서 명령을 CLI로 복사해 붙여 넣은 다음, 구성 모드에서 commit을 입력합니다.

라우터 R1

라우터 R2

라우터 R2 구성하기

단계별 절차

다음 예는 구성 계층에서 다양한 수준의 탐색이 필요합니다. CLI 탐색에 관한 정보는 CLI 사용자 가이드에서 구성 모드에서 CLI 편집기 사용을 참조하십시오.

다음을 참조하여 라우터 R2를 구성하십시오:

주:

적절한 인터페이스 이름, 주소, 기타 매개 변수를 수정한 후 라우터 R1에 이 절차를 반복합니다.

  1. IPv6 주소로 인터페이스를 구성합니다.

  2. IPv6 루프백 주소를 구성합니다.

  3. 라우터 ID 및 AS(Autonomous System) 번호를 구성합니다.

  4. 라우터 R1과 라우터 R2간에 EBGP 피어링 세션을 구성합니다.

  5. 정적 경로와 다음 홉을 구성합니다. 따라서 이 예에서 기능을 확인할 수 있도록 경로가 라우팅 테이블에 추가됩니다.

  6. flow 사양 조건을 지정합니다.

  7. 지정된 일치 조건과 일치하는 패킷을 삭제하도록 discard 조치를 구성합니다.

  8. flow 사양 조건을 지정합니다.

  9. 지정된 일치 조건과 일치하는 패킷을 수락하도록 accept 조치를 구성합니다.

  10. BGP가 정적 경로를 수락하도록 정책을 정의합니다.

결과

구성 모드에서 show interfaces, show protocols, show routing-optionsshow policy-options 명령을 입력하여 구성을 확인합니다. 출력 결과가 의도한 구성대로 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정하십시오.

검증

구성이 올바르게 작동하고 있는지 확인합니다.

inet6flow 테이블에서 IPv6 flow 사양 경로의 존재 확인

목적

라우터 R1과 R2의 inet6flow 테이블에 경로를 표시하고 해당 BGP가 flow 경로를 학습했는지 확인합니다.

작업

운영 모드의 라우터 R1에서 show route table inet6flow.0 extensive 명령을 실행합니다.

운영 모드의 라우터 R4에서 show route table inet6flow.0 extensive 명령을 실행합니다.

의미

inet6flow 테이블에 abcd::11:11:11:10/128 및 abcd::11:11:11:30/128 경로가 있으면 BGP가 flow 경로를 학습했음을 확인하는 것입니다.

BGP 요약 정보 확인

목적

BGP 구성이 올바른지 확인합니다.

작업

운영 모드의 라우터 R1과 R2에서 show bgp summary 명령을 실행합니다.

의미

inet6.0 테이블에 BGP 인접 라우터 주소가 포함되어 있고 피어링 세션이 BGP 인접 라우터로 구축되었는지 확인합니다.

플로우 검증 확인

목적

플로우 경로 정보를 표시합니다.

작업

운영 모드의 라우터 R1에서 show route flow validation 명령을 실행합니다.

의미

출력 시 inet6.0 테이블에 flow 경로를 표시합니다.

IPv6 경로의 flow 사양 확인

목적

지정된 flow 사양 경로를 기반으로 삭제 및 수락된 패킷 수를 표시합니다.

작업

운영 모드의 라우터 R4에서 show firewall filter_flowspec_default_inet6_ 명령을 실행합니다.

의미

출력 시 abcd::11:11:11:10/128로 향하는 패킷이 삭제되고 abcd::11:11:11:11:30/128 경로에 88826개의 패킷이 수락되었음을 나타냅니다.

디도스(DDoS) 트래픽 필터를 위해 IP로의 BGP 플로우 사양 작업 리디렉션 구성

Junos OS 릴리스 18.4R1부터 BGP 플로우 사양 인터넷 초안 draft-ietf-idr-flowspec-redirect-ip-02.txt IP로의 리디렉션 작업에서 설명된 BGP 플로우 사양이 지원됩니다. IP 작업으로 리디렉션은 확장된 BGP 커뮤니티를 사용하여 서비스 프로바이더 네트워크에서 디도스(DDoS) 완화를 위한 트래픽 필터링 옵션을 제공합니다. IP로의 레거시 플로우 사양 리디렉션은 BGP 다음 홉 속성을 사용합니다. Junos OS는 기본적으로 확장된 커뮤니티를 사용해 IP 플로우 사양으로의 리디렉션 작업을 안내합니다. 이 기능은 vSCG(virtual service control gateway)에서 서비스 체이닝을 지원하는 데 필요합니다. IP로의 리디렉션 작업을 통해 일치하는 플로우 사양 트래픽을 전 세계의 도달 가능한 주소로 우외할 수 있습니다. 이러한 주소는 디도스(DDoS) 트래픽을 필터링하고 수신 디바이스에 클린 트래픽을 전송할 수 있는 필터링 디바이스에 연결될 수 있습니다.

트래픽을 BGP 플로우 사양 경로로 리디렉션하기 전 다음을 수행합니다.

  1. 디바이스 인터페이스를 구성합니다.

  2. OSPF 또는 기타 IGP 프로토콜을 구성합니다.

  3. MPLS 및 LDP를 구성합니다.

  4. BGP를 구성합니다.

BGP 확장 커뮤니티를 사용해 IP로의 리디렉션 기능을 구성합니다.

  1. 정적 IPv4 flow 사양 경로를 위해 BGP 플로우 사양 인터넷 초안 draft-ietf-idr-flowspec-redirect-ip-02.txt, IP로의 리디렉션 작업에서 지정된 대로 IP로의 리디렉션 작업을 구성합니다.

    Junos OS는 기본적으로 확장된 커뮤니티 IP로의 리디렉션을 사용해 IP 플로우 사양으로의 리디렉션 작업을 안내합니다. 수신 디바이스는 디도스(DDoS)를 지정된 IP 주소로 탐지하고 전송합니다.

    예를 들어, 디도스(DDoS) 공격을 IPv4 주소 10.1.1.1로 리디렉션합니다.

  2. 정적 IPv6 flow 사양 경로를 위해 IP 작업으로의 리디렉션을 구성합니다.

    예를 들어 디도스(DDoS) 트래픽을 IPv6 주소 1002:db8로 리디렉션합니다.

  3. 정책을 정의해 특정 BGP 커뮤니티에서 트래픽을 필터링합니다.

    예를 들어, 정책 p1을 정의해 BGP 커뮤니티 redirip에서 트래픽을 필터링합니다.

  4. 정책을 정의하여 BGP 커뮤니티를 설정, 추가 또는 삭제하고 확장된 커뮤니티를 지정합니다.

    예를 들어, 정책 p1을 정의해 커뮤니티 reidirip과 확장된 커뮤니티를 설정, 추가 또는 삭제하고 IP 주소 10.1.1.1로의 트래픽을 리디렉션할 수 있습니다.

  5. BGP를 구성하여 VRF.inet.0 테이블로 계층 수준의 문을 포함하는 VRF 플로우 사양 경로를 확인합니다.

다음 홉 속성을 사용해 IP로의 레거시 플로우 사양 리디렉션 기능을 구성합니다.

주:

BGP 확장 커뮤니티 및 다음 홉 IP 주소로의 레거시 리디렉션을 함께 사용해 IP 주소로 트래픽을 리디렉션하도록 정책을 구성할 수 있습니다.

  1. 인터넷 초안 draft-ietf-idr-flowspec-redirect-ip-00.txt, IP 다음 홉으로의 트래픽 리디렉션을 위한 BGP Flow-Spec 확장 커뮤니티에 지정된 IP로의 레거시 플로우 사양 리디렉션을 구성합니다.

  2. 정책을 정의해 다음 홉 속성과 일치시킵니다.

    예를 들어 정책 p1을 정의해 트래픽을 다음 홉 IP 주소 10.1.1.1로 리디렉션합니다.

  3. 정책을 정의하고 레거시 플로우 사양 다음 홉 속성을 IP 작업으로 리디렉션을 사용하여 BGP 커뮤니티를 설정, 추가 또는 삭제합니다.

    예를 들어, 정책 p1을 정의하고 BGP 커뮤니티 redirnh을 설정, 추가 또는 삭제하여 디도스(DDoS) 공격 트래픽을 다음 홉 IP 주소 10.1.1.1로 리디렉션합니다.

BGP 플로우 사양 DSCP 작업을 사용하여 트래픽 전달

BGP Flow Specification(FlowSpec) DSCP 작업을 구성하여 네트워크에서 포워딩 클래스 및 손실 우선순위 정보를 사용하여 패킷을 효과적으로 전달합니다.

패킷을 전달하기 위한 BGP FlowSpec DSCP 작업의 이점

  • 의도한 COS 대기열로 트래픽을 전달하여 COS 정책이 트래픽에 올바르게 적용됩니다.

  • 프로비저닝된 DSCP 값을 기반으로 로컬 전달 동작(예: 터널 선택)에 영향을 줍니다.

  • 네트워크의 트래픽을 효과적으로 관리하는 데 도움이 됩니다.

패킷이 라우터에 들어가면 패킷은 수신 인터페이스에 적용된 기능(예: 방화벽, COS 등)을 통과합니다. 수신 인터페이스에서 BGP FlowSpec 필터를 구성하면 DSCP 작업을 기반으로 라우팅 인스턴스당 패킷에 필터가 적용됩니다. DSCP 작업은 BGP FlowSpec 필터를 통한 DSCP 코드 변경과 함께 패킷을 분류하고 다시 작성합니다. 포워딩 클래스 및 손실 우선순위 정보에 기반하여 패킷은 올바른 포워딩 대기열에 배치됩니다. 패킷은 특정 일치 조건이 충족되는 경우에만 플로우 경로를 통해 이동합니다. 일치하는 조건은 소스 및 대상 IP 주소, 소스 및 대상 포트, DSCP, 프로토콜 번호 등일 수 있습니다. 포워딩 클래스 및 손실 우선순위 정보는 역방향 매핑 테이블을 통해 업데이트됩니다.

다음은 서비스 프로바이더와 엔터프라이즈 고객 네트워크 간에 설정된 BGP 세션의 토폴로지입니다.

패킷을 전달하기 위한 BGP FlowSpec DSCP 작업의 이점

이 토폴로지에서는 BGP FlowSpec에 대해 서비스 프로바이더와 엔터프라이즈 고객 네트워크 간에 BGP 세션이 구성됩니다. BGP FlowSpec 필터는 PE1 및 PE2 라우터 모두에 적용됩니다. 이러한 라우터에 들어오는 패킷은 BGP FlowSpec 필터 및 DSCP 작업에 따라 재작성됩니다.

디바이스에서 BGP FlowSpec 필터를 활성화하려면 [] 계층 수준에서 구성 문을 추가해야 합니다.dscp-mapping-classifieredit forwarding-options family (inet | inet6)

다음 샘플 서비스 클래스 구성은 DSCP 코드 포인트를 포워딩 클래스 및 손실 우선순위에 매핑합니다.

변경 내역 표

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

릴리스
설명
20.3R1
cRPD 릴리스 20.3R1부터 BGP 플로우 사양 NLRI를 통해 전파되는 폴리싱 규칙과 플로우 사양은 cRPD 환경에서 Linux Netfilter 프레임워크를 통해 Linux 커널로 다운로드됩니다.
17.2R1
Junos OS 릴리스 17.2R1부터 BGP는 3세대 FPC가 설치되어 있는 PTX1000 라우터에서 플로우 사양 NLRI(Network Layer Reachability Information) 메시지를 전달할 수 있습니다.
17.1R1
Junos OS 릴리스 17.1R1부터 BGP는 3세대 FPC(PTX5000의 경우 FPC3-PTX-U2 및 FPC3-PTX-U3, PTX3000의 경우 FPC3-SFF-PTX-U0 및 FPC3-SFF-PTX-U1)가 설치되어 있는 PTX 시리즈 라우터에서 플로우 사양 NLRI(Network Layer Reachability Information) 메시지를 전달할 수 있습니다.
16.1R4
Junos OS 릴리스 16.1R4부터 속도 제한 범위는 [0 ~ 1000000000000]입니다.
16.1
Junos OS 릴리스 16.1부터 IPv6 지원이 BGP 플로우 사양으로 확장되어 IPv6 및 VPN-IPv6 패킷에 대해 트래픽 플로우 사양 규칙을 전파할 수 있습니다.
16.1
Junos OS 릴리스 16.1R1부터 BGP 플로우 사양은 트래픽을 표시하는 extended-community 필터링 작업을 지원합니다.
16.1
Junos OS 릴리스 16.1부터 특정 인터페이스에서 수신되는 트래픽에 flowspec 필터를 적용하지 않는 옵션을 사용할 수 있습니다.
15.1
Junos OS 릴리스 15.1부터 기존의 inet-flow 및 inetvpn-flow 제품군에 대해 NSR(Nonstop Active Routing) 지원을 확장하고 draft-ietf-idr-bgp-flowspec-oid-01에 따라 BGP flowspec에 대해 경로 검증 기능을 확장하기 위해 변경 사항이 구현됩니다.