Чтение онлайн

ЖАНРЫ

Linux Advanced Routing & Traffic Control HOWTO

Larroy Pedro

Шрифт:

– ----------- | Student network (dorm) | | barcelonawireless |

– ----------------------------------- -------------------------------

Пусть вас не пугает эта схема — дело в том, что большую часть работы Zebra выполнит самостоятельно и вам не потребуется вручную "поднимать" все маршруты. Самое главное, что вы должны уяснить из этой схемы — это топология сети. И особое внимание обратите на область 0 (area 0), как самую важную часть. Для начала сконфигурируем zebra под свои потребности (поправим файл zebra.conf):

hostname omega

password xxx

enable password xxx

!

!
Описание интерфейсов.

!

!interface lo

! пример описания интерфейса.

! interface eth1 multicast

!

! Статический маршрут по-умолчанию

! ip route 0.0.0.0/0 212.170.21.129

! log file /var/log/zebra/zebra.log

В дистрибутиве Debian, кроме того необходимо подредактировать файл /etc/zebra/daemons, чтобы обеспечить запуск демонов во время загрузки системы.

zebra=yes

ospfd=yes

Затем нужно внести соответствующие изменения в ospfd.conf (для случая IPv4) или в ospf6d.conf (для случая IPv6). Мой ospfd.conf выглядит так:

hostname omega

password xxx

enable password xxx

!

router ospf

 network 192.168.0.0/24 area 0

 network 172.17.0.0/16 area 1

!

! направить вывод на stdout в журнал

log file /var/log/zebra/ospfd.log

Здесь размещены инструкции, описывающие топологию сети.

17.1.3. Запуск zebra

Теперь запустим Zebra. Сделать это можно вручную — дав прямую команду zebra –d, либо с помощью сценария начальной загрузки — /etc/init.d/zebra start. После запуска, в журнале ospfd.log , появятся строки, примерно с таким содержанием:

2002/12/13 22:46:24 OSPF: interface 192.168.0.1 join AllSPFRouters Multicast group.

2002/12/13 22:46:34 OSPF: SMUX_CLOSE with reason: 5

2002/12/13 22:46:44 OSPF: SMUX_CLOSE with reason: 5

2002/12/13 22:46:54 OSPF: SMUX_CLOSE with reason: 5

2002/12/13 22:47:04 OSPF: SMUX_CLOSE with reason: 5

2002/12/13 22:47:04 OSPF: DR-Election[1st]: Backup 192.168.0.1

2002/12/13 22:47:04 OSPF: DR-Election[1st]: DR 192.168.0.1

2002/12/13 22:47:04 OSPF: DR-Election[2nd]: Backup 0.0.0.0

2002/12/13 22:47:04 OSPF: DR-Election[2nd]: DR 192.168.0.1

2002/12/13 22:47:04 OSPF: interface 192.168.0.1 join AllDRouters Multicast group.

2002/12/13 22:47:06 OSPF: DR-Election[1st]: Backup 192.168.0.2

2002/12/13 22:47:06 OSPF: DR-Election[1st]: DR 192.168.0.1

2002/12/13 22:47:06 OSPF: Packet[DD]: Negotiation done (Slave).

2002/12/13 22:47:06 OSPF: nsm_change_status: scheduling new router-LSA origination

2002/12/13 22:47:11 OSPF: ospf_intra_add_router: Start

Не

обращайте внимания на строки "…SMUX_CLOSE…", поскольку они относятся к SNMP и не представляют интереса для нас. Из приведенного листинга видно, что 192.168.0.1 — это Выделенный Маршрутизатор (Designated Router), а 192.168.0.2 — Резервный Выделенный Маршрутизатор (Backup Designated Router).

И zebra, и ospfd допускают возможность интерактивного взаимодействия с ними через telnet:

$ telnet localhost zebra

$ telnet localhost ospfd

Попробуем посмотреть список установленных маршрутов, залогировавшись в zebra:

root@atlantis:~# telnet localhost zebra

Trying 127.0.0.1...

Connected to atlantis.

Escape character is '^]'.

Hello, this is zebra (version 0.92a).

Copyright 1996-2001 Kunihiro Ishiguro.

User Access Verification

Password:

atlantis> show ip route

Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF,

B - BGP, > - selected route, * - FIB route

K>* 0.0.0.0/0 via 192.168.0.1, eth1

C>* 127.0.0.0/8 is directly connected, lo

O 172.17.0.0/16 [110/10] is directly connected, eth0, 06:21:53

C>* 172.17.0.0/16 is directly connected, eth0

O 192.168.0.0/24 [110/10] is directly connected, eth1, 06:21:53

C>* 192.168.0.0/24 is directly connected, eth1

atlantis> show ip ospf border-routers

============ OSPF router routing table =============

R 192.168.0.253 [10] area: (0.0.0.0), ABR

via 192.168.0.253, eth1

[10] area: (0.0.0.1), ABR

via 172.17.0.2, eth0

или напрямую, с помощью iproute:

root@omega:~# ip route

212.170.21.128/26 dev eth0 proto kernel scope link src 212.170.21.172

192.168.0.0/24 dev eth1 proto kernel scope link src 192.168.0.1

172.17.0.0/16 via 192.168.0.2 dev eth1 proto zebra metric 20

Поделиться с друзьями: