Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

BGP 네트워크의 SRv6 네트워크 프로그래밍 및 레이어 3 서비스

BGP에서 SRv6을 통한 SRv6 네트워크 프로그래밍 및 레이어 3 서비스 개요

SRv6 네트워크 프로그래밍의 이점

  • 유연한 구축—BGP는 디바이스의 세그먼트 라우팅 기능을 활용하여 레이어 3 VPN 터널을 설정합니다. SRv6 수신 노드는 전송 라우터가 SRv6을 지원하지 않더라도 IPv4 패킷을 전송할 수 있습니다. 따라서 IPv6 네트워크의 모든 노드에 세그먼트 라우팅을 구축할 필요가 없습니다.

  • 원활한 구축 - 네트워크 프로그래밍은 패킷을 전송하기 위해 전적으로 IPv6 헤더와 헤더 확장에 의존하므로 MPLS와 같은 프로토콜이 필요하지 않습니다. 이를 통해 코어 IPv6 네트워크에서 주요 하드웨어 또는 소프트웨어 업그레이드 없이 원활한 구축이 보장됩니다.

  • 단일 디바이스 다기능성 - Junos OS는 단일 세그먼트 식별자(SID)에서 여러 기능을 지원하며 삽입 모드와 캡슐화 모드에서 상호 운용할 수 있습니다. 이를 통해 단일 디바이스가 프로바이더(P) 라우터와 프로바이더 에지(PE) 라우터 역할을 동시에 수행할 수 있습니다.

BGP 네트워크에서의 SRv6 네트워크 프로그래밍

네트워크 프로그래밍은 네트워크 프로그램을 IPv6 패킷 헤더에 삽입되는 개별 명령어로 인코딩하는 네트워크의 기능입니다. SRH(세그먼트 라우팅 헤더)는 SRv6 SID로 인코딩된 세그먼트 목록을 포함하는 IPv6 라우팅 확장 헤더의 한 유형입니다. SRv6 SID는 IPv6 주소인 로케이터와 SRv6 네트워크의 각 SRv6 가능 노드에 대해 특정 작업을 정의하는 기능으로 구성됩니다. SRv6 네트워크 프로그래밍은 MPLS의 필요성을 제거하고 세그먼트 라우팅을 활용할 수 있는 유연성을 제공합니다.

참고:

BGP가 SRv6 SID를 할당하는 데 사용하는 고유한 SID를 사용해야 합니다.

SRv6 코어를 통한 IPv4 전송을 구성하려면 계층 수준에서 [edit protocols bgp source-packet-routing srv6 locator name] 문을 포함 end-dt4-sid sid 합니다.

SRv6 코어를 통한 IPv6 전송을 구성하려면 계층 수준에서 [edit routing protocols bgp source-packet-routing srv6 locator name] 문을 포함 end-dt6-sid sid 합니다.

SRv6 코어를 통한 IPv4 및 IPv6 전송을 구성하려면 계층 수준에서 [edit routing protocols bgp source-packet-routing srv6 locator name] 문을 포함 end-dt46-sid sid 합니다. end-dt4-sid 문은 캡슐화 해제 및 IPv4 테이블 조회를 통해 엔드포인트 SID를 나타냅니다. end dt6-sid 문은 캡슐화 해제 및 IPv6 테이블 조회가 있는 엔드포인트입니다. end-dt46-sid 문은 캡슐화 해제 및 특정 IP 테이블 조회가 있는 엔드포인트입니다. end-dt46은 end.dt4 및 end.dt6 동작의 변형입니다. BGP는 IPv4 및 IPv6 레이어 3 VPN 서비스 SID에 대해 이러한 값을 할당합니다.

SRv6 코어를 통한 레이어 3 VPN 서비스

송신 PE에 연결할 때 수신 PE는 대상 주소가 관련 BGP 경로 업데이트와 연결된 SRv6 서비스 SID인 외부 IPv6 헤더에 페이로드를 캡슐화합니다. 송신 PE는 다음 홉을 IPv6 주소 중 하나로 설정하며, 이 주소는 SRv6 서비스 SID가 할당되는 SRv6 로케이터이기도 합니다. 여러 경로가 동일한 세그먼트 라우팅 정책을 통해 해결될 수 있습니다.

그림 1: SRv6 패킷 캡슐화 SRv6 Packet Encapsulation

SRv6 코어를 통해 BGP 기반 레이어 3 서비스를 구성할 수 있습니다. BGP를 컨트롤 플레인으로, SRv6을 데이터 플레인으로 사용하여 레이어 3 오버레이 서비스를 활성화할 수 있습니다. SRv6 네트워크 프로그래밍은 MPLS를 구축하지 않고도 세그먼트 라우팅을 활용할 수 있는 유연성을 제공합니다. 이러한 네트워크는 데이터 전송을 위해 IPv6 헤더 및 헤더 확장에만 의존합니다.

참고:

end-dt4-sid sidend-dt6-sid sid 세그먼트 목록의 마지막 SID이거나 SRH 헤더가 없는 패킷의 대상 주소인지 확인합니다.

