Znajdź hosta w sieci

11

Jaka jest najlepsza metoda zlokalizowania określonej stacji roboczej w sieci VLAN?

Czasami muszę to zrobić, jeśli adres IP stacji roboczej pojawia się na liście ACL Deny

  1. wykorzystanie torrenta
  2. Wysokie wykorzystanie przepustowości (najlepsi rozmówcy)
  3. Snort alert

    Sposób, w jaki to teraz robię

    • Zaloguj się do przełącznika głównego w tej samej sieci VLAN
    • Pinguj adres IP,
    • Pobierz MAC z tabeli ARP
    • Wyszukiwanie adresu Mac, aby zobaczyć, z którego przełącznika się go nauczyliśmy
    • zaloguj się do tego przełącznika, przepłucz i powtarzaj, aż zlokalizuję stację roboczą

czasami może to wymagać zalogowania się do ~ 7 przełączników, istnieją specyficzne wyzwania dla tej sieci, na które obecnie nie mogę nic poradzić. Ogromne sieci VLAN (/ 16) z kilkoma setkami użytkowników na każdej sieci VLAN

w sklepie Cisco, przy minimalnym budżecie przy użyciu przełączników Cisco, musi istnieć bardziej skuteczny sposób na wyśledzenie hostów?

EDYCJA: Aby dodać dalsze szczegóły

W szczególności szukam portu przełączającego, do którego użytkownik jest podłączony? również historia byłaby świetna .. ponieważ moje podejście działa tylko wtedy, gdy użytkownik jest nadal podłączony, i nie ma żadnej wartości, gdy przeglądam dzienniki rano, ale urządzenie nie jest już podłączone.

Nie ma centralnego DNS ani Active Directory, jest jak sieć dla gości, w której zapewniony jest tylko dostęp do Internetu. Staram się zapewnić trochę zarządzania i trochę bezpieczeństwa.

Próbowałem „show ip dhcp binding | inc”, co daje mi dziwny MAC (z 2 dodatkowymi znakami), który nie jest powiązanym MAC urządzenia, jeszcze tego nie sprawdziłem, ale ARP jest dokładny i jestem bardziej zaniepokojony po znalezieniu portu przełącznika, do którego jest podłączona przestępca.

mam nadzieję, że to daje pewne wyjaśnienie

hyussuf
źródło
2
Jeśli chodzi o „show ip dhcp binding | inc”: dodatkowe znaki z przodu to rodzaj nośnika. Jeśli usuniesz pierwsze dwa znaki, pozostanie klient MAC. Obie cyfry są przedstawione w tabeli 2: freesoft.org/CIE/RFC/1700/24.htm
some_guy_long_gone
@legioxi, zakłada to, że urządzenie samo korzysta z MAC. Jeśli użył łańcucha, może to być to, co pokazuje serwer.
Ricky Beam

Odpowiedzi:

13

Spójrz na traceroute Layer2 (dla cisco) .. Cpp powinien być uruchomiony btw ...

Router# traceroute mac 0000.0201.0601 0000.0201.0201
Source 0000.0201.0601 found on con6[WS-C2950G-24-EI] (2.2.6.6)
con6 (2.2.6.6) :Fa0/1 => Fa0/3
con5                 (2.2.5.5        )  :    Fa0/3 => Gi0/1
con1                 (2.2.1.1        )  :    Gi0/1 => Gi0/2
con2                 (2.2.2.2        )  :    Gi0/2 => Fa0/1
Destination 0000.0201.0201 found on con2[WS-C3550-24] (2.2.2.2)
Layer 2 trace completed
Router# 
Router# traceroute mac 0001.0000.0204 0001.0000.0304 detail 
Source 0001.0000.0204 found on VAYU[WS-C6509] (2.1.1.10)
1 VAYU / WS-C6509 / 2.1.1.10 :
                Gi6/1 [full, 1000M] => Po100 [auto, auto]
2 PANI / WS-C6509 / 2.1.1.12 :
                Po100 [auto, auto] => Po110 [auto, auto]
3 BUMI / WS-C6509 / 2.1.1.13 :
                Po110 [auto, auto] => Po120 [auto, auto]
4 AGNI / WS-C6509 / 2.1.1.11 :
                Po120 [auto, auto] => Gi8/12 [full, 1000M] Destination 0001.0000.0304 
found on AGNI[WS-C6509] (2.1.1.11) Layer 2 trace completed.
Router# 
użytkownik209
źródło
To niesamowite, bawię się teraz z tym. Dokładnie to, czego szukałem
hyussuf
9

Używamy wtyczki mactrack na Cacti do takich rzeczy. Działa całkiem dobrze, dostępne są również dane historyczne.

