# 3. Маршрутизация в Cisco IOS

## Виды маршрутизации

* Маршрутизация - процесс принятия маршрутного решения
  * RFC 1812: Requirements for IP Version 4 Routers
* **Destination-based Routing**
  * Требуется построение таблицы маршрутизации
  * Требуется иерархическая адресация
  * Принимается во внимание только адрес назначения пакета
  * Сравнительно простая реализация
* **Policy-based Routing**
  * Маршрутизация по заданным наборам правил
  * Принимаются во внимание любые параметры, в т.ч. адрес источника, содержимое пакета, загрузка интерфейсов, текущее время и т.д.
  * Обратно совместимо с табличной маршрутизацией

## Источники маршрутной информации

* RIB можно пополнить разными способами
  * Присоединить маршрут на интерфейс автоматически
  * Добавить статический маршрут вручную
  * Использовать протокол динамической маршрутизации
    * OSPF, EIGRP, BGP, ODR, IS-iS
  * Использовать протоколы дополнительной настройки
    * DHCP, ICMPv6, NDp, NHRP

## Особенности RIB

* Administative Distance
  * Используется маршрут с минимальным AD
* Metric/Traffic Share
  * Можно добавить маршруты с разной метрикой
* IPv6
  * В качестве Next-Hop удобно использовать LLA
* Default Route
  * В классовой маршрутизации - **default network**
  * В бесклассовой - "шлюз по умолчанию", 0.0.0.0/0

| Тип маршрута   | AD  |
| -------------- | --- |
| Connected      | 0   |
| Static         | 1   |
| EIGRP Summary  | 5   |
| BGP External   | 20  |
| EIGRP External | 90  |
| IGRP           | 100 |
| OSPF           | 110 |
| IS-IS          | 115 |
| RIP            | 120 |
| EGP            | 140 |
| ODR            | 160 |
| EIGRP External | 170 |
| BGP Internal   | 200 |
| Unknown\*      | 255 |

## VRF

* **VRF (Virtual Routing and Forwarding)** - концепция разделения плоскости маршрутизации на несколько виртуальных частей

![](https://804939388-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LUAmDRmV-jNSoF58Ufl%2F-L_qn6ZLFyHR_tP78FwT%2F-L_qnZ_VbwlZYa_nSBs_%2Fvrf.PNG?alt=media\&token=1be7cdc5-7aa8-46ef-a362-0ddc786a22c6)

* **VRF-Lite** - простейший сценарий, не требующий внедрения MPLS
  * Каждый интерфейс принадлежит отдельному виртуальному роутеру
* **Easy Virtual Network**
  * Механизм маркировки принадлежности пакетов к определенному VRF

**Настройка EVN в Cisco:**

* EVN позволяет не создавать кучу 802.1Q сабинтерфейсов

```
Router(config)#vrf definition CUST-A
Router(config)#vrf definition CUST-B

Router(config)#interface gi0/0.100
Router(config-if)#ip vrf forwarding CUST-A
Router(config-if)#encapsulation dot1q 100
Router(config-if)#ip address 192.168.0.1 255.255.255.252

Router(config-if)#interface gi0/0.200
Router(config-if)#ip vrf forwarding CUST-B
Router(config-if)#encapsulaion dot1q 200
Router(config-if)#ip address 192.168.0.200 255.255.255.252
```

```
Router(config)#vrf definition CUST-A
Router(config-if)#vnet tag 100
Router(config)#vrf definition CUST-B
Router(config-if)#vnet tag 200

Router(config)#interface gi0/1
Router(config-if)#vnet trunk
Router(config-if)#ip address 192.168.1.1 255.255.255.252
```

![](https://804939388-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LUAmDRmV-jNSoF58Ufl%2F-L_qn6ZLFyHR_tP78FwT%2F-L_qpjdMmJAtZ7zu8AmL%2FEVN1.PNG?alt=media\&token=3cbd11cd-4bb1-4d05-b9a6-aa14345d2ada)

![](https://804939388-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LUAmDRmV-jNSoF58Ufl%2F-L_qn6ZLFyHR_tP78FwT%2F-L_qpmmOeB-TbVbiZjw7%2FEVN2.PNG?alt=media\&token=967f8d9c-b48f-4a0d-843e-b609aa41f6fb)

## Фильтрация вывода RIB

* Фильтр по источнику: **show ip route \[ospf|bgp|eigrp]**
* Фильтр по VRF: **show ip route vrf VRF\_NAME**
* Фильтр по префиксам: **show ip route list ACL\_NAME**
* Фильтр по подсетям: **show ip route NET\_IP NET\_MASK longer-prefixes**
* Отображение деталей маршрута: **show ip route XXX.XXX.XXX.XXX**

















