Emulacja i konfiguracja routerów Cisco za pomocą programu GNS3.
Wstęp
Większość artykułów jest pisana w celu pokazania jak z czegoś dobrego zrobić coś jeszcze lepszego. Są to tak zwane poradniki i ten artykuł też jest takim poradnikiem, ale będzie nieco odmienny od innych. Nie napiszę tu jak zwiększyć pamięć czy też odratować padnięty router. W moim poradniku pokażę jak samemu zbudować sieć w GNS3 oraz skonfigurować routery za pomocą poleceń w trybie CLI (Command Line Interface). Jest to doskonałe ćwiczenie przygotowujące do egzaminu praktycznego Cisco CCNA bez konieczności fizycznego dostępu do profesjonalnych routerów. Przewaga tego rozwiązania nad gotowym programem Packet Tracer jest taka, że możemy wywołać wszystkie polecenia CLI, w tym polecenia niezbędne do redystrybucji tras pomiędzy protokołami routingu oraz emulacji przełącznika Frame-Relay, a które są niedostępne we wspomnianym Packet Tracer.
Poradnik ten będzie dość szczegółowy, aby każdy mógł zrozumieć do czego służą poszczególne polecenia, a więc zapraszam do przeczytania i do spróbowania konfiguracji również osoby, które nie miały styczności z routerami Cisco lub nigdy nie myślały o uzyskaniu certyfikatu CCNA.
Zadania do wykonania
I Uruchomienie i ustawienia programu GNS3.
II Podstawowa konfiguracja routera.
III Konfiguracja protokołów routingu i redystrybucji tras.
IV Konfiguracja emulacji przełącznika Frame-Relay.
I Uruchomienie i ustawienia programu GNS3.
Co potrzebujemy:
- program GNS3 z www.gns3.net
- Hyper Terminal lub inny klient protokołu Telnet,
- systemy operacyjne (IOS - Internetwork Operating System) routerów Cisco, można je ściągnąć ze strony www.cisco.com/web/PL, jeśli jest się klientem firmy Cisco.
Po zainstalowaniu GNS3 (ja używałem wersji 0.7RC1) uruchamiamy go i ukazuje się nam okno:
Wybieramy opcję 1 Configure and test the path... (lub klikamy OK, a z menu głównego programu wybieramy Edit -> Preferences), pokaże się okno, w którym w polu Language wybieramy język polski i klikamy w prawym dolnym rogu na Apply.
W tym samym oknie, z listy po lewej, wybieramy Dynamips, potem klikamy w Testuj. Po chwili obok pojawi się komunikat Dynamips started succesfully.
Klikamy Ok
Teraz trzeba przypisać obrazy IOS routerów do poszczególnych routerów w GNS3.
Jeśli mamy otwarte okno Setup Wizard to wybieramy opcję 2 Add one or more.. (lub z menu głównego wybieramy Edycja -> Obrazy IOS....)
Otworzy się okno:
w którym klikamy w przycisk obok pola Plik obrazu i wybieramy ściągnięty plik obrazu IOS routera. Należy również wybrać w polu Platforma rodzaj routera oraz konkretny model w polu Model. Po wszystkim klikamy Zapisz. Jeśli mamy więcej obrazów IOS możemy je również przypisać do odpowiednich routerów.
Po zakończeniu klikamy Zamknij
Teraz otwieramy nowy projekt za pomocą Plik -> Nowy projekt, w oknie, które się pojawiło wpisujemy nazwę projektu, zaznaczamy Save nvrams... oraz zaznaczamy Eksportowanie plików konfiguracyjnych.... i klikamy OK.
II Podstawowa konfiguracja routera.
Przystępujemy do stworzenia sieci, którą będziemy emulować.
Proponuję stworzenie sieci takiej jak na poniższym rysunku, w której wykorzystywane będą cztery protokoły routingu oraz włączona będzie redystrybucja tras. Aby stworzyć sieć należy przeciągnąć routery, dla których przypisaliśmy obraz IOS do głównego okna.
Należy również dodać interfejsy do routerów. Zaznaczamy wszystkie routery (Ctrl+A), klikamy prawym przyciskiem na router R1 i wybieramy Konfiguruj, klikamy na zakładkę Sloty i dla slotu 0 wybieramy NN-1FE-TX, dodajemy taki slot do wszystkich routerów, a dodatkowo dla routerów R1, R2, R3 oraz R4 dla slotu 1 wybieramy NM-4T. Wybrane sloty dla routera R1 przedstawia poniższy rysunek.
Połączenia szeregowe (czerwone) między routerami ustanawiamy za pomocą interfejsów szeregowych, klikając w głównym menu na i wybierając Serial. Łączymy routery w odpowiedniej kolejności: R1 z R2, potem R2 z R3, potem R3 z R4 oraz R4 z R1. Kolejność łączenia routerów ma znaczenie, ponieważ odpowiedni interfejs danego routera musi być połączony z odpowiednim interfejsem następnego routera (interfejs serial 1/0 routera R1 musi łączyć się z interfejsem serial 1/0 routera R2, a interfejs serial 1/1 routera R2 musi łączyć się z interfejsem serial 1/0 routera R3. itd. - nie będzie wtedy błędów przy przepisywaniu konfiguracji ).
Następnie należy ustanowić połączenia Ethernet (czarne) pomiędzy routerami za pomocą interfejsów FastEthernet, klikając w głównym menu na i wybierając Fast Ethernet. Każdy router będzie wykorzystywał interfejs Fast Ethernet 0/0.
Teraz trzeba uruchomić wszystkie routery klikając w menu głównym na
Niestety taka ilość uruchomionych systemów operacyjnych routerów znacznie obciąża procesor naszego komputera. Należy zatem zmniejszyć wykorzystanie procesora. Odczekujemy ok. 1 minutę, aż wszystkie IOS routerów w pełni się uruchomią i klikamy prawym przyciskiem na dany router, wybieramy z menu wartość IDLE-PC. W oknie, które pojawi się po chwili wybieramy wartość, przy której jest * (gwiazdka). Wykonujemy zmianę wartości IDLE-PC dla pozostałych routerów.
Jeśli po zmianie wartości IDLE-PC dla wszystkich routerów użycie procesora nie obniżyło się oznacza to, że nie zostały wybrane optymalne ustawienia, więc należy ponownie ustawić wartość IDLE-PC dla poszczególnych routerów wybierając inne wartości, lecz tylko te oznaczone gwiazdką.
Teraz uruchamiamy Hyper Terminal, wpisujemy nazwę połączenia, najlepiej taką jak nazwa routera i klikamy OK. W następnym oknie w Połącz używając wybieramy TCP/IP (Winsock), uaktywnią się dwa pola: Adres hosta, w którym wpisujemy localhost oraz Numer portu gdzie wpisujemy numer portu konsoli danego routera (domyślnie dla R1 jest 2000, dla R2 jest 2001, itd.).
Po uruchomieniu ukazuje się nam komunikat:
Cytat
Would you like to enter the initial configuration dialog? [yes/no]:
czyli czy chcemy skorzystać z konfiguracji uproszczonej. Odpowiadamy, że nie wpisując no
Jeśli pojawi się komunikat:
Cytat
Would you like to terminate autoinstall? [yes]:
To wpisujemy yes
Po chwili pojawi się komunikat:
Cytat
Press RETURN to get started!
Wciskamy Enter, pojawiają się komunikaty informujące o statusie poszczególnych interfejsów, wciskamy ponownie Enter i pojawi się konsola:
Cytat
Router>
Słowo Router to nazwa naszego routera (zmienimy ją później) a po nim występuje znak >, który oznacza, że jesteśmy w trybie zwykłego użytkownika. Znak # oznacza, ze jesteśmy w trybie uprzywilejowanym, a z niego możemy przejść do konfiguracji routera (oznaczenie (config) po znaku #).
Wpisując polecenia można używać tabulatora lub użyć znaku zapytania ?, aby router dokończył dalszy człon polecenia, dzięki temu nie musimy pisać całego członu polecenia. Można wpisać również tylko pierwsze litery członu polecenia, jeśli wpis będzie jednoznaczny dla routera, np. zamiast pisać configure terminal można wpisać conf t i wcisnąć Enter. Natomiast wpis con t będzie dla routera niejednoznaczny ponieważ dla wpisu con router ma dwa możliwe polecenia: configure i connect.
Przejdźmy, zatem do trybu uprzywilejowanego wpisując enable oraz do trybu konfiguracji wpisując configure terminal
Cytat
Router>
Router>enable
Router#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#
Zmieniamy nazwę routera na R1:
Cytat
Router(config)#hostname R1
Możemy również nadać hasło dostępu do tryb uprzywilejowanego routera. Hasło: router
Cytat
R1(config)#enable secret router
Ustawiamy właściwości połączenia konsolowego, aby nie było zakłócane przez niespodziewane komunikaty oraz żeby nie było rozłączane po domyślnym czasie bezczynności w konsoli:
Możemy również skonfigurować właściwości połączenia telnetowego, aby nie było zakłócane przez niespodziewane komunikaty, nadajemy hasło dostępu oraz ustawiamy nierozłączanie po domyślnym czasie bezczynności:
Powyższą konfigurację robimy również dla pozostałych routerów nadając im odpowiednie nazwy.
III Konfiguracja protokołów routingu i redystrybucji tras.
1) Konfiguracja interfejsów
Przechodzimy do konfiguracji interfejsu serial1/0 włączając go i otrzymujemy komunikat, że interfejs został włączony.
Cytat
R1(config)#interface serial 1/0
R1(config-if)#ip address 192.168.1.1 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#
*Mar 1 00:45:09.851: %LINK-3-UPDOWN: Interface Serial1/0, changed state to up
*Mar 1 00:45:10.851: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1/0, changed state to up
Przechodzimy do konfiguracji interfejsu serial1/1 włączając go i otrzymujemy komunikat, że interfejs został włączony.
Cytat
R1(config)#interface serial 1/1
R1(config-if)#ip address 192.168.4.2 255.255.255.0
R1(config-if)#no shutdown
R1(config-if)#
*Mar 1 00:45:47.355: %LINK-3-UPDOWN: Interface Serial1/1, changed state to up
*Mar 1 00:45:48.355: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1/1, changed state to up
Przechodzimy do konfiguracji interfejsu fastEthernet0/0 włączając go i otrzymujemy komunikat, że interfejs został włączony.
Cytat
R1(config)#interface fastEthernet 0/0
R1(config-if)#ip address 192.168.5.1 255.255.255.0
R1(config-if)#no shutdown
*Mar 1 00:47:03.483: %LINK-3-UPDOWN: Interface FastEthernet0/0, changed state to up
*Mar 1 00:47:04.483: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up
Taką konfigurację należy przeprowadzić na routerach R1, R2, R3, R4 ustawiając adresy IP jak poniżej:
Router R2:
- Serial 1/0 - 192.168.1.2
- Serial 1/1 - 192.168.2.1
- FastEthernet 0/0 - 192.168.6.1
Router R3:
- Serial 1/0 - 192.168.2.2
- Serial 1/1 - 192.168.3.1
- FastEthernet 0/0 - 192.168.7.1
Router R4:
- Serial 1/0 - 192.168.3.2
- Serial 1/1 - 192.168.4.1
- FastEthernet 0/0 - 192.168.8.1
Na routerach R5, R6, R7, R8 należy skonfigurować tylko interfejs FastEthernet 0/0 ustawiając adresy IP jak poniżej:
Router R5:
- FastEthernet 0/0 - 192.168.5.2
Router R6:
- FastEthernet 0/0 - 192.168.6.2
Router R7:
- FastEthernet 0/0 - 192.168.7.2
Router R8:
- FastEthernet 0/0 - 192.168.8.2
2) Konfigurowanie protokołów routingu RIPv2, EIGRP, OSPF i BGP.
Aby umożliwić wymianę pakietów pomiędzy wszystkimi routerami należy na nich uruchomić protokół routingu. Uruchomimy cztery protokoły routingu: RIPv2, OSPF, EIGRP, BGP oraz włączymy redystrybucję tras pomiędzy nimi na routerach R1, R2, R3 i R4.
Router R1 - protokół RIP i BGP.
Uruchamiamy protokół routingu RIP w wersji drugiej i wpisujemy sieć przyległą, której istnienie będzie rozgłaszane do sąsiednich routerów.
Uruchamiamy protokół routingu BGP nadając mu identyfikator systemu autonomicznego ASN nr 1, wpisujemy sieci przyległe oraz podajemy interfejsy sąsiednich routerów wraz z ich identyfikatorem ASN.
Uruchamiamy protokół routingu EIGRP nadając mu identyfikator o nr 100 wpisujemy sieci przyległe, których istnienie będzie rozgłaszane do sąsiednich routerów.
Uruchamiamy protokół routingu BGP nadając mu identyfikator systemu autonomicznego ASN nr 2, wpisujemy sieci przyległe oraz podajemy interfejsy sąsiednich routerów wraz z ich identyfikatorem ASN.
Na końcu pojawił się komunikat mówiący, że sąsiedni router R1 potwierdził, że jego interfejs jest włączony.
Włączamy redystrybucję tras EIGRP w protokole BGP.
Cytat
R2(config-router)#redistribute eigrp 100
Router R3 - protokół OSPF i BGP
Uruchamiamy protokół routingu OSPF nadając mu identyfikator o nr 200 i wpisujemy sieci przyległe podając, że mają być one przypisane do obszaru o nr 0:
Konfigurując protokół OSPF należy wpisać odwrotną maskę podsieci.
Cytat
R3(config)#router ospf 1
R3(config-router)#network 192.168.2.0 0.0.0.255 area 0
R3(config-router)#network 192.168.3.0 0.0.0.255 area 0
Uruchamiamy protokół routingu BGP nadając mu identyfikator systemu autonomicznego ASN nr 3, wpisujemy sieci przyległe oraz podajemy interfejsy sąsiednich routerów wraz z ich identyfikatorem ASN.
Na końcu pojawił się komunikat mówiący, że sąsiedni router R2 potwierdziły, że jego interfejs jest włączony.
Włączamy redystrybucję tras OSPF w protokole BGP.
Cytat
R3(config-router)#redistribute ospf 200
Router R4 - protokół BGP
Uruchamiamy protokół routingu BGP nadając mu identyfikator systemu autonomicznego ASN nr 4, wpisujemy sieci przyległe oraz podajemy interfejsy sąsiednich routerów wraz z ich identyfikatorem ASN.
Na końcu pojawił się komunikat mówiący, że sąsiednie routery R1 i R3 potwierdziły, że ich interfejsy są włączone.
3) Zapisywanie konfiguracji
Zapisywanie konfiguracji wykonujemy poleceniem write, lecz należy je wykonać z poziomu trybu uprzywilejowanego, dlatego trzeba wyjść z trybu konfiguracji za pomocą CTRL + C. Niektóre IOS pozwalają na wykonanie poleceń trybu uprzywilejowanego z poziomu trybu konfiguracji, lecz należy dodać przed komendą słowo do (np. możemy z poziomu R1(config-router)# dokonać zapisu konfiguracji za pomocą polecenia do write).
Cytat
R1#write
Building configuration...
[OK]
Należy wykonać zapisanie konfiguracji dla wszystkich routerów.
Zapisujemy również cały projekt klikając w głównym menu na Plik-> Zapisz.
Po chwili routery powinny przesłać pomiędzy sobą informacje o dostępnych trasach. Możemy to sprawdzić przeglądając tablicę routingu. W tym celu trzeba wydać polecenie show ip route w trybie uprzywilejowanym. Oto wynik tego polecenia dla routera R3:
Oznaczenie C w tablicy routingu oznacza, że te sieci są połączone bezpośrednio z tym routerem (directly connected), natomiast kod B oznacza, że dana trasa została dodana do tablicy routingu przez protokół BGP. Jak widać router R3 otrzymał informacje o trasach do wszystkich sieci w tej topologii.
Dzięki poleceniu show running-config można zobaczyć ustawienia danego routera, aby skorygować ewentualne błędy w konfiguracji.
Przydatne w ustaleniu błędów przy konfigurowaniu będzie również polecenie show ip interface, które pokazuje szczegóły o interfejsach.
Jeśli to polecenie wskazuje, że któryś z interfejsów jest wyłączony: ...is administratively down, line protocol is down oznacza to, że interfejs nie został włączony poleceniem no shutdown.
IV Konfiguracja emulacji przełącznika Frame-Relay.
Routery Cisco potrafią również emulować przełącznik Frame Relay.
Spróbujemy dokonać takiej emulacji na routerze R4 w poniższej sieci.
Otwieramy nowy projekt za pomocą Plik -> Nowy projekt, w oknie, które się pojawiło wpisujemy nazwę projektu, zaznaczamy Save nvrams... oraz zaznaczamy Eksportowanie plików konfiguracyjnych.... i klikamy OK.
1) Podstawowa konfiguracja
Podstawową konfigurację należy wykonać tak jak w pkt II
2) Konfiguracja interfejsów i emulacja Frame-Relay
Konfiguracja routera R1
Przechodzimy do konfiguracji interfejsu serial1/0 włączając go i otrzymujemy komunikat, że interfejs został włączony.
Cytat
R1(config)#interface serial 1/0
R1(config-if)#no shutdown
R1(config-if)#
*Mar 1 00:02:37.791: %LINK-3-UPDOWN: Interface Serial1/0, changed state to up
*Mar 1 00:02:38.791: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial1/0, changed state to up
Włączamy enkaspulację frame-relay.
Cytat
R1(config-if)#encapsulation frame-relay
Tworzymy podinterfejs serial 1/0.20 typu punkt-punkt, nadajemy adres ip oraz lokalny identyfikator DLCI nr 20.
Analogicznie wykonujemy konfigurację dla routerów R2 i R3 nadając następujące adresy IP oraz identyfikatory DLCI dla interfejsu serial 1/0.
Router R2:
- podinterfejs serial 1/0.30 - DLCI 30 - 192.168.1.2
- podinterfejs serial 1/0.31 - DLCI 31 - 192.168.2.1
Router R3:
- podinterfejs serial 1/0.40 - DLCI 40 - 192.168.3.2
- podinterfejs serial 1/0.41 - DLCI 41 - 192.168.2.2
Identyfikatory DLCI nie muszą być takie same jak numery podinterfejsów, ale użyłem takich samych dla ułatwienia konfiguracji.
Konfiguracja routera R4
Przechodzimy do skonfigurowania routera R4 tak, aby działał jak przełącznik Frame-Relay.
Włączamy emulację przełącznika frame-relay na R4:
Cytat
R4(config)#frame-relay switching
Konfigurujemy interfejs serial 1/0:
Włączamy enkapsulację frame-relay, wybieramy częstotliwość taktowania zegara portu szeregowego, następnie ustawiamy typ interfejsu LMI na Cisco, a ostatnie polecenie ustawia interfejs w tryb DCE.
Następnie konfigurujemy trasy czyli informacje o tym pod jaki interfejs i pod jaki identyfikator DLCI ma być wysłany pakiet wchodzący przez ten interfejs z danym identyfikatorem DLCI. Na końcu włączamy ten interfejs.
Cytat
R4(config-if)#frame-relay route 20 interface serial 1/1 30
R4(config-if)#frame-relay route 21 interface serial 1/2 40
R4(config-if)#no shutdown
*Mar 1 00:29:21.001: %LINK-3-UPDOWN: Interface Serial1/0, changed state to up
Podobnie konfigurujemy interfejs serial 1/1:
Cytat
R4(config)#interface serial 1/1
R4(config-if)#encapsulation frame-relay
R4(config-if)#clock rate 128000
R4(config-if)#frame-relay lmi-type cisco
R4(config-if)#frame-relay intf-type dce
R4(config-if)#frame-relay route 30 interface serial 1/0 20
R4(config-if)#frame-relay route 31 interface serial 1/2 41
R4(config-if)#no shutdown
*Mar 1 00:39:32.085: %LINK-3-UPDOWN: Interface Serial1/1, changed state to up
Na końcu analogicznie konfigurujemy interfejs serial 1/2:
Cytat
R4(config)#interface serial 1/2
R4(config-if)#encapsulation frame-relay
R4(config-if)#clock rate 128000
R4(config-if)#frame-relay lmi-type cisco
R4(config-if)#frame-relay intf-type dce
R4(config-if)#frame-relay route 40 interface serial 1/0 21
R4(config-if)#frame-relay route 41 interface serial 1/1 31
R4(config-if)#no shutdown
*Mar 1 00:47:41.046: %LINK-3-UPDOWN: Interface Serial1/1, changed state to up
Zapisujemy konfigurację wydając polecenie write na wszystkich routerach.
Zapisujemy również cały projekt klikając w głównym menu na Plik -> Zapisz.
Router R4 pracuje teraz jak przełącznik Frame-Relay, można wywołać polecenie show running-config, aby zobaczyć ustawienia poszczególnych routerów. Przydatne będzie również polecenie show frame-relay pvc, aby zobaczyć wirtualne obwody PVC oraz polecenie debug frame-relay switching, które będzie pokazywało przesyłane pakiety związane z protokołem Frame-Relay (należy zakończyć je wpisując no debug frame-relay switching).
Edytowany przez cafi dnia 22-01-2010 19:51
Bardzo fajny artykuł. Mam prośbę czy możesz również pokazać jak skonfigurować protokół ISIS ??. bo za bardzo nie wiem !!. Chodzi mi głownie o to ze muszę stworzyć topologię sieci i przetestować cztery protokoły: BGP, RIP, OSPf, ISIS.
Pomocy Dziękuje
Mam jeszcze pytanko, przepraszam jeśli jest banalne!!. Czy na takiej topologi jaka jest wyżej (8 routerów) skonfigurowanie oraz testowanie protokołu ISIS jest problemem??. Czy raczej należałoby coś dorzucić jeszcze?. Bo ja szukam czegoś gdzie mógłbym od razu wszystkie cztery protokoły ( bgp, rip, ospf, isis ) skonfigurować i przetestować!.
Dziękuje
W tej topologii można byłoby zastąpić protokół EIGRP działający na routerze R2 protokołem IS-IS, ale jeśli chciałbyś mieć kilka obszarów (area) w protokole IS-IS to należałoby skonfigurować również router R6 i dorzucić jeszcze jeden router za routerem R6.
Edytowany przez cafi dnia 26-03-2010 09:52
· Łącznie użytkowników: 24,115 · Najnowszy użytkownik: Ja
Czat
Musisz się zalogować, aby opublikować wiadomość.
Maniek91PL
06-11-2024 22:37
dzięki !
maxikaaz
29-10-2024 14:27
@Maniek91PL - Administration=> Admin Access, i tam masz "Allow Wireless Access" do zaznaczenia
Maniek91PL
26-10-2024 22:07
siemka! ktoś przypomni co się ustawiało jeśli nie mogę wejść od strony wifi do tomato? od lan działa
overflow2
04-10-2024 17:34
Kupowałem Asusy n10u albo n12d1 ale nie widzę ich, chyba już nie produkują, Chodzi o coś nowego i taniego. Transfery niewielkie.
maxikaaz
04-10-2024 09:38
@overflow2 patrząc po dostępności funkcji w nowych kompilacjach, to chyba nawet WRT54G/GL jeszcze ma OpenVPN, albo jakiś odpowiednik... zależy, na jakie transfery liczysz.
overflow2
30-09-2024 20:53
Jaki aktualnie najtańszy router do tomato do openvpn?
maxikaaz
27-07-2024 15:07
@servee - na początek router do rozebrania i obejrzenia, ciężko wróżyć tak tylko po objawach
maxikaaz
27-07-2024 14:55
@servee - cały kontroler nie pada tak sobie z powodu "zbiegu okoliczności", więc prawdopodobnie gdzieś przepięcie.
servee
25-07-2024 13:33
@maxikaaz: działało, aż pewnego pięknego dnia przestało działać. W tym dniu była też burza, ale to raczej zbieg okoliczności.
maxikaaz
25-07-2024 11:38
@servee - o ile problem jest w obrębie samych wyjść (dławiki, warystory), to naprawialne, ale jeśli w samym SoC - to nienaprawialne ze względu na koszta. A co było przyczyną?