Tak długo, jak tablice adresów ARP i MAC są dostępne przez SNMP, działa. Jedynym małym problemem, jaki mieliśmy, jest to, że wystąpienie warstwy 3 dla witryny to ASA. Pracowaliśmy nad tym , pobierając tabelę ARP za pomocą skryptów i generując plik arpwatch , ponieważ mactrack to obsługuje.

Przykładowy zrzut ekranu z naszej konfiguracji: wprowadź opis zdjęcia tutaj

Link Imgurl: http://i.imgur.com/h9JQVkC.png

Stefan Radovanovici
źródło
Ładny! Lepiej rzucić większy obraz na imgur lub coś takiego. Zupełnie tego nie widzę. :-)
John Jensen
@JohnJensen Tak, to tylko zmiana stosu zmniejszająca obraz, jest przesyłana w pełnym rozmiarze. Spróbuj otworzyć obraz na innej karcie, na przykład „Kliknij prawym przyciskiem myszy - otwórz obraz na nowej karcie w Chrome”. I tak doda link do odpowiedzi.
Stefan Radovanovici
7

Istnieje kilka sposobów, aby to zrobić tanio (przeprowadzenie badań i / lub wdrożenie pozostawię tobie).

  1. Mieć skrypt, który loguje się do każdego z urządzeń brzegowych i pobiera z nich tablice adresów MAC. Będziesz chciał do tego wykluczyć interfejsy magistrali, ale utworzenie skrótu (lub dyktowanie dla ciebie ludzi python) byłoby banalne, przy czym kluczami są przełączniki krawędzi, a wartości to kolejny skrót, który jest w zasadzie „mac.addr -> interfejs” „. Eliminuje to konieczność ścigania adresów MAC na przełącznikach brzegowych, co wydaje się być częścią pracy nóg. Mogę polecić użycie Perla Net::Appliance::Sessionlub Pythona, exscriptaby tak się stało (zakłada to, że masz dostęp do skrzynki * NIX).

  2. Użyj SNMP, aby wysłać zapytanie do tych danych, co wyeliminuje konieczność logowania się skryptu do przełączników i uruchamiania poleceń. Jesteś sam, aby wyszukać bazy MIB dla tablic adresów MAC, ale oto wyszukiwarka Google na początek .

  3. Jeśli korzystasz tylko z systemu Windows, możesz użyć SecureCRT lub TeraTerm, aby skonfigurować makra, aby „zautomatyzować” to dla ciebie, ale moje doświadczenie z jednym z nich jest bardzo ograniczone, więc YMMV.

Mam nadzieję, że daje kilka pomysłów.

John Jensen
źródło
6

Lubię mieć skrypt, który pobiera show arpi show cam dynwysyła co 15 minut, znacznik czasu z nim, term exec prompt timestampwięc mamy przybliżoną korelację czasów. Następnie dołączam wszystkie dane wyjściowe przełącznika do pliku ... jeden plik na przełącznik dziennie.

Wszystkie te dzienniki są przechowywane w tym samym katalogu dla łatwego grepowania.

Znalezienie hosta staje się dość prostym ćwiczeniem grep, jeśli znasz topologię ... Utknąłeś w oknach bez grep? Użyj cygwin ...

Mike Pennington
źródło
2

Dlaczego nie uprościć rzeczy i zrobić nslookup na adres IP, pobrać nazwę hosta z DNS i użyć nazwy hosta, aby znaleźć komputer za pomocą listy zasobów lub bazy danych zarządzania? Lub jeśli nie masz odwróconej konfiguracji DNS, możesz zalogować się do serwera DHCP, aby pobrać nazwę hosta.

Wiem, że nie jest to metoda Cisco / CLI, ale powinna działać, jeśli Twoi użytkownicy są przypisani do komputerów 1-1. Jeśli masz od 1 do 1, możesz użyć narzędzi systemu Windows / Linux, aby znaleźć bieżącego użytkownika komputera.

