Пример создания через консоль Linux

Пример создания VRF интерфейса:

VRF интерфейсы описываются в файлах в директории /etc/network/interfaces.d/.

Ниже приведен пример создания VRF интерфейса (инстанса) с именем vrf_blue и своей таблицей маршрутизации и добавления входящих в него интерфейсов.

1.    Отредактируйте файл /etc/network/interfaces.d/vrf_blue, добавив в него настройки для интерфейса vrf_blue, например:

auto vrf_blue

iface vrf_blue inet manual

pre-up ip link del vrf_blue type vrf 2>/dev/null || true

pre-up ip route flush table 10 2>/dev/null || true

pre-up ip link add vrf_blue type vrf table 10

pre-up ip link set dev vrf_blue up

pre-up ip route add table 10 unreachable default metric 4278198272

pre-up ip link set dev eth0 master vrf_blue

pre-up ip link set dev eth1 master vrf_blue

post-down ip link set dev vrf_blue down

•      pre-up ip route flush table 10 – предварительная очистка таблицы маршрутизации 10, которая будет использоваться данным VRF инстансом;

•      pre-up ip route add table 10 unreachable default metric 4278198272 – добавление unreachable маршрута по умолчанию, чтобы трафик, для которого отсутствует маршрут не покидал пределы данного VRF инстанса;

•      pre-up ip link set dev eth0 master vrf_blue – добавление интерфейса eth0 в данный VRF инстанс.

2.    Для того, чтобы VRF интерфейс vrf_blue появился в системе, выполните команду ifup vrf_blue, после чего убедитесь, что данный интерфейс действительно доступен в системе:

root@Hub1:~# ifup vrf_blue

root@Hub1:~# ip address show vrf_blue

9: vrf_blue: <NOARP,MASTER,UP,LOWER_UP> mtu 65575 qdisc noqueue state UP group default qlen 10000

    link/ether 0a:fe:37:bb:cc:ef brd ff:ff:ff:ff:ff:ff

3.    Убедитесь, что интерфейсы, добавленные в данный VRF, действительно входят в него:

root@Hub1:~# ip address show eth0

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master vrf_blue state UP group default qlen 10000

    link/ether 00:50:56:9e:d3:8f brd ff:ff:ff:ff:ff:ff

    altname enp3s0

    altname ens160

    altname GigabitEthernet0_0

    inet 172.16.100.2/24 brd 172.16.100.255 scope global eth0

       valid_lft forever preferred_lft forever

    inet6 fe80::605c:3ff2:57df:437b/64 scope link stable-privacy

       valid_lft forever preferred_lft forever

 

root@Hub1:~# ip address show eth1

3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master vrf_blue state UP group default qlen 10000

    link/ether 00:50:56:9e:6b:21 brd ff:ff:ff:ff:ff:ff

    altname enp11s0

    altname ens192

    altname GigabitEthernet0_1

    inet 192.168.100.1/24 brd 192.168.100.255 scope global eth1

       valid_lft forever preferred_lft forever

    inet6 fe80::ee31:332f:369f:59d8/64 scope link stable-privacy

       valid_lft forever preferred_lft forever

 

Изменение параметров VRF интерфейса:

Выключите интерфейс командой ifdown vrf_blue, отредактируйте файл конфигурации /etc/network/interfaces.d/vrf_blue и включите интерфейс командой ifup vrf_blue.

 

Удаление VRF интерфейса:

Для удаления интерфейса нужно выключить интерфейс командой ifdown vrf_blue, удалить интерфейс при помощи команды ip link del dev vrf_blue и удалить файл конфигурации /etc/network/interfaces.d/vrf_blue.