SRv6 코어를 통해 IPv4 VPN 서비스를 구성하려면 계층 수준에서 [edit routing-instances instance-name protocols bgp source-packet-routing srv6 locator name] 문을 포함 end-dt4-sid 합니다.

끝 dt46 SID는 세그먼트 라우팅 정책의 마지막 세그먼트여야 하며, SID 인스턴스는 IPv4 FIB 테이블 및 IPv6 FIB 테이블과 연결되어야 합니다.

BGP 피어에 레이어 3 VPN 서비스 보급

BGP는 송신 PE 디바이스에서 수신 PE 노드로 특정 서비스의 접두사 도달 가능성을 보급합니다. PE 디바이스 간에 교환되는 BGP 메시지는 SRv6 서비스 SID를 전달하며, BGP는 이를 사용하여 PE 디바이스를 상호 연결하여 VPN 세션을 형성합니다. BGP가 VRF별 SID 할당을 사용하는 레이어 3 VPN 서비스의 경우, 동일한 SID가 여러 NLRI(Network Layer Reachability Information) 주소 패밀리에서 공유됩니다.

송신 노드에서 BGP 피어에 SRv6 서비스를 보급하려면 계층 수준에서 [edit protocols bgp family inet6-vpn unicast] 문을 포함 advertise-srv6-service 합니다.

SRv6 기반 레이어 3 서비스를 지원하는 송신 PE 디바이스는 서비스 SID와 함께 오버레이 서비스 접두사를 보급합니다. BGP 수신 노드는 이러한 보급을 수신하고 해당 가상 라우팅 및 포워딩(VRF) 테이블에 접두사를 추가합니다.

수신 노드에서 SRv6 서비스를 수락하려면 계층 수준에서 [edit protocols bgp family inet6-vpn unicast] 문을 포함 accept-srv6-service 합니다.

BGP에서 SRv6 네트워크 프로그래밍을 위해 지원 및 지원되지 않는 기능

Junos OS는 BGP에서 SRv6 네트워크 프로그래밍을 통해 다음 기능을 지원합니다.

  • 수신 디바이스는 VPN SID를 포함하여 축소된 모드에서 7개의 SID를 지원합니다

  • 송신 디바이스는 VPN SID를 포함하여 7개의 SID를 지원합니다.

  • 캡슐화 해제 및 특정 IP 테이블 조회가 있는 엔드포인트(End.DT46 SID)

  • VPN 옵션 C

Junos OS는 BGP에서 SRv6 네트워크 프로그래밍과 함께 다음 기능을 지원하지 않습니다.

  • SRv6 터널의 단편화 및 리어셈블리

  • VPN 옵션 B

예: BGP 네트워크에서 SRv6을 통한 레이어 3 서비스 구성

이 예는 BGP 네트워크에서 SRv6 네트워크 프로그래밍 및 레이어 3 VPN 서비스를 구성하는 방법을 보여줍니다. SRv6 네트워크 프로그래밍은 MPLS를 구축하지 않고도 세그먼트 라우팅을 활용할 수 있는 유연성을 제공합니다. 이 기능은 네트워크가 주로 IPv6이고 MPLS를 구축하지 않은 서비스 프로바이더에게 유용합니다.

요구 사항

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

  • MPC7E, MPC8E 또는 MPC9E 라인 카드가 있는 MX 시리즈 라우터 5개

  • Junos OS 릴리스 20.4R1 이상

개요

SRv6 코어 네트워크를 통해 BGP 기반 레이어 3 서비스를 구성할 수 있습니다. SRv6 네트워크 프로그래밍을 사용하면 네트워크는 데이터 전송을 위해 IPv6 헤더와 헤더 확장에만 의존합니다. BGP를 컨트롤 플레인으로, SRv6을 데이터 플레인으로 사용하여 레이어 3 오버레이 서비스를 활성화할 수 있습니다.

토폴로지

그림 2에서 라우터 R0은 수신 라우터이고 라우터 R1 및 R2는 IPv4 전용 고객 에지 디바이스를 지원하는 송신 라우터입니다. 라우터 R3 및 R4는 IPv6 전용 프로바이더 코어 네트워크를 구성합니다. 모든 라우터는 동일한 AS(Autonomous System)에 속합니다. IS-IS는 IPv6 코어 라우터 R3 및 R4에서 SRv6을 지원하도록 구성된 내부 게이트웨이 프로토콜입니다. 이 예에서 BGP는 라우터 R0, R1 및 R2에서 구성됩니다. 라우터 R0은 라우터 R1과 라우터 R2 모두에 대한 IBGP 피어링 세션이 있는 IPv6 경로 리플렉터로 구성됩니다. 송신 라우터 R1은 VRF 테이블을 수락하고 업데이트하는 수신 라우터 R0에 L3VPN SID를 보급합니다.

그림 2: BGP 네트워크에서 SRv6을 통한 레이어 3 서비스 Layer 3 Services over SRv6 in BGP Networks

R1에서 BGP 경로는 라우터 R0에 next-hop self로 보급됩니다. 라우터 R0에는 R1에 대한 두 개의 경로, 즉 R3을 통한 기본 경로와 R4를 통한 백업 경로가 있습니다. 라우터 R0에서 기본 경로는 기본 메트릭이고 백업 경로는 메트릭 50으로 구성됩니다. 다음은 라우터 R1에서 R0으로 보급되는 일부 경로입니다.

