Nie działające tagowanie tras „internal” EIGRP (tagi większe niż 255)

Jedną z metod zapobiegania zapętleniom w routingu jest tagowanie tras i ich filtrowanie. Co jednak zrobić, jeżeli natrafiliśmy na problem nie działającego ustawiania tagów w przypadku tras w eigrp typu „internal”, tzn. mimo utworzenia route-mapy wraz z działaniem set tag x (gdzie x > 255) obserwujemy, że tagowanie nie działa dla tras typu „internal”?

Problem wynika ze sposobu kodowania numeru tagu w nagłówku protokołu EIGRP w zależności od typu trasy „internal” i „extrenal”.

Przyjrzyjmy się jak wygląda część TLV (Type/Length/Values) EIGRP dla tras typu „internal”

EIGRP-IP Internal Routes TLV

oraz dla tras typu „external”:

EIGRP-IP External Routes TLV

Zwróćcie uwagę, że w przypadku tras „external” pole dla tagów ma zadeklarowaną długość 32 bitów, co oznacza, że dla tych tras możemy korzystać z tagowania w zakresie <0;4294967295>. Spójrzcie teraz na TLV dla tras typu „internal” – jaka jest długość pola dla informacji o tagach? No właśnie nie ma takiego pola. Wartość ta jest zawarta w polu typu „reserved”, które ma długość 16 bitów, czyli <0;65535>. Niemniej jednak okazuje się, że Cisco podzieliło ten obszar na dwie części po 8 bitów:

– pole „internal tag” – 8 bitów
– pole „flags” – 8 bitów

Zatem ostatecznie zakres wartości tagów dla tras typu „internal” to liczba 8 bitowa, czyli <0;255> i niestety to tłumaczy, dlaczego możemy wykorzystać tylko takie wartości do tagowania tras EIGRP, a wszystkie tagi których wartości są większe niż 255 „giną” i nie są przenoszone w ramach wymiany informacji routingowych eigrp.

Zatem podsumowując, wartość tagów w eigrp dla tras „internal” powinna mieć wartość nie większą niż 255 aby mogła być poprawnie zakodowania w nagłówku EIGRP.

Dodaj komentarz

Twój adres email nie zostanie opublikowany.