Automatyzacja konfigurowania routerów Cisco

Pytanie: Zmiana konfiguracji moich routerów Cisco jest koszmarem. Łączę się przez telnet lub ssh, następnie wpisuję konfigurację linia po linii. Najczęściej zmieniam jednocześnie konfigurację ok. 30 routerów. Proces ten zabiera mnóstwo czasu, a w dodatku łatwo o pomyłkę. Czy istnieje możliwość zautomatyzowania tych operacji?

Pytanie: Zmiana konfiguracji moich routerów Cisco jest koszmarem. Łączę się przez telnet lub ssh, następnie wpisuję konfigurację linia po linii. Najczęściej zmieniam jednocześnie konfigurację ok. 30 routerów. Proces ten zabiera mnóstwo czasu, a w dodatku łatwo o pomyłkę. Czy istnieje możliwość zautomatyzowania tych operacji?

Odpowiedź: Automatyzacji konfigurowania sprzętu Cisco można dokonać na kilka sposobów. Jednym z nich jest użycie oprogramowania ConfigMaker lub CiscoWorks. CiscoWorks jest rozwiązaniem sieciowego zarządzania dostarczanym przez Cisco. Oprogramowanie w znaczny sposób upraszcza konfigurację, administrację, monitorowanie oraz rozwiązywanie problemów. Składa się z kilku elementów pozwalających dokonać m.in. automatycznej zmiany konfiguracji na wielu urządzeniach jednocześnie.

Cisco ConfigMaker jest łatwą do użycia aplikacją działającą w środowisku Microsoft Windows. Używany jest do konfiguracji małych sieci składających się ze sprzętu pracującego pod kontrolą Cisco IOS. W celu szybkiej i efektywnej konfiguracji (przykładowo interfejsów) oprogramowanie prowadzi użytkownika przez proces konfiguracyjny. Aby skonfigurować urządzenia, należy wykonać następujące czynności:

  • wybór urządzenia i połączenie w celu stworzenia schematu sieci,
  • konfigurowanie konkretnych urządzeń i połączeń przy użyciu kreatorów i zebranych informacji,
  • wczytywanie konfiguracji do urządzenia bezpośrednio przez sieć.
Cisco ConfigMaker w zasadzie nie wymaga wcześniejszego kontaktu z urządzeniami Cisco lub linią komend Cisco IOS.

Alternatywą jest użycie skryptowego języka opartego na Tcl o nazwie Expect. Został on stworzony w celu automatyzacji działań wykonywanych za pomocą interaktywnych programów typu telnet czy ftp. Telnet może zostać użyty jako program dostępu do routerów oraz wprowadzania komend. Przykład skryptu w języku Expect:

#l/usr/bin/expect

spawn telnet (adres IP routera)

expect "Username:" {send "(nazwa użytkownika)\r"}

expect "Password:" {send "(hasło użytkownika)\r"}

expect "> " {send "enable\r"}

expect "Password:" {send "(hasło enable)\r"}

expect "#" {send "configure terminal\r"}

logfile router.log

send "(komenda do wykonania)\r"

send "(kolejna komenda do wykonania)\r"

send "exit\r"

close

Jak widać, możemy łatwo skonfigurować dowolny router Cisco. Wystarczy zamienić dane na odpowiednie wartości. Kilka godzin poświęconych na naukę Expect umożliwi stworzenie doskonałych skryptów automatyzujących zadania konfiguracji routerów.


TOP 200