> For the complete documentation index, see [llms.txt](https://adavyshin.gitbook.io/networks/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://adavyshin.gitbook.io/networks/network-basic/open-short-path-first.md).

# Open Short Path First

🖐🏻 Welcome! Данная практическая работа предназначена раскрыть базовые элементы работы динамического протокола OSPF

## Введение

Файл с лабораторной работой доступен по ссылке:

<https://disk.yandex.ru/d/MgLAhxcGLFyr0Q><br>

В ходе данной работы вы настроите следующую топологию:

<figure><img src="https://1296758136-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FKKJSybpl25AMsKCr9Trv%2Fuploads%2FZTIJRxIIXiMD3DL4ii2s%2F%D0%91%D0%B5%D0%B7%D1%8B%D0%BC%D1%8F%D0%BD%D0%BD%D1%8B%D0%B9-2025-10-19-1834.excalidraw.png?alt=media&amp;token=16a5f444-a5ac-4db5-9f2e-a0a7cdeb88c8" alt=""><figcaption></figcaption></figure>

## Настройка

### Настройка магистральной области

В магистральной (backbone) области у нас 4 маршрутизатора <kbd>R1</kbd>, <kbd>R2</kbd>, <kbd>R3</kbd> и <kbd>R4</kbd>. Напоминаю, что мульти-областном сценарии обязательно в основании "звезды" топологии должна быть область с порядковым номером #0.

Настройку OSPF в рамках <kbd>R1</kbd> и <kbd>R2</kbd> мы выполним через `network` команды, а на маршрутизаторах <kbd>R3</kbd> и <kbd>R4</kbd> - через конфигурацию на интерфейсах.

Также обратите внимание, что эти четыре маршрутизатора находятся в одном широковещательном домене, так что реализуется схема multi-access, где у нас избирается в выборах Designeted Router и Backup Designated Router, ответственные за синхронизацию внутри этого широковещательного домена. Принцип выбора DR-маршрутизатора основывается на приоритетах, но как правило в заводских настройках у каждого маршрутизатора приоритет равен 1.&#x20;

В нашей топологии давайте сделаем маршрутизатор <kbd>R3</kbd> с ролью `DR`, а <kbd>R4</kbd> - `BDR`, где на маршрутизаторе <kbd>R3</kbd> мы вручную повысим приоритет до 2, а <kbd>R4</kbd> сделаем `BDR`, на основе второго фактора - наибольшем RID.

Команда `log-adjacency-changes detail` для детального логирования установления соседства с ближайшими маршрутизаторами.

🔧 Настраиваем маршрутизатор <kbd>R3</kbd>:

```
configure terminal
!
router ospf 1
  router-id 3.3.3.3
  log-adjacency-changes detail
!
interface GigabitEthernet0/0
  ip ospf priority 2
  ip ospf 1 area 0

```

🔧 Настраиваем маршрутизатор <kbd>R4</kbd>:

```
configure terminal
!
router ospf 1
  router-id 4.4.4.4
    log-adjacency-changes detail
!
interface GigabitEthernet0/0
  ip ospf 1 area 0
```

🔧 Настраиваем маршрутизатор <kbd>R1</kbd>:

```
configure terminal
!
router ospf 1
  router-id 1.1.1.1
    log-adjacency-changes detail
    network 10.100.0.0 0.0.0.255 area 0
```

🔧 Настраиваем маршрутизатор <kbd>R2</kbd>:

```
configure terminal
!
router ospf 1
  router-id 2.2.2.2
    log-adjacency-changes detail
    network 10.100.0.0 0.0.0.255 area 0
```

Проверить установленное соседство можно с помощью команды `show ip ospf neighbor`, используя данную команду на R1 или R2 мы можем увидеть, что между эти роутерами установлено только `2WAY` соседство.

### Настройка области 34567

🔧 Настраиваем OSPF-область 34567 маршрутизаторe <kbd>R3</kbd>:

```
configute terminal
!
interface GigabitEthernet0/1
  ip ospf 1 area 0
!
interface GigabitEthernet0/2
  ip ospf 1 area 34567
!
interface GigabitEthernet0/3
  ip ospf 1 area 34567
```

🔧 Настраиваем OSPF-область 34567 маршрутизаторe <kbd>R4</kbd>:

```
configute terminal
!
interface GigabitEthernet0/1
  ip ospf 1 area 0
!
interface GigabitEthernet0/2
  ip ospf 1 area 34567
!
interface GigabitEthernet0/3
  ip ospf 1 area 34567
```

🔧 Настраиваем OSPF на маршрутизаторе <kbd>R5</kbd>:

```
configure terminal
!
router ospf 1
  router-id 5.5.5.5
    log-adjacency-changes detail
!
interface GigabitEthernet0/0
  ip ospf 1 area 34567
!
interface GigabitEthernet0/2
  ip ospf 1 area 34567
!
interface GigabitEthernet0/3
  ip ospf 1 area 34567
```

🔧 Настраиваем OSPF на маршрутизаторе <kbd>R6</kbd>:

```
configure terminal
!
router ospf 1
  router-id 6.6.6.6
    log-adjacency-changes detail
!
interface GigabitEthernet0/0
  ip ospf 1 area 34567
!
interface GigabitEthernet0/2
  ip ospf 1 area 34567
!
interface GigabitEthernet0/3
  ip ospf 1 area 34567
```

🔧 Настраиваем OSPF на маршрутизаторе <kbd>R7</kbd>:

```
configure terminal
!
router ospf 1
  router-id 7.7.7.7
    log-adjacency-changes detail
!
interface GigabitEthernet0/0
  ip ospf 1 area 34567
!
interface GigabitEthernet0/1
  ip ospf 1 area 34567
```

В нашей топологии есть стык маршрутизатора <kbd>R7</kbd> со внешними миром ( роутер <kbd>External1</kbd> ). Первым делом предлагаю настроить маршрут в сторону провайдера. А потом мы в OSPF-топологии должны отдать этот маршрут по умолчанию с помощью команды `default-information originate`.&#x20;

🔧 Настраиваем OSPF на маршрутизаторе <kbd>R7</kbd>:

```
ip route 0.0.0.0 0.0.0.0 198.51.100.1 name Default-Route
!
router ospf 1
  default-information originate
```

Если мы проверим таблицу маршрутизации на <kbd>R3</kbd> и <kbd>R2</kbd>, то мы видим два равнозначных маршрута по умолчанию. Давайте сместим приоритетность по маршруту <kbd>R3</kbd>-<kbd>R5</kbd>-<kbd>R7</kbd>, путём увеличения стоимость интерфейса GigabitEthernet0/2-3 на маршрутизаторе <kbd>R4</kbd>.

🔧 Настраиваем стоимость интерфейса на маршрутизаторе <kbd>R4</kbd>:

```
configure terminal
!
interface range GigabitEthernet0/2-3
  ip ospf cost 10
```

После манипуляции со стоимостью интерфейса проверяем таблицу маршрутизации на R3 и R4 и видим, что остался один маршрут по умолчанию.

### Настройка области 1123

🔧 Настраиваем OSPF-область на маршрутизаторе <kbd>R1</kbd>:

```
configure terminal
!
router ospf 1
    network 10.111.0.0 0.0.0.255 area 1123
```

🔧 Настраиваем базовый функционал OSPF  на маршрутизаторе <kbd>R11</kbd>:

```
configure terminal
!
router ospf 1
  router-id 11.11.11.11
    log-adjacency-changes detail
    network 10.111.0.0 0.0.0.255 area 1123
    network 10.11.0.0 0.0.255.255 area 1123
```

Но обратите внимание, что соседство между <kbd>R1</kbd> и <kbd>R11</kbd> не становилось в состояние `FULL`. Это связано с тем, что на интерфейсе `GigabitEthernet0/1` маршрутизатора <kbd>R1</kbd> значение MTU не стандартное.

&#x20;🔧 Включаем ip ospf mtu-ignore на маршрутизаторе <kbd>R11</kbd>:

```
interface GigabitEthernet0/1
  ip ospf mtu-ignore
```

🔧 Включаем ip ospf mtu-ignore на маршрутизаторе <kbd>R1</kbd>:

```
interface GigabitEthernet0/1
  ip ospf mtu-ignore
```

🔧 Настраиваем базовый функционал OSPF на маршрутизаторе <kbd>R12</kbd>:

```
configure terminal
!
router ospf 1
  router-id 12.12.12.12
    log-adjacency-changes detail
    network 10.11.12.0 0.0.0.255 area 1123
    network 10.12.13.0 0.0.0.255 area 1123
```

🔧 Настраиваем OSPF-область на маршрутизаторе <kbd>R13</kbd>:

```
configure terminal
!
router ospf 1
  router-id 13.13.13.13
    log-adjacency-changes detail
    network 10.11.13.0 0.0.0.255 area 1123
    network 10.12.13.0 0.0.0.255 area 1123
```

### Настройка области 21

Будем считать, что маршрутизатор R21 со слабыми характеристиками, и его грузить большим количеством маршрутов не будем. В качестве оптимизации будем использовать stub-область.

Настройка тупиковых областей заключается в команде `area <> stub` на всех маршрутизаторах в этой области и ABR-маршрутизаторах.

🔧 Настраиваем маршрутизатор <kbd>R2</kbd>:

```
configure terminal
!
router ospf 1
    network 10.212.0.0 0.0.0.255 area 21
    area 21 stub
```

🔧 Настраиваем маршрутизатор <kbd>R21</kbd>:

```
configure terminal
!
router ospf 1
  router-id 21.21.21.21
  log-adjacency-changes detail
  network 10.212.0.0 0.0.0.255 area 21
  area 21 stub
```
