Если вы устали путаться в длинных и разрозненных конфигурациях Cisco IOS и хотите понять, как делает это Juniper с его Junos — вы попали куда надо. Здесь я расскажу, как читать конфигурацию Junos, как настроить маршрутизатор Junos и почему многие инженеры считают эту ОС настоящей находкой. Поехали!
Часть 1. Как читать конфигурацию Junos, если вы — IOS-инженер
Начнём с главного: Junos — это не просто «ещё одна» операционная система. Она кардинально отличается концепцией конфигурации.
Иерархия — ваше новое лучшее оружие
В IOS интерфейс задаётся плоско:
interface FastEthernet0/0
ip address 10.1.2.1 255.255.255.0
duplex auto
speed auto
В Junos это выглядит так:
interfaces {
ge-0/0/0 {
unit 0 {
family inet {
address 10.1.2.1/24;
}
}
}
}
Что с этим делать? Здесь отлично видна иерархия:
ge-0/0/0
— физический интерфейс GigabitEthernetunit 0
— логический подинтерфейс (да, он всегда есть в Junos, даже если один)family inet
— IPv4 адресное семейство (для IPv6 —family inet6
)
Поначалу может показаться громоздко, но потом точно не захочется возвращаться к плоскому стилю IOS.
OSPF в IOS: сумбур и хаос
В IOS активировать OSPF на всех интерфейсах можно популярной командой:
router ospf 1
network 0.0.0.0 255.255.255.255 area 0
Просто и понятно… если сеть маленькая. Но в большой — ты должен списком загонять каждую сеть в area. Часто запутываешься, где и как назначается area, passive-интерфейсы, или cost — кое-что идёт под процессом OSPF, кое-что — под интерфейсом.
OSPF в Junos — чистота и порядок
В Junos всё логично и структурировано:
protocols {
ospf {
reference-bandwidth 100g;
area 0.0.0.0 {
interface ge-0/0/0.0 {
metric 25;
}
interface ge-0/0/2.0 {
passive;
}
interface lo0.0 {
passive;
}
}
area 0.0.0.1 {
stub;
interface ge-0/0/1.0;
}
}
}
Видно сразу, где у кого какие параметры и в какую зону интерфейс попадает. Это реально облегчает чтение и сопровождение.
Router ID в Junos — глобальный параметр
routing-options {
router-id 1.1.1.1;
}
Глобально на всех протоколах, без разброса по разным местам.
Часть 2. Как настроить маршрутизатор Junos
Рабочие конфигурации в IOS и Junos
В IOS вы привыкли к:
- running-config — текущая, живая конфигурация
- startup-config — сохранённая конфигурация, загружающаяся при старте устройства
Все изменения сразу видны в running-config, но пока не сохранены — не применены на постоянной основе.
В Junos — активная и кандидат-конфигурации
- Active Configuration — текущая работающая конфигурация устройства.
- Candidate Configuration — ваша рабочая зона, куда вы вносите изменения.
Изменения не живут, пока не применены командой commit
. Это позволяет внести много изменений сразу, проверить их и только потом применить.
Вход в режим настройки
Команда:
configure
Можно просто conf
— Junos сам допишет.
Пример смены hostname
В IOS:
hostname Router_1
В Junos:
set system host-name Router_1
Hostname не меняется сразу — изменение пока в кандидат-конфигурации.
Проверяем изменения
Команда для показа отличий:
show | compare
Плюсами показано, что добавлено, минусами — что удалено.
Исправление ошибок
- Перепишите правильную команду — она заменит старое значение.
- Удалите ошибочную настройку:
delete system host-name WrongName
- Сделайте полный откат изменений командой:
rollback
Настройка OSPF в Junos
Добавление пассивного интерфейса в area 0:
set protocols ospf area 0 interface ge-0/0/2.0 passive
Быстрая навигация по иерархии
Команда для перехода в нужный раздел:
edit protocols ospf
Далее вы можете вводить команды без полного пути, например:
set reference-bandwidth 100g
edit area 0
set interface ge-0/0/0.0 metric 25
set interface ge-0/0/2.0 passive
up
top
show | compare
Сохранение конфигурации
После проверки примените изменения:
commit
commit and-quit
Проверка соседей OSPF
show ospf neighbor
Похожая команда как в IOS, просто без слова ip
.
Почему Junos любят инженеры
- Предсказуемая иерархия конфигурации
- Можно делать множество изменений, не боясь ошибиться
- Полный контроль над изменениями перед применением
- Удобная навигация и структура, упрощающие сопровождение
- Возможность отката любых изменений в любое время
Итог
Junos — продуманная операционная система, которая избавляет инженера от хаоса и путаницы, свойственных IOS, делая всё гораздо удобнее, логичнее и предсказуемо. Освоив её, вы существенно упростите себе жизнь и верстку конфигураций.