IPv4

21.0.0.0

IPv6

2001:21::

IPv4 VPN

31.0.0.0

IPv6 VPN

2001:31::

구성

CLI 빠른 구성

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

라우터 R0

라우터 R1

라우터 R2

라우터 R3

라우터 R4

라우터 R0 구성

단계별 절차

레이어 3 VPN 서비스로 SRv6 네트워크 프로그래밍을 구성하기 위해 라우터 R0에서 다음 단계를 수행합니다.

  1. IP 전송을 활성화하도록 디바이스 인터페이스를 구성합니다.

  2. 동일한 AS에 속하는 라우팅 디바이스 집합 내에서 라우팅 정보를 전파하도록 라우터 ID 및 AS(Autonomous System) 번호를 구성합니다.

  3. SRv6을 전역으로 활성화하고 로케이터 주소를 활성화하여 라우터의 SRv6 기능을 나타냅니다. SRv6 SID는 로케이터와 함수로 구성된 IPv6 주소입니다. 라우팅 프로토콜은 로케이터 주소를 보급합니다.

  4. IPv4 및 IPv6 트래픽 모두에 대해 외부 라우팅 인스턴스 VPN1을 구성합니다. VPN1에 대한 BGP 프로토콜을 구성하여 공급자 에지 디바이스 간의 피어링 및 트래픽 전송을 활성화합니다.

  5. 라우팅 인스턴스에 참여하는 각 PE 라우터에 대한 VPN 유형과 고유 경로 식별자를 구성합니다.

  6. 레이어 3 VPN 서비스를 활성화하기 위해 end-dt4 및 end-dt6 SID 값을 구성합니다.

  7. 패킷의 로드 밸런싱을 위한 정책을 정의합니다.

  8. 패킷당 정책을 적용하여 트래픽의 로드 밸런싱을 활성화합니다.

  9. R1에서 보급된 경로를 수락하는 정책 adv_global 정의합니다.

  10. 코어 대면 인터페이스에서 BGP를 구성하여 내부 및 외부 피어링 세션을 설정합니다.

  11. 디바이스가 BGP 피어에 SRv6 서비스를 보급하고 송신 프로바이더 에지(PE) 디바이스가 보급하는 경로를 수락하도록 활성화합니다.

  12. IS-IS를 코어 프로바이더 라우터 간의 트래픽 라우팅을 위한 내부 게이트웨이 프로토콜(IGP)으로 활성화합니다.

  13. 접두사 세그먼트에 대한 end-dt4 및 end-dt6 SID 값을 구성합니다. end-dt4는 캡슐화 해제 및 IPv4 테이블 조회가 있는 엔드포인트 SID이고 end-dt6은 캡슐화 해제 및 IPv6 테이블 조회가 있는 엔드포인트입니다. BGP는 IPv4 및 IPv6 레이어3 VPN 서비스 SID에 대해 이를 할당합니다.

결과

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

디바이스 구성이 완료되면 구성 모드에서 들어갑니다 commit .

검증

구성이 제대로 작동하고 있는지 확인합니다.

보급된 IPv4 경로가 IPv4 테이블에 설치되었는지 확인합니다

목적

수신 라우터 R0이 송신 라우터 R1에서 IPv4 접두사 21.0.0.0에 대한 경로를 학습했는지 확인합니다.

작업

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

의미

출력은 IPv4 접두사 21.0.0.0이 inet.0 테이블에 설치되었음을 확인합니다.

IPv4 테이블에 SRv6 SID가 설치되었는지 확인합니다

목적

수신 라우터 R0이 송신 라우터 R1로부터 SRv6 end-dt4 SID 3011::2를 수신하고 수락했는지 확인합니다.

작업

운영 모드에서 라우터 R0에 명령을 실행합니다 show route 21.0.0.0 extensive .

의미

출력은 SRv6 SID를 표시하고 라우터 R0과 R1 사이에 SRv6 터널이 설정되었음을 확인합니다.

IPv6 VPN 경로가 VPN 테이블에 설치되었는지 확인합니다

목적

수신 라우터 R0이 송신 라우터 R1에서 VPN IPv6 접두사 2001::30::/126에 대한 경로를 학습했는지 확인합니다.

작업

운영 모드의 라우터 R0에서 명령을 실행 show route 2001:31:: 합니다.

의미

출력은 접두사 2001:31::/126에 대한 경로 세부 정보가 vpn.inet6.0 테이블에 설치되었음을 확인합니다.

IPv4 VPN 경로가 VPN 테이블에 설치되었는지 확인합니다

목적

수신 라우터 R0이 송신 라우터 R1에서 VPN IPv4 접두사 31.0.0.0에 대한 경로를 학습했는지 확인합니다.

작업

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

의미

출력은 IPv4 접두사 31.0.0.0이 vpn.inet.0 테이블에 설치되었음을 확인합니다.

변경 내역 표

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

출시
설명
변경 완료