From 2c3b92e7e9d1a6e80965c013c4da012659ca91cb Mon Sep 17 00:00:00 2001 From: gru Date: Tue, 6 May 2025 08:41:59 +0200 Subject: [PATCH] Add README.md --- README.md | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..360fe58 --- /dev/null +++ b/README.md @@ -0,0 +1,55 @@ +SNMP Multi-Subnet Scanner +========================= + +Opis +----- +Ten skrypt w Pythonie umożliwia skanowanie wielu podsieci IPv4 i pobieranie informacji SNMP (v2c) z urządzeń sieciowych, takich jak Mikrotik, Cisco, itp. Obsługuje multithreading (6 wątków) dla przyspieszenia pracy i pomija adresy IP, które nie odpowiedziały na żadne zapytania SNMP. + +Funkcje +-------- +- Obsługa wielu podsieci (CIDR) +- Wsparcie dla standardowych OID-ów: sysName, sysDescr, sysLocation, sysContact +- Wydajne skanowanie z użyciem ThreadPoolExecutor (6 wątków) +- Ignorowanie hostów, które nie odpowiedziały (timeout lub brak danych) +- Czytelna tabela wyników w terminalu + +Wymagania +---------- +- Python 3.6+ +- Zainstalowany snmpget (część pakietu net-snmp) + +Na Debian/Ubuntu: + sudo apt install snmp + +Użycie +------- + python snmp_scan.py [subnet2 subnet3 ...] [-c community] + +Przykłady: + + Skan jednej podsieci: + python snmp_scan.py 10.87.2.0/24 + + Skan wielu podsieci z niestandardowym community: + python snmp_scan.py 10.87.2.0/24 10.88.1.0/24 -c moje_community + +Przykładowy wynik +------------------ +IP sysName sysDescr sysLocation sysContact +-------------------------------------------------------------------------------------------------------------- +10.87.2.1 cisco-router Cisco IOS Software... Serwerownia admin@example.com +10.87.2.2 rb750 RouterOS RB750Gr3 ... Rack1 noc@firma.pl + +Dostosowanie +------------- +Aby dodać więcej OID-ów do zapytań, edytuj słownik `oids` w kodzie: + +oids = { + "sysName": "1.3.6.1.2.1.1.5.0", + "sysDescr": "1.3.6.1.2.1.1.1.0", + ... +} + +Licencja +--------- +Projekt open-source na potrzeby wewnętrzne lub edukacyjne. Dalsza dystrybucja zgodna z zasadami Twojej organizacji.