Na dużym stosie przełączników Cisco Catalyst prawie wszystkie porty przełączników są załatane. Muszę zidentyfikować nieużywane porty do podłączania kolejnych urządzeń.
Podążanie za portami przełączania, okablowanie, pola krosowe i gniazda do ewentualnych urządzeń końcowych jest pracochłonne i nawet wtedy mogą być tymczasowo używane gniazda. Patrzenie na aktywność diod LED portu nie jest niezawodne, ponieważ urządzenie użytkownika można wyłączyć.
Jaki jest najłatwiejszy sposób na wykrycie wszystkich nieużywanych portów przełączania za pomocą komend IOS?
Odpowiedzi:
Często używam
lub podobnie z GigabitEthernet, niezależnie od rodzaju interfejsów, które chcę sprawdzić.
sh int
(który jestshow interfaces
) daje ogromną listę statusu ste wszystkich interfejsów|
może być używany do filtrowania, ale także do wyrażeń wyszukiwania| i
(forinclude
) filtruje dane wyjściowe pasujące do następujących wyrażeń wyszukiwania(...|...)
aby dopasować dwa warunki: nazwę interfejsu i status, który lubię widzieć, możemy tutaj użyć wyrażeń regularnych, takich jak to wyrażenie „lub”Dane wyjściowe mogą wyglądać następująco:
Teraz widzę moich kandydatów, z czasem faktycznie wprowadzanych 0 pakietów, nawet jeśli moje wyrażenie pasuje do liczb kończących się na 0. Mógłbym uczynić go bardziej doskonałym, ale łatwość zapamiętania jest również zaletą. Nazwy interfejsów tuż przed każdym wierszem wejściowym 0 pakietów są moimi kandydatami.
sh int <name>
clear counters [type number]
Dobrą praktyką może być pozostawienie nieużywanego wyłączania portów przełączania. Więc łatwo je zidentyfikować za pomocą
sh ip int bri
lub tym podobnych. I nie napotkasz problemów, jeśli użyjesz przełącznika, który był wcześniej wyłączony.źródło
sh int | i FastEthernet|0 packets input
Ostatecznie ... DOKUMENTACJA. Musisz wiedzieć, gdzie każdy kabel krosowy ma 100% pewności, że nie odłączysz czegoś, co ktoś może oczekiwać w pewnym momencie. To, że port jest obecnie „wyłączony”, nie oznacza, że ktoś go nie używał. Również fakt, że liczniki są obecnie zerowe, nie oznacza, że nigdy nie był używany lub nie będzie ponownie używany w (bliskiej) przyszłości - liczniki można wyczyścić, a liczniki resetują się do zera podczas rozruchu.
Pracowałem w ISP i dużych przedsiębiorstwach, a dokumentacja jest kluczem do poznania, co jest. Bez tego losowe zgadywanie doprowadzi do wielu złych dni ... klienci będą raczej wkurzeni, gdy uruchomisz linię DSL komuś innemu, powielisz przypisanie adresu, zamkniesz niewłaściwy interfejs itp. Szafy okablowania w przedsiębiorstwach mogą być prawdziwym bałaganem; bez dokumentacji śledzenie dziesiątek kabli wśród tysięcy może być uciążliwe (i coś tak prostego, jak liczą się opisy portów).
źródło
lubię też
które wyjścia
Parametr wyjściowy informuje, kiedy port widział ostatnio ruch, co jest przydatne do identyfikacji portów, które są używane tylko sporadycznie.
EDYCJA: Warto również zauważyć (z powodów wykraczających poza zakres tego pytania), że „ostatnie wejście” jest prawie zawsze „nigdy”
źródło
Podoba mi się odpowiedź @ Stefana, ale za pomocą tego wiersza poleceń „sh int | i (wejście pakietów Ethernet 0)), który teraz pobiera wszystkie typy interfejsów Ethernet i odfiltrowuje niezerowe liczby, które kończą się na zero. Wspomniał, że możliwe jest pewne dostrojenie, więc jest to tylko jeden przykład.
Inną opcją jest ...
Tak, biała spacja jest potrzebna. Najłatwiejszym sposobem na wyrównanie spacji jest wykonanie „sh int counter” i skopiowanie linii ze wszystkimi zerami. Jednym z nich jest to, że w połowie listy zmienia się od Input, którą chcemy, do Output, o którą nie dbamy o znalezienie nieużywanych portów. Ma tę zaletę, że pokazuje TYLKO porty bez danych wejściowych, dzięki czemu nie trzeba usuwać używanych portów, jak w przypadku metody Stefana.
źródło
show int counters | i _0_.*_0_.*_0_.*_0_
zamiast spacji ... również twoja odpowiedź musi byćsh int counters | i (Port|_0 0 0 0)
(zwróć uwagę na wiodący znak podkreślenia, który IOS interpretuje jako spację)show interfaces counters | inc ( +0 +0 +0)
.Zeskrobałbym dane wyjściowe (lub jeszcze bardziej chwyciłbym je za pomocą SNMP) i użyłem standardowych narzędzi UNIX do ich parsowania. Oto prosty przykład:
Tutaj zapisałem częściowe dane wyjściowe z „show int counters” (tylko do celów demonstracyjnych) do pliku o nazwie „counter”.
Teraz wystarczy użyć awk, aby wygenerować raport o wszystkich portach, które mają wszystkie cztery pola licznika na zero:
Główną ideą tutaj jest pobranie wszelkich danych, których używasz z urządzenia, abyś mógł wykonywać bardziej inteligentne / złożone / prostsze / dowolne analizowanie i raportowanie.
UWAGA W przypadku wielu urządzeń użycie narzędzia Linux, takiego jak „screen”, do rejestrowania danych wyjściowych z połączenia tty może sprawić, że jest naprawdę wydajne w szybkim znajdowaniu nieużywanych portów na wielu urządzeniach Cisco. (w jednym pliku dziennika) uruchom następującą komendę ... gdzie „HOSTNAME” jest uniwersalną częścią twojego schematu nazw hostów urządzenia Cisco | awk '{if (1 $ == HOSTNAME ) || (2 USD == 0 i& 3 USD == 0 i& 4 USD == 0 i& 5 USD == 0) wydrukuj 1 USD}
źródło
grep
ised
.show int counters | i _0_.*_0_.*_0_.*_0_
Jestem nowy, więc nie mogę głosować na odpowiedzi @ netdad i @mike pennington - ale je lubię. Aby pójść trochę dalej, @Mike Pennington, zakładając, że ostatnio wyczyściłeś liczniki, możesz uruchomić to polecenie również:
Wyrażenie regularne mówi tutaj „0”, po którym następuje 1 lub więcej spacji, po których następuje „0”, po których następuje 1 lub więcej spacji, po których następuje „0”, po których następuje 1 lub więcej spacji, a następnie końcowe „0”.
Mam nadzieję że to pomoże.
źródło
Zawsze używam
Podsumowuje to ładnie i elegancko.
źródło
| ex connected
.Jeśli musisz to robić regularnie, nic nie przebije Perla i Net :: Telnet :: Cisco. Możesz zalogować się do X routerów, pobrać wszystkie informacje z żądanych interfejsów, przeanalizować dane wyjściowe i wydrukować je do pliku lub wysłać pocztą e-mail za pomocą Net :: SMTP lub wydrukować na standardowe wyjście. Mogę podać przykłady, jeśli chcesz, ale jest to dość proste.
Ewentualnie, jeśli nie jesteś gotowy na zrobienie tego w systemie IOS, poniższy skrypt TCL da pożądane wyniki w ładnym, czystym formacie:
Oferuję to, ponieważ TCL i jak to zrobić jest trochę mniej dostępne [IMHO] niż Perl
źródło
Zwykle używam
sh int des | ex up
, który wyświetli listę wszystkich portów, które są w stanie wyłączeniaźródło
show interfaces status
bardziej pomocne.Oto jeden, którego ostatnio używałem do usuwania kabli z portów, które nie widziały żadnej aktywności przez co najmniej sześć tygodni:
źródło
Wiodąca spacja z 0 wyklucza większe liczby, które kończą się na zero.
Lepiej jest wyłączyć porty (wyłączone), dopóki się nie przyzwyczają. Zmiana vlan dostępu do portu przełączania jest ryzykowna , na przykład na porcie, który już działa, chyba że masz pewność, że nie jest używany.
Dane wyjściowe mogą wyglądać jak poniżej, mówiąc nam, że port przełączania na g8 / 18 jest wyłączony z 0 pakietami od ostatniego kasowania licznika, gdy g8 / 19 jest w użyciu (z powodu braku „wejścia 0 pakietów”).
źródło
Co powiesz na korzystanie z tabeli MAC? Wymienia adresy MAC z interfejsami i starzeje je. Musisz wyjąć listę z IOS, aby zrobić przefiltrowaną listę unikalnych adresów.
źródło
źródło
DOBRZE. Coś, co działa na wszystkich przełącznikach, zaczynając od 2900 (nie trzeba testować starszych) i pokazuje tylko dolne porty.
Chciałbym użyć,
sh int status
ale potem wynik jestconnected
inotconnected
, więc wyklucz lub dołącz, nie rób nic dobrego, ponieważ słowo związane jest częścią obu, więc masz historię.W moim przypadku na 3524 otrzymuję to poniżej z obiema komendami, aby wyjaśnić, że działa:
źródło
To trochę oszustwo, ale jeśli wszystko jest podłączone tylko do jednego urządzenia końcowego, możesz włączyć zabezpieczenia portów za pomocą lepkich adresów mac. Sprawdź ponownie za chwilę (jak długo oczekiwany jest rozsądny czas, aby założyć, że ktoś użyłby komputera lub nie istnieje), a uruchomiona konfiguracja pokaże, czy cokolwiek skorzystało z tego portu. Jestem prawie pewien, że możesz użyć lepkich adresów mac z maksymalnie więcej niż 1 na interfejs na wypadek, gdybyś używał telefonów VoIP i komputerów na tym samym porcie, ale nie jestem pewien.
źródło
Och, dni, kiedy pisanie było łatwe:
(dotyczy 4500 działających wersji 12.2 (20))
źródło
Myślę, że w środowisku Cisco najlepszym sposobem jest wersja pokazowa, aby poznać czas działania przełącznika i później
pokaż rachunkowość interfejsów
źródło
tylko używanie komend IOS jest nieco trudne - przegapisz tę dziwną. Sugeruję, aby inni używali snmp (Solarwinds ma wiele bezpłatnych narzędzi, na które warto spojrzeć) i monitorowali urządzenie przez kilka dni (w razie potrzeby tygodnie)
Dla pracochłonnej części, o której wspominałeś o śledzeniu kabli itp. To, co zrobiłem, aby zminimalizować pracę z mapowaniem portów przełączników na porty łatek itp., To wyczyszczenie liczników, a następnie kilka dni później za pomocą pułapek snmp, a następnie odłączenie patchpanela na 1-2 sekund i kiedy dostałem wpis na monitorze / odbiorniku snmp trap (port x na module y uległ awarii), po prostu powtórzyłem to samo (nie żeby ktoś przypadkowo wyłączył urządzenie na jednym z portów). Panel 24-portowy może potrwać 5 minut - więc jest to dość szybkie. Dla zmarłych - po prostu wróć innym razem. Jeśli nadal są martwe i nie ma zmian w licznikach, można bezpiecznie założyć, że port faktycznie nie jest używany.
źródło
Zwykle używam „pokaż status interfejsu” i jego odmian, ale używam również czystego oprogramowania typu open source o nazwie „Switchmap”, aby zapewnić prosty graficzny widok interfejsów. Jedną wielką zaletą tego jest to, że jeśli port jest w górę / w dół, powie ci, jak dawno temu był na nim ruch, i możesz stamtąd zadzwonić, czy powinieneś go ponownie użyć.
http://sourceforge.net/projects/switchmap/
Oszczędza to trochę pisania :-)
źródło
Powinno to pokazać, czy kabel podłączony do przełącznika jest faktycznie podłączony do czegokolwiek. Bez względu na jego status. Wymień
test
sięshow
aby uzyskać jego status.źródło
show int status
. Jeśli odłączyłem laptopa, aby wrócić do domu na jeden dzień, rano mój port może zostać ponownie przypisany.Mieliśmy ten problem w naszej firmie. Zastosowaliśmy korelację z wyników poleceń „show arp” i „show mac address-table”, aby skorelować adresy MAC wszystkich komputerów / urządzeń w naszych założeniach.
Najpierw musisz sporządzić listę adresów IP i MAC urządzeń w sieci i skorelować je z odpowiednimi interfejsami za pomocą powyższych poleceń ...
źródło
Pokaż skróty interfejsu IP jest moim osobistym ulubionym.
Ułatwia to przeglądanie. Jeśli nie, dostępnych jest wiele narzędzi, które pomagają śledzić wykorzystanie portów przez wiele przełączników.
źródło
Na urządzeniach Cisco możesz używać;
W przypadku urządzeń HP polecenie brzmi;
źródło
Myślę, że szukasz sumy opartej na statusie? przynajmniej brzmi jak twoje pytanie.
daje ci niezłą liczbę podłączonych lub nie.
źródło