some_guy_long_gone
źródło
Nie sądzę, że hyussuf próbuje dowiedzieć się, kto jest na komputerze - ponieważ jest to Inżynieria sieci, i na podstawie podanego przez niego przykładu, przypuszczam, że próbuje ustalić, do którego fizycznego portu jest podłączone urządzenie, a to urządzenie może nie zawsze być stacją roboczą.
Mark
To prawda, nie tylko to, ale jest to rodzaj sieci dla gości, jedyną świadczoną przez nas usługą jest internet, połączenie BYOD i małych firm wymagających dostępu do Internetu do wykonania swojej pracy. technicznie dostawca usług internetowych w zdalnej lokalizacji z wszelkiego rodzaju użytkownikami. Routery cisco to moje serwery dhcp, kiedy patrzę na informacje o powiązaniu, MAC jest całkowicie niepoprawny, ma nawet dodatkowe 2 znaki, które jeszcze tego nie sprawdzały.
hyussuf
Również moim głównym celem jest zlokalizowanie naruszającego port przełącznika i rozłączenie lub „zamknięcie” ... Przepraszam, nie mogę wymyślić, jak nowej linii
hyussuf
Możesz zaktualizować pytanie o więcej szczegółów z dwóch komentarzy, które opublikowałeś do mojej odpowiedzi. Zdecydowanie kilka dobrych informacji, które pomogą w udzieleniu odpowiedzi.
some_guy_long_gone
2

Robisz to w taki sam sposób, jak robiłbym to ręcznie.

Istnieje oprogramowanie, które wykona za Ciebie ręczne kroki. Narzędzie zawarte w SolarWinds Engineering Toolkit będzie, choć niestety nie jest tanie. Jestem pewien, że istnieją inne alternatywy.

Jeśli szukasz rozwiązania pośredniego lub prac związanych ze skryptami, zapoznaj się z poleceniami SNMP wydanymi w tej odpowiedzi, aby dowiedzieć się, w jaki sposób możesz wykonać skrypt z systemu za pomocą klienta CLI SNMP

Zredagowano, aby dodać: Zakładam, że twoje „płukanie i powtarzanie” nie obejmuje ponownie pingowania i innych elementów po drodze. Po ustaleniu adresu mac powinieneś być w stanie po prostu zrobić sh mac addr | w #### (znikają nawiasy kątowe)

znak
źródło
poprawnie, ping tylko raz, „show mac add | inc ####”, zmieszany z kilkoma sąsiadami show cdp wiele razy
hyussuf
Ujawnię, że mam dostęp zarówno do zestawu narzędzi inżynieryjnych, jak i do śledzenia urządzeń użytkownika ( solarwinds.com/user-device-tracker.aspx ) i 99% czasu kończę na logowaniu się do przełączników i po prostu robieniu tego ręcznie. Wprawdzie to rzadkie, że muszę zejść na 7 głębokości, ale to po prostu działa.
Mark
Mój SNMP-fu nie jest silny, ale ten link jest bardzo interesujący i dał mi kilka pomysłów.
hyussuf
1

Pytasz dwóch rzeczy.
1. Zlokalizuj MAC w swojej sieci - Radzę utworzyć skrypt (php) i użyć SNMP do przeszukania wszystkich tablic adresów MAC, aby dać przełącznik / port, w którym znajduje się adres IP / MAC.

2.Użycie monitora (użycie torrenta, użycie wysokiej przepustowości (najlepsi mówcy), alert Snort) - Użyj rozwiązania jako ntop do monitorowania przepływów w sieci. Użyłem tego dawno temu i było świetnie.

cgasp
źródło
1

Tylko sugestia ... jeśli masz jakąś aktywną kontrolę syslogu, która może wyzwalać określone zdarzenia, możesz napisać skrypt do wyszukiwania adresu IP za pomocą SNMP na każdym przełączniku, aby wiedzieć, gdzie był mniej więcej w czasie, gdy zdarzenie się wydarzyło.

(przepraszam, nie mogę znaleźć dokładnych identyfikatorów OID)

Edycja: linkUżywanie SNMP do znalezienia numeru portu z adresu MAC na przełączniku Catalyst ” Zapomniałem o sztuczce comm @ vlan . Istnieje wiele tabel do pingowania, aby znaleźć wszystkie informacje potrzebne człowiekowi. :-(

Ricky Beam
źródło
1

switchmap to kolejne narzędzie, którego można użyć do śledzenia, który adres mac znajduje się za którym portem przełączania (między innymi).

Teun Vink
źródło
1

Użyłem netdisco do zebrania tych informacji. Umożliwi to zapytanie bazy danych o nazwę hosta, adres IP, adres MAC itp. Oraz zwrócenie przełącznika i portu przełączania. Zrobi również inne przydatne rzeczy.

Wrzosowisko
źródło
-3

Ten link może być pomocny

http://arunrkaushik.blogspot.com/2007/10/traceroute-mac-ip.html

edrtz
źródło
Ogólnie rzecz biorąc, w Net Eng SE powszechnie uważa się za dobry styl, obejmujący podstawowe szczegóły Twojej odpowiedzi i, w razie potrzeby, link do materiałów referencyjnych. (Ponieważ „zgnilizna linków” oznacza, że ​​ostatecznie URL nie będzie przydatny.)
Craig Constantine