2.jpg
3.jpg
4.jpg
5.jpg
1.jpg

Настройка RIB-GROUP на оборудование Juniper Networks.


У многие сетевых специалистов плохо знакомых с операционной системой Junos, возникают вопросы по механизму работы и настройке rob-groups на оборудовании Juniper Networks. В данной статье мы постраемся кратко изложить основы данного механизма.

Как известно, в маршрутизаторах компании Juniper Networks, на платформах  M, T, MX – серий, имеется 8 предопределенных таблиц маршрутизации. Посмотреть данные таблицы можно с помощью команды в cli:

{master}

root@JuniperMX>;;

show route

Существуют следующие таблицы маршрутизации:

- inet.0 для unicast routes

- inet.1 для multicast routes

- inet.2 для MBGP routes c проверкой RPF (reverse path forwarding)

- inet.3 для MPLS routes

- inet.6 для IPv6 routes

- mpls.0 для MPLS next hops

- __juniper_private1__.inet.0

- __juniper_private1__.inet6.0

Для просмотра определенной таблицы маршрутизации можно ввести команду в cli:

{master}

root@JuniperMX>;;

show route table inet.0

По умолчанию таблицы маршрутизации создаются и отображаются, когда они необходимы. Например, если маршрутизатор не имеет IP информации любого типа, то таблицы не отображаются. Как только будет сконфигурирован IP address и активирован протокол маршрутизации, то автоматически появится таблица inet.0. Если будут сконфигурированы такие протоколы как RSVP, LDP,MPLS то создадутся таблицы inet.3 и mpls.0. При создании routing-instance инсталлируется таблица маршрутизации name.inet.0, где name имя routing-instance. Например, для просмотра таблицы маршрутизации VPN-A необходимо ввести команду в cli:

{master}

root@JuniperMX>;;

show route table VPN-A.inet.0

Помимо предопределенных таблиц маршрутизации в маршрутизаторах Juniper могут быть созданы и другие таблицы маршрутизации. Например, при настройки Layer 2 VPN, создается таблица bgp.l2vpn.0, при настройки Layer 3 VPN появляется таблица bgp.l3vpn.0, при настройки протокола маршрутизации ISIS появится таблица iso.0.

 

Часто у сетевых инженеров возникает задача копирования маршрутов из одной таблицы маршрутизации в другую.  Например, чтобы соединить двух клиентов CE-A и CE-B, подключенных к провайдеру связи PE, не помещая их в один VPN на PE.

Dозможно решить данную задачу несколькими способами. Рассмотрим их более подробно. Для наглядностибудем использовать следующую схему:

 

AUTO-EXPORT.

Команду auto-export необходимо прописать во всех vrf, маршрутами которых необходимо обменяться. Данная команда заставляет маршрутизатор анализировать комбинации политик vrf-import и vrf-export, а также атрибут vrf-target. При совпадении атрибута между разными vrf: vpn-a и vpn-b происходит обмен маршрутами.

[edit routing-instances]

user@PE# show

vpn-a {

          instance-type vrf;

          interface ge-0/0/0.0;

          vrf-target target:65500:100;

          routing-option {

                                     auto-export;

            }

            protocols {

                         bgp {

                                  group ce-a {

                                            peer-as 65000;

                                            as-override;

                                            neighbor 1.1.1.2;

 

[edit routing-instances]

user@PE# show

vpn-b {

          instance-type vrf;

          interface ge-0/0/3.0;

          vrf-target target:65500:100;

          routing-option {

                                     auto-export;

            }

            protocols {

                         bgp {

                                  group ce-b {

                                            peer-as 65000;

                                            as-override;

                                            neighbor 1.1.2.2;

RIB-GROUPS

Вторым возможным способом является создание rib-group. Вначале необходимо создать две rib-group. В примере rib-group a-to-b указывает из какой таблицы необходимо взять маршруты ( vpn-a.inet.0 ) и в какую таблицу их вставить (vpn-b.inet.0). Аналогично создается rib-group b-to-a только наоборот. Для фильтрации маршрутов можно использовать команду import-policy rib-policy. Для этого сначала необходимо создать политику rib-policy, в которой необходимо указать нужные префиксы, которые необходимо инсталлировать из одного vrf в другой. Следующим шагом необходимо применить rib-group внутри vpn, при этом rib-group  применяется к каждому протоколу из которого мы хотим передать маршруты. В нашем примере группа применяется на протокол bgp и direct.

routing-options {

        rib-groups  {

                a-to-b {

                import-rib [ vpn-a.inet.0 vpn-b.inet.0 ];

                import-policy rib-policy;

               }

               b-to-a {

               import-rib [ vpn-b.inet.0 vpn-a.inet.0 ];

              }

       }

   autonomous-system 65412;

routing-instances {

    vpn-a {

. . . . . . . . .

              routing-options {

                     interface-routes {

                         rib-group inet a-to-b;

                    }

                }

       protocols {

                   bgp {

                     group external;

                     family inet   {

                     unicast   {

                               rib-group a-to-b;

                           }

INSTANCE-IMPORT

Альтернативой использования rib-group является использование команды instance-import. Данный способ более легок в конфигурировании. Доступен в Junos release 5.4 и старше. В данном способе изначально необходимо создать политику в policy-options:

[ edit ]

user@PE# show policy-options

policy-statement vpn-a-import {

     from instance vpn-b;

     then accept;

}

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

[ edit ]

user@PE# show routing-instances

vpn-a {

     instance-type forwarding;

     routing-options {

          static   {

              route 0/0 next-hop 1.1.2.2;

            . . . .

             }

           instance-import vpn-a-import;

        }

 

P.S. Если у Вас возникли вопросы по настройка данного механизма пишите нам по адресу:  Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра.

 Только те, кто предпринимает абсурдные попытки, смогут достичь невозможного.

Альберт Эйнштейн

Мы ждем Вас!

тел: +7 (499) 755-75-42

email: Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра.


Яндекс.Метрика