VRF란? 같은 IP 대역을 한 스위치에서 구분하는 방법
VRF란? 같은 IP 대역을 한 스위치에서 구분하는 방법
JP-Hosting · 인프라 정보 · 2026.11.12

안녕하세요, JP-Hosting입니다. 고객 A의 서버 주소가 192.168.10.10인데, 고객 B도 자기 서버에 같은 주소를 쓰고 있다고 해 볼게요. 스위치 한 대가 두 고객망을 연결한다면, 똑같은 목적지 IP를 보고 어떻게 서로 다른 서버로 보낼까요?
먼저 결론부터: VRF를 쓰면 한 장비에서 라우팅 테이블(경로표)을 따로 둘 수 있습니다. 장비는 패킷이 어느 L3 인터페이스로 들어왔는지 보고 사용할 VRF를 정합니다. 그래서 목적지 IP가 같아도 서로 다른 고객망으로 보낼 수 있어요.

1. 장비는 한 대, 경로표는 두 개예요
VRF(Virtual Routing and Forwarding)는 라우터나 L3 스위치에서 경로를 따로 관리하는 기능입니다. 한 배송 센터에 고객별로 주소록을 둔다고 생각하면 쉬워요. A의 접수 창구로 들어온 물건은 A의 주소록을, B의 창구로 들어온 물건은 B의 주소록을 보고 보냅니다.
이때 접수 창구에 해당하는 것이 L3 인터페이스입니다. 예를 들어 VLAN의 게이트웨이 역할을 하는 SVI나, IP 주소를 직접 설정한 라우티드 포트를 VRF에 연결할 수 있습니다. Cisco VRF-lite에서는 L3 인터페이스 하나가 한 번에 하나의 VRF에 속합니다.
2. 같은 IP인데 어느 서버로 갈까요?
A와 B는 각자 다른 VLAN에 서버를 두고 있지만, 둘 다 192.168.10.0/24 대역과 서버 IP 192.168.10.10을 사용합니다. 각 고객의 다른 서브넷에서 서버로 접속하면, 스위치는 패킷이 들어온 L3 인터페이스의 VRF에서 목적지를 찾습니다.
| 어디에서 왔나요? | 어느 서버로 가나요? |
|---|---|
| 고객 A의 다른 서브넷 → VRF A 경로표 조회 | 고객 A의 VLAN 110192.168.10.10 |
| 고객 B의 다른 서브넷 → VRF B 경로표 조회 | 고객 B의 VLAN 210192.168.10.10 |
두 경로표에 같은 192.168.10.0/24가 있어도, 각 경로가 가리키는 출구가 다릅니다. IP 주소와 어느 VRF에서 그 주소를 찾는지를 함께 보면 헷갈리지 않아요.
3. VLAN을 나누는 것과 무엇이 다른가요?
VLAN은 스위치에서 같은 브로드캐스트가 도달하는 범위(L2)를 나눕니다. VRF는 IP를 보고 길을 고를 때 쓰는 경로표(L3)를 나눕니다. 위 예시에서는 VLAN으로 고객의 서버망을 나누고, 각 VLAN의 SVI를 다른 VRF에 넣어 라우팅까지 분리했습니다.
반대로 서로 다른 VLAN의 SVI가 같은 VRF에 있으면, 서로 다른 IP 대역 사이에 경로가 있고 접근 정책에서 허용할 때 통신할 수 있습니다.
4. 공용 서버가 필요하면 어떻게 연결하나요?
예를 들어 고객 A만 공용 DNS에 접속해야 한다면, A에서 DNS로 가는 경로와 응답이 돌아오는 경로를 마련하고 방화벽에서 필요한 통신만 허용할 수 있습니다. 장비에서 VRF 사이에 필요한 경로를 선별해 공유하는 방식을 라우트 리킹(Route Leaking)이라고 합니다. 별도의 방화벽을 경유하는 방법도 있습니다.
A와 B 모두 같은 주소 대역을 쓰면서 공용 서버에 연결한다면, 응답을 어느 고객에게 돌려줄지도 설계해야 합니다. 같은 대역의 경로를 한 곳에 모으기만 하면 구분하기 어려우므로, 구성에 따라 고객별 NAT나 분리된 서비스 접점을 검토합니다.
5. 연결이 안 되면 어디부터 볼까요?
먼저 패킷이 들어오는 인터페이스가 의도한 VRF에 속해 있는지 확인하세요. Cisco IOS XE에서 VRF 이름을 VRF-A로 설정했다면 show ip route vrf VRF-A로 해당 IPv4 경로표를 볼 수 있습니다. 그 안에 목적지로 가는 경로가 있는지, 출구가 예상과 일치하는지, 응답도 돌아올 수 있는지 차례로 보세요.
한 줄 정리: VLAN이 같은 네트워크 안에서 프레임이 닿는 범위를 나눈다면, VRF는 다른 네트워크로 보낼 때 어느 경로표를 볼지 나눕니다.