Настройка VRF Cisco — описание и примеры

Технология VRF (Virtual Routing and Forwarding) позволяет реализовать на базе одного физического маршрутизатора иметь несколько виртуальных маршрутизаторов. Каждый из них будет со своей независимой таблицей маршрутизации.
Главное преимущество виртуальной маршрутизации заключается в полной изоляции маршрутов как между двумя виртуальными, так и между виртуальным маршрутизаторами и реальным .
Давайте, для наглядности, рассмотрим пример.

Есть некая большая сеть, в которой есть EIGRP маршрутизация и присутствует маршрутизатор R1. Если зайти на R1 и выполнить там команду show ip route для вывода таблицы маршрутизации, то можно увидеть некое множество маршрутов, которые приходят со всех концов этой сети. Давайте предположим, что появился некий клиент, для которого нужно сделать какие-то особые специфичные настройки, в именно особую маршрутизацию: особый шлюз, свой отдельный DHCP или отдельный NAT. И вот тут на помощь администратору сети приходит технология vrf cisco.

настройка vrf cisco

Нужно будет создать виртуальный маршрутизатор, затем выделить из всех интерфейсов те из них, которые будут к нему относиться и указать все необходимые настройки для него. Важно: никакие параметры,  которые мы зададим для созданного виртуального маршрутизатора, на работе реального не отразятся.

На практике это выглядит следующим образом. Смотрим таблицу на реальном маршрутизаторе:

Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route
Gateway of last resort is 88.162.128.177 to network 0.0.0.0
88.162.129.0/24 is variably subnetted, 7 subnets, 3 masks
D 88.162.129.144/28 [90/28416] via 88.162.128.186, 7w0d, GigabitEthernet0/0.10
D 88.162.129.128/28 [90/28416] via 88.162.128.186, 7w0d, GigabitEthernet0/0.10
D 88.162.129.160/27 [90/28416] via 88.162.128.186, 7w0d, FGigabitEthernet0/0.10
D 88.162.129.192/27 [90/28416] via 88.162.128.190, 7w0d, GigabitEthernet0/0.10
S 88.162.129.224/27 is directly connected, GigabitEthernet0/0.60
D 88.162.129.0/26 [90/28416] via 88.162.128.186, 7w0d, GigabitEthernet0/0.10

Создадим виртуальный маршрутизатор вот таким образом:

configure terminal
ip vrf VirtualRouter1
description VRF for nat from 10.0.0.0 to 22.22.22.22

Следующим шагом надо выбрать те интерфейсы устройства,  мы хотим отнести к этому vrf. В  этом примере задача будет заключаться в том, что надо трафик с интерфейса Ge0/0.2 (ip 10.0.0.1) пустить на НАТ и маршрутизировать через интерфейс Ge0/0.5 (ip 22.22.22.22) таким образом, чтобы всё это никак не влияло на остальные функции маршрутизатора.

interface Ge0/0.2
encapsulation dot1q 2
ip vrf forwarding VirtualRouter1
ip address 10.0.0.1 255.255.255.0
ip nat inside

interface Ge0/0.5
encapsulation dot1q 5
ip vrf forwarding VirtualRouter1
ip address 22.22.22.22 255.255.255.0
ip nat outside

Итак мы создали интерфейсы и для каждого из них сделали так, что этот трафик будет обрабатываться не по общим правилам роутера а в соответствии с правилами виртуального маршрутизатора VirtualRouter1.

То, что в моём примере интерфейсы логические в виде саб-интерфесов особой роли не играет. В  Вашем случае это могут быть и обычные физические интерфейсы — не суть важно!

Для каждого интерфейса мы указали, что трафик должен обрабатываться не по общим правилам а в соответствии с правилами VirtualRouter1. Интерфейсы выходят из области влияния основной маршрутизации роутера. Если снова написать команду: show ip route, то среди непосредственно подключенных мы не увидим сетей 10.0.0.0/24 и 22.22.22.0/24. Где они? А их мы сможем увидеть,  если выведем таблицу маршрутизации созданного виртуального роутера командой:

show ip route vrf VirtualRouter1

Вывод команды будет выглядеть вот так:

Routing Table: MyRouter
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route
Gateway of last resort is not set
10.0.0.0/24 is subnetted, 1 subnets
C 10.0.0.0 is directly connected, GigabitEthernet0/0.2
22.22.22.0/24 is subnetted, 1 subnets
C 22.22.22.0 is directly connected, GigabitEthernet0/0.5

В итоге мы видим простую чистую таблицу маршрутизации, согласно которой трафик, пришедший на ge0/0.2 и ge0/0.5, будет обрабатываться только по этой таблице и никак иначе. Общая таблица маршрутизации роутера с его множеством маршрутов приниматься во внимание не будет.

Теперь добавим для созданного vrf так называемый «дефолт» — статический маршрут по умолчанию, благодаря чему всё будет уходить в сеть через ge0/0.5. Пусть он будет в нашем случае внешним. При добавлении нового маршрута обязательно надо указать, что его надо добавить именно в vrf VirtualRouter1, а не в общую таблицу маршрутизации.

ip route vrf VirtualRouter1 0.0.0.0 0.0.0.0 22.22.22.21

здесь IP 22.22.22.21 – будет адресом следующего прыжка (хопа).  Вот таким нехитрым способом можно в эту таблицу добавлять нужные статические и динамические маршруты.

Теперь добавим на наш виртуальный маршрутизатор сервисы DHCP и NAT. Схема работы будет такая: клиенты из внутренней сети получают адреса с помощью DHCP, а на выходе они транслируются в 22.22.22.22.

Настройка DHCP:

ip dhcp excluded-address 10.0.0.1 10.0.0.10
ip dhcp pool DHCPServer
vrf VirtualRouter1
network 10.0.0.0 255.255.255.0
domain-name test.group
dns-server 1.1.1.1
default-router 10.0.0.1

Настройка NAT:

access list 1 permit ip 10.0.0.0 0.0.0.255 any
ip nat inside source list 1 interface FastEthernet0/0.5 vrf VirtualRouter1 overload

Заметьте, что параметры DHCP пула и конфигурация NAT относятся уже не к основному, а к виртуальному маршрутизатору (vrf MyRouter).

Ну вот и всё — настройка завершена. Можно пользоваться!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *