(K) Konfiguracja protokołu DMVPN phase I**

Konfiguracja tunelu GRE

(config)# interface tunnel 0-2147483647(tunel-ID)

Tworzy nowy interfejs wirtualny (Tunel GRE).

(config-if)# ip address adres-IP

Przypisuje adres IP, do konfigurowanego konfigurowanego tunelu GRE.

(config-if)# tunnel source {adres-IP / interfejs}

Określa interfejs źródłowy wykorzystywany przy enkapsulacji oraz dekapsulacji ruchu sieciowego, kierowanego na interfejs wirtualny (Tunel). Źródłem tunelu GRE może być zarówno interfejs fizyczny jak i wirtualny (Loopback), który zapewnia osiągalność pomimo awarii jednego z interfejsów fizycznych.

(config-if)# tunnel destination adres-IP

Określa adres IP urządzenia docelowego (Końcówki tunelu GRE).

(config-if)# bandwidth 1-00000000(Kbps)*

Interfejsy wirtualne nie posiadają koncepcji opóźnień (Latency), ani statycznie przypisanego pasa (Bandwidth). Związku z tym administrator sam powinien określić wartość, która będzie wykorzystywana przez protokoły routingu w procesie poszukiwaniu najlepszej trasy dotarcia do sieci docelowej bądź przez funkcję QoS.

(config-if)# keepalive [0-32767] [1-255]*

Tunel GRE domyślnie stanowi połączenie Point-to-Point wykrywane jako aktywne „Up”, w sytuacji w której urządzenie lokalne posiada trasę do docelowego adresu IP [tunnel destination adres-IP]. Jeżeli takowy adres nie znajduje się w tablicy routingu interfejs pozostaje nieaktywny „Down”. Funkcja Keepalive sprawdza ponadto stan połączenia „line protocol” aby ruter nie musiał polegać jedynie na czasach protokołów routingu dynamicznego.

(config-if)# ip mtu 68-17916*

Określa wartość MTU względem konfigurowanego interfejsu sieciowego. Jako że enkapsulacja GRE dodaje do ramki pakietu IP minimum 24 bajty, maksymalna wielkość pakietu może zostać przekroczona a tym samym wymagana będzie fragmentacja. Aby ograniczyć potrzebę fragmentacji, należy skonfigurować niższą wartość MTU, niż ta domyślnie stosowana (1500), w przypadku tuneli DMVPN zaleca się stosowanie wartości 1400.

# show interface tunnel 0-2147483647(tunel-ID)

Wyświetla szczegółowe informacje na temat interfejsu wirtualnego (Tunelu GRE).

Konfiguracja tunelu DMVPN

# Działanie fazy pierwszej protokołu DMVPN zostało opisane w artykule: Fazy protokołu DMVPN.

Faza pierwsza protokołu DMVPN umożliwia nawiązanie połączenia Hub-to-Spoke.

Konfiguracja rutera pełniącego rolę HUB-a

Podstawowa konfiguracja rutera HUB

(config)# interface tunnel 0-2147483647(tunel-ID)

Tworzy nowy interfejs wirtualny (Tunel GRE).

(config-if)# ip address adres-IP

Przypisuje adres IP, do konfigurowanego tunelu GRE.

(config-if)# tunnel source {adres-IP / interfejs}

Określa interfejs źródłowy wykorzystywany do enkapsulacji oraz dekapsulacja ruchu sieciowego, kierowanego na interfejs wirtualny. Źródłem tunelu GRE może być zarówno interfejs fizyczny jak i wirtualny (Loopback), który zapewnia osiągalność pomimo awarii jednego z interfejsów fizycznych.
Stosowanie interfejsów wirtualnych (Loopback) jako interfejsów źródłowych tunelu GRE, może stwarzać problemy z funkcją QoS.

(config-if)# tunnel mode gre multipoint

Określa tryb pracy tunelu GRE na mGRE (Multipoint GRE).

(config-if)# tunnel key 0-4294967295(Klucz)*

Umożliwia identyfikacje konfigurowanego tunelu, w sytuacji współdzielenia jednego interfejsu źródłowego, przez wiele interfejsów wirtualnych (Tuneli GRE). Wartość klucza musi się zgadzać pomiędzy urządzeniami aby mogły one nawiązać ze sobą połączenie wirtualne (Klucz dodaje 4 bajty do nagłówka protokołu GRE).

(config-if)# ip nhrp network-id 1-4294967295

Lokalna wartość identyfikująca określoną chmurę (Cloud) protokołu DMVPN. (Zaleca się stosowanie tej samej wartości Network-ID na wszystkich ruterach należących do tej samej sieci DMVPN).
Chodź nie ma technicznej korelacji pomiędzy wartością Network-ID a kluczem tunelu DMVPN, to wartości te powinny być takie same w celu utrzymania przejrzystej konfiguracji, wspomagającej późniejsze wsparcie techniczne dla danej sieci.

(config-if)# ip nhrp map multicast dynamic

Umożliwia przenoszenie ruchu multicast poprzez tunel DMVPN.
Tunele mGRE nie wspierają funkcji Keepalive.

Opcjonalna konfiguracja rutera HUB

(config)# interface tunnel 0-2147483647(tunel-ID)

Tworzy nowy interfejs wirtualny (Tunel GRE).

(config)# ip nhrp holdtime 1-65535(sekundy)*

Definiuje okres czasu po jakim wygasa rejestracja tunelu Dynamic DMVPN (Spoke to Spoke) oraz (Hub to Spoke) (Tunel statyczny Spoke to Hub nie wygasa).

(config)# ip nhrp registration timeout 1-65535(sekundy)*

Definiuje odstępy czasowe w wysyłaniu wiadomości Keepalive protokołu NHRP (Resetuje czas holdtime).

(config-if)# ip nhrp authentication hasło*

Tworzy nowe hasło protokołu NHRP, uwierzytelniające strony komunikacji.

(config-if)# ip nhrp registration no-unique*

Blokuje proces domyślnego oznaczania ruterów NHC flagą „Unique”.

(config-if)# bandwidth 1-00000000(Kbps)*

Interfejsy wirtualne nie posiadają koncepcji opóźnień (Latency), ani statycznie przypisanego pasa (Bandwidth). Związku z tym administrator sam powinien określić wartość, która będzie wykorzystywana przez protokoły routingu w procesie poszukiwaniu najlepszej trasy dotarcia do sieci docelowej bądź przez funkcję QoS.

(config-if)# ip mtu 68-17916*

Określa wartość MTU względem konfigurowanego interfejsu sieciowego. Jako że enkapsulacja GRE dodaje do ramki pakietu IP minimum 24 bajty, maksymalna wielkość pakietu może zostać przekroczona a tym samym wymagana będzie fragmentacja. Aby ograniczyć potrzebę fragmentacji, należy skonfigurować niższą wartość MTU, niż ta domyślnie stosowana (1500), w przypadku tuneli DMVPN zaleca się stosowanie wartości 1400.

(config-if)# tunnel path-mtu-discovery [age-timer {aging-mins(10) / infinite}min-mtu mtu-bytes(92)]*

Na podstawie informacji zawartych w wiadomościach ICMP typu 3 oraz 4, pasywnie wykrywa właściwą wartość MTU, umożliwiając ponowne sprawdzenie maksymalnej dostępne wartości MTU, po upływie czasu (aging timer). Z=Znacząco zmniejsza ryzyko fragmentacji.

(config-if)# ip tcp adjust-mss 500-1460(536)*

TCP adjust zapewnia, że ruter dokona edycji segmentu TCP Three-way Handshake jeżeli przekroczy on skonfigurowaną, maksymalną wartość MSS (Maximum Segment Size). W przypadku tuneli DMVPN zaleca się stosowanie wartości 1360, aby pomieścić zawartość nagłówka rozszerzonego o dane protokołu IP, GRE oraz IPsec.

(config-if)# keepalive [0-32767] [1-255]*

Tunel GRE domyślnie stanowi połączenie Point-to-Point wykrywane jako aktywne „Up”, w sytuacji w której urządzenie lokalne posiada trasę do docelowego adresu IP [tunnel destination adres-IP]. Jeżeli takowy adres nie znajduje się w tablicy routingu interfejs pozostaje nieaktywny „Down”. Funkcja Keepalive sprawdza ponadto stan połączenia „line protocol” aby ruter nie musiał polegać jedynie na czasach protokołów routingu dynamicznego.
Każdy ruter NHC zarejestrowany na serwerze NHS, posiada przypisany adres IP tunelu GRE, wraz z odpowiadającym mu adresem sieci NBMA. Wpisy te oznaczone flagą "Unique", są widoczne w wydruku komendy [show ip nhrp adres-IP], związku z tym nie mogą być zmienione, a wszelka ingerencja w skonfigurowany adres NBMA zarejestrowanego rutera NHC, spowoduje wystąpienie błędu [%NHRP-3-PAKREPLY: Recive Registration Reply packet with error - unique address registred already (14)] na ruterze NHC.

Dodatkowa konfiguracja rutera HUB pod kontem protokołów routingu dynamicznego

(config)# interface tunnel 0-2147483647(tunel-ID)

Tworzy nowy interfejs wirtualny (Tunel GRE).

(config-if)# no ip split-horizon eigrp ASN

Wyłącza funkcję podzielonego horyzontu „split-horizon”, względem protokołu EIGRP.

(config-if)# ip ospf network point-to-multipoint

Zmienia domyślny rodzaj sieci protokołu OSPF (Point to Point), na sieć rozgłoszeni-ową Broadcast, względem połączenia wirtualnego DMVPN.

Konfiguracja rutera pełniącego rolę SPOKE

Podstawowa konfiguracja rutera SPOKE

Konfiguracja rutera NHC (Spoke) w fazie DMVPN Phase 1 jest podobna do konfiguracji rutera NHS (Hub) z wyjątkiem: wykorzystania tunelu GRE zamiast mGRE oraz koniecznego mapowania do przynajmniej jednego z ruterów NHS (Hub-a DMVPN).

(config)# interface tunnel 0-2147483647(tunel-ID)

Tworzy nowy interfejs wirtualny (Tunel GRE).

(config-if)# ip address adres-IP

Przypisuje adres IP, do konfigurowanego tunelu GRE.

(config-if)# tunnel source {adres-IP / interfejs}

Określa interfejs źródłowy wykorzystywany do enkapsulacji oraz dekapsulacji ruchu sieciowego, kierowanego na interfejs wirtualny. Źródłem tunelu GRE może być zarówno interfejs fizyczny jak i wirtualny (Loopback), który zapewnia osiągalność pomimo awarii jednego z interfejsów fizycznych.
Stosowanie interfejsów wirtualnych (Loopback) jako interfejsów źródłowych tunelu GRE, może powodować problemy z funkcją QoS.

(config-if)# tunnel destination adres-IP(Adres NBMA)

Określa docelowy adres IP, sieci „Underlay Network” (NBMA).

(config-if)# tunnel key 0-4294967295(Klucz)*

Umożliwia identyfikacje konfigurowanego tunelu, w sytuacji współdzielenia jednego interfejsu źródłowego, przez wiele interfejsów wirtualnych (Tuneli GRE). Wartość klucza musi się zgadzać pomiędzy urządzeniami aby mogły one nawiązać ze sobą połączenie wirtualne (Klucz dodaje 4 bajty do nagłówka protokołu GRE).

(config-if)# ip nhrp network-id 1-4294967295

Lokalna wartość identyfikująca określoną chmurę (Cloud) protokołu DMVPN. (Zaleca się stosowanie tej samej wartości Network-ID na wszystkich ruterach należących do tej samej sieci DMVPN).

(config-if)# ip nhrp nhs adres-IP(Adres rutera NHS) nbma adres-IP(Adres NBMA) [multicast]

Określa adres IP, przynajmniej jednego rutera pełniącego rolę NHS. Adres NHS odnosi się do adresu IP skonfigurowanego na interfejsie wirtualnym (GRE), natomiast adres NBMA określa adres IP sieci wielodostęp-owej (Przeważnie będącej siecią publiczną).
* multicast – Umożliwia przenoszenie ruchu multicast poprzez tunel DMVPN, umożliwiając tym samym obsługę protokołów routingu dynamicznego.

# show dmvpn [detail]

Wyświetla szczegółowe informacje dotyczące statusu tuneli wirtualnych (DMVPN) w tym: status tuneli GRE, adres IP (NBMA) adres IP (GRE), tryb pracy Hub/Spoke, ilość podłączonych ruterów NHC (W przypadku rutera NHS) oraz szczegółowe informacje na tematach podłączonych ruterów NHS bądź NHC, w tym tryb pracy wybranego tunelu (Static/Dynamic).

Konfiguracja wielu ruterów HUB

(config)# interface tunnel 0-2147483647(tunel-ID)

Tworzy nowy interfejs wirtualny (Tunel GRE).

(config-if)# ip nhrp nhs cluster 0-10(ID klastera) max-connections 0-255(Maksymalna ilość jednoczesnych połączeń)

Określa maksymalną liczbę serwerów NHS jakie mogą być jednocześnie aktywne, względem jednego klastera DMVPN.

(config-if)# ip nhrp nhs fallback 0-60(Sekundy)

(config-if)# ip nhrp nhs adres-IP(Adres rutera NHS) priority 0-255(Priorytet rutera NHS)
(config-if)# ip nhrp nhs adres-IP(Adres rutera NHS) cluster 0-10(ID klastera)

Określa wartość priorytetu rutera NHS oraz klaster do jakiego należy.
Powyższe oraz poniższa komenda, jest stosowana zamiennie.

(config-if)# ip nhrp nhs adres-IP(Adres rutera NHS) nbma adres-IP(Adres NBMA) [multicast] priority 0-255(Priorytet rutera NHS) cluster 0-10(ID klastera)

Określa wartość priorytetu rutera NHS oraz klaster do jakiego należy.

# show ip nhrp nhs redundancy

Wyświetla

Opcjonalna konfiguracja rutera SPOKE

(config)# interface tunnel 0-2147483647(tunel-ID)

Tworzy nowy interfejs wirtualny (Tunel GRE).

(config)# ip nhrp holdtime 1-65535(sekundy)*

Definiuje okres czasu po jakim wygasa rejestracja tunelu Dynamic DMVPN (Spoke to Spoke) oraz (Hub to Spoke) (Tunel statyczny Spoke to Hub nie wygasa).

(config)# ip nhrp registration timeout 1-65535(sekundy)*

Definiuje odstępy czasowe w wysyłaniu wiadomości Keepalive protokołu NHRP (Resetuje czas holdtime).

(config-if)# ip nhrp authentication hasło*

Tworzy nowe hasło protokołu NHRP, uwierzytelniające strony komunikacji.

(config-if)# bandwidth 1-00000000(Kbps)*

Interfejsy wirtualne nie posiadają koncepcji opóźnień (Latency), ani statycznie przypisanego pasa (Bandwidth). Związku z tym administrator sam powinien określić wartość, która będzie wykorzystywana przez protokoły routingu w procesie poszukiwaniu najlepszej trasy dotarcia do sieci docelowej bądź przez funkcję QoS.

(config-if)# ip mtu 68-17916*

Określa wartość MTU względem konfigurowanego interfejsu sieciowego. Jako że enkapsulacja GRE dodaje do ramki pakietu IP minimum 24 bajty, maksymalna wielkość pakietu może zostać przekroczona a tym samym wymagana będzie fragmentacja. Aby ograniczyć potrzebę fragmentacji, należy skonfigurować niższą wartość MTU, niż ta domyślnie stosowana (1500), w przypadku tuneli DMVPN zaleca się stosowanie wartości 1400.

(config-if)# tunnel path-mtu-discovery [age-timer {aging-mins(10) / infinite}min-mtu mtu-bytes(92)]*

Na podstawie informacji zawartych w wiadomościach ICMP typu 3 oraz 4, pasywnie wykrywa właściwą wartość MTU, umożliwiając ponowne sprawdzenie maksymalnej dostępne wartości MTU, po upływie czasu (aging timer). Z=Znacząco zmniejsza ryzyko fragmentacji.

(config-if)# ip tcp adjust-mss 500-1460(536)*

TCP adjust zapewnia, że ruter dokona edycji segmentu TCP Three-way Handshake jeżeli przekroczy on skonfigurowaną, maksymalną wartość MSS (Maximum Segment Size). W przypadku tuneli DMVPN zaleca się stosowanie wartości 1360, aby pomieścić zawartość nagłówka rozszerzonego o dane protokołu IP, GRE oraz IPsec.

(config-if)# keepalive [0-32767] [1-255]*

Tunel GRE domyślnie stanowi połączenie Point-to-Point wykrywane jako aktywne „Up”, w sytuacji w której urządzenie lokalne posiada trasę do docelowego adresu IP [tunnel destination adres-IP]. Jeżeli takowy adres nie znajduje się w tablicy routingu interfejs pozostaje nieaktywny „Down”. Funkcja Keepalive sprawdza ponadto stan połączenia „line protocol” aby ruter nie musiał polegać jedynie na czasach protokołów routingu dynamicznego.

Alternatywna konfiguracja mapowania serwera nhs (SPOKE)

Alternatywna konfiguracja mapowania serwera NHS zamiast komendy [ip nhrp nhs adres-IP nbma adres-IP [multicast]], wykorzystuje następującą konfigurację:

(config)# interface tunnel 0-2147483647(tunel-ID)

Tworzy nowy interfejs wirtualny (Tunel GRE).

(config-if)# ip nhrp nhs adres-IP

Określa adres rutera NHS (Hub) przypisując go do konfigurowanego tunelu (GRE).

(config-if)# ip nhrp map adres-IP(Adres rutera NHS) adres-IP(Adres NBMA)

Mapuje adres NBMA rutera NHS do adresu IP tunelu (GRE), należącego do tego samego rutera NHS.

(config-if)# ip nhrp map multicast [adres-IP / dynamic]

Określa adres IP tunelu (GRE), wykorzystywany w komunikacji Multicast.

Dodatkowa konfiguracja rutera SPOKE pod kontem protokołów routingu dynamicznego

(config)# interface tunnel 0-2147483647(tunel-ID)

Tworzy nowy interfejs wirtualny (Tunel GRE).

(config-if)# ip ospf network broadcast

Zmienia domyślny rodzaj sieci protokołu OSPF (Point to Point), na sieć rozgłoszeni-ową Broadcast, względem połączenia wirtualnego DMVPN.

Komendy Show, Clear, Debug

Komendy SHOW

# show dmvpn [detail]

Wyświetla podstawowe / szczegółowe informacje dotyczące statusu tuneli wirtualnych (DMVPN) w tym: status tuneli GRE, adres IP (NBMA) adres IP (GRE), tryb pracy Hub/Spoke, ilość podłączonych ruterów NHC (W przypadku rutera NHS) oraz szczegółowe informacje na tematach podłączonych ruterów NHS bądź NHC, w tym tryb pracy wybranego tunelu (Static/Dynamic).

# show dmvpn peer {nbma adres-IP(Adres NBMA) [detail] / tunnel adres-IP(Adres GRE) [detail]}

Wyświetla podstawowe / szczegółowe informacje na temat wskazanego w komendzie sąsiada protokołu DMVPN.

# show ip nhrp [brief / detail]

Wyświetla zawartość lokalnej bazy protokołu NHRP, w tym adres IP tunelu (GRE) wraz z przynależącym do niego adresem NBMA oraz interfejsem źródłowym.

# show ip nhrp [purge / redirect / shortcut]

Wyświetla zapisy bazy NHRP odnośnie wiadomości purge, redirect, shortcut.

# show ip nhrp [dynamic / static]

Wyświetla wszystkie statyczne / dynamiczne tunele protokołu DMVPN.

# show ip nhrp nhs

Wyświetla wszystkie tunele prowadzące do ruterów NHS.

# show ip nhrp stats

Wyświetla

# show ip nhrp summary

Wyświetla

# show ip nhrp traffic

Wyświetla

# show ip route next-hop-override

Wyświetla obecnie wykorzystywane adresy następnego przeskoku, dla tras wykorzystujących skrót protokołu NHRP (ip nhrp shortcut).

Komendy Show Phase III

# show ip nhrp [purge / redirect / shortcut]

Wyświetla zapisy bazy NHRP odnośnie wiadomości purge, redirect, shortcut.

# show ip route nhrp

Wyświetla trasy dodane do tablicy routingu przez protokół NHRP.

# show ip route nhrp next-hop-override

Wyświetla tablicę routingu, wraz z szczegółowymi informacjami dotyczącymi tras nadpisanych przez protokół NHRP. (% next hop override).

Komendy CLEAR

# clear dmvpn session [peer adres-IP]

Czyści wszystkie / określone sesje protokołu DMVPN.

# clear dmvpn statistics

Czyści statystyki protokołu DMVPN.

Komendy DEBUG

# debug

# debug

# debug

Pozostałe tematy związane z protokołem DMVPN

PDFPRINT

Robert T Kucharski

Cisco Network Engineer in GPW.

Dodaj komentarz