핵심 인사이트 (3줄 요약)

  1. 본질: VRF(Virtual Routing and Forwarding)는 1대의 물리적인 라우터 안에 여러 개의 독립적인 가상 라우팅 테이블(RIB/FIB)을 만들어, 하나의 라우터를 마치 여러 대의 라우터인 것처럼 쪼개어 쓰는 3계층 가상화 기술이다.
  2. IP 중복(Overlap)의 허용: VRF A(삼성)와 VRF B(LG)는 서로 완벽하게 격리된 평행 우주다. 따라서 삼성도 10.1.1.1을 쓰고 LG도 똑같이 10.1.1.1을 쓰더라도 서로 라우팅이 꼬이거나 충돌하지 않고 100% 독립적으로 통신이 가능하다.
  3. MPLS VPN의 뼈대: 통신사(ISP) 라우터는 삼성, 현대, LG 등 수백 개 기업의 트래픽을 한 기계에서 처리해야 한다. 각 기업의 트래픽이 섞이지 않도록 라우터 뱃속을 기업별 VRF로 쪼개놓는 것이 현대 BGP/MPLS IP VPN 서비스의 절대적인 기초 공사다.

Ⅰ. 개요 및 필요성 (Context & Necessity)

  • 개념: 단일 라우터 내에서 다수의 라우팅 테이블 인스턴스를 동시에 유지하고 동작시키는 기능. VLAN이 2계층(스위치)을 쪼개는 기술이라면, VRF는 3계층(라우터)을 쪼개는 기술이다.

  • 필요성: KT 통신사 라우터 1대에 A회사와 B회사가 랜선을 꽂아 임대망을 쓰고 있다. 그런데 A회사도 사설 IP 192.168.1.0/24를 쓰고, B회사도 우연히 사설 IP 192.168.1.0/24를 쓴다. KT 라우터의 글로벌 라우팅 테이블은 하나뿐인데, 똑같은 목적지 IP가 두 개 들어오면 라우터는 미쳐버린다. 과거엔 이걸 막으려면 라우터 기계를 회사별로 따로 사서 놔줘야 했다(돈 낭비). "야! 라우터 뇌(메모리)를 쪼개서 **A회사 전용 수첩(VRF A)**과 **B회사 전용 수첩(VRF B)**을 따로따로 만들면 IP가 똑같아도 안 겹치잖아!"

  • 💡 비유: VRF는 하나의 물리적 스마트폰 안에서 구동되는 "듀얼 메신저 (또는 보안 폴더)" 기능과 같습니다.

    • 원래 카카오톡은 폰 1대당 1개만 깔립니다. (글로벌 라우팅 테이블).
    • 하지만 보안 폴더(VRF)를 만들면, 폰은 1대지만 업무용 카카오톡과 개인용 카카오톡이 완전히 분리된 메모리 공간에서 돌아가므로, 연락처(IP 주소)가 겹쳐도 절대 서로 섞이거나 간섭하지 않습니다.

📢 섹션 요약 비유: VRF는 하나의 거대한 오피스텔 건물(라우터)을 칸막이로 막아 101호(A사), 102호(B사)로 쪼갠 것입니다. 101호 안방에도 침대가 있고 102호 안방에도 똑같이 침대(중복 IP)가 있지만, 벽(VRF 격리)이 쳐져 있어서 옆집 사람이 내 침대에서 자는 사고는 발생하지 않습니다.


Ⅱ. VRF의 동작 메커니즘과 설정 구조 (Deep Dive)

1. 인터페이스 종속성 (포트 할당)

라우터에 VRF를 10개 만들었다면, 라우터의 팔다리(인터페이스)를 각 VRF에 할당(Binding)해 주어야 한다.

  • 1번 포트 ──▶ VRF 'Samsung' 할당
  • 2번 포트 ──▶ VRF 'LG' 할당
  • 1번 포트로 들어온 패킷은 오직 VRF Samsung이라는 이름이 붙은 수첩(라우팅 테이블)만 뒤져서 나갈 길을 찾고, VRF LG 수첩은 쳐다보지도 않는다.

2. 완벽한 논리적 분리 (평행 우주)

  • VRF 'Samsung'에서 OSPF를 돌려 10.1.1.0 길을 찾았다.
  • VRF 'LG'에서도 OSPF를 돌려 10.1.1.0 길을 찾았다.
  • 라우터 뱃속에는 두 개의 똑같은 IP가 존재하지만, 서로 다른 테이블에 있으므로 충돌 에러가 나지 않는다.
  • 이 둘은 서로 핑(Ping)을 때려도 응답하지 않는다 (디폴트로 라우팅이 단절되어 있음). 만약 삼성과 LG가 통신하게 하려면 **Route Leaking(경로 누수)**이라는 고도의 BGP 수작업을 통해 두 테이블 간에 일부러 구멍을 뚫어줘야만 한다.
 ┌─────────────────────────────────────────────────────────────┐
 │                VRF를 통한 IP 중복(Overlap) 해결 도식              │
 ├─────────────────────────────────────────────────────────────┤
 │                                                             │
 │   [ 삼성 지사 (10.1.1.x) ] ── (Port 1) ──┐                    │
 │                                        ▼                    │
 │                       ┏━━━━━━━━━━━━━━━ KT 라우터 ━━━━━━━━━━━━━┓ │
 │                       ┃  [ VRF 삼성 테이블 ]               ┃ │
 │                       ┃  - 10.1.1.0/24 -> Port 1        ┃ │
 │                       ┃                                 ┃ │
 │   [ LG 지사 (10.1.1.x) ]── (Port 2) ──▶ [ VRF LG 테이블 ]   ┃ │
 │                       ┃  - 10.1.1.0/24 -> Port 2        ┃ │
 │                       ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ │
 │                                                             │
 │   ▶ 결과: 라우터 1대가 마치 라우터 2대인 것처럼 완벽히 분할되어 동작함!│
 └─────────────────────────────────────────────────────────────┘

3. VRF Lite vs MPLS VPN

  • VRF Lite: 라우터 1대 안에서, 혹은 우리 회사 빌딩 안에서 스위치/라우터끼리 망을 분리(보안망 vs 일반망)할 때 쓰는 순수하고 가벼운 VRF 기술이다.
  • MPLS VPN: KT가 서울에서 부산까지 이 VRF를 끌고 가야 할 때 쓴다. VRF를 통신사 백본(BGP/MPLS)에 태우기 위해 IP 앞에 **RD(Route Distinguisher, 100:1 같은 꼬리표)**를 붙여서 96비트짜리 괴물 주소(VPNv4)로 만든 뒤 전 국민에게 서비스하는 무거운 기술이다.

📢 섹션 요약 비유: VRF는 물리적인 라우터 1대를 칼로 쪼개는 게 아니라, 1대의 컴퓨터 안에서 VMWare나 VirtualBox를 켜서 "윈도우 가상 머신(VRF)" 10개를 띄우는 것과 똑같은 논리적 3계층 가상화입니다.