- Linux SNMP: Simple Network Management Protocol:
- Installation:
- Configure:
- Start:
- Installation:
- Примеры snmpwalk для Windows и Linux
- Как работает SNMP?
- Что такое snmpwalk?
- Установка snmpwalk в Windows
- Установка snmpwalk в Linux
- Параметры и параметры Snmpwalk в Windows и Linux
- Как минимизировать информацию, которую вы видите с помощью snmpwalk
- Примеры Snmpwalk
- Экономьте время с snmpwalk
- Использование MIB с агентом SNMP
- Мониторинг SNMP, MIB и OID Paessler с помощью PRTG (БЕСПЛАТНАЯ ПРОБНАЯ ВЕРСИЯ)
Linux SNMP: Simple Network Management Protocol:
Installing and using SNMP on Linux
Related YoLinux Tutorials:
SNMP or Simple Network Management Protocol, is a technology standard for alert messages (trap), monitoring (get), and configuring (set) network devices. SNMP comes in three varieties: v1, v2 and v3, of which v3 is the only version to be considered secure.
The variables associated with a network device configuration is defined in the Management Information Base, or MIB. The MIB is a collection of information for managing the network element and is comprised of managed objects identified by the Object Identifier (OID). Each OID is unique and identifies a special characteristic of the managed network device. SNMP is built upon a client (SNMP manager) — server (SNMP agent/network device) architecture pattern with a message schema defined by the MIB and sent over UDP port 161 (SNMP agent) and port 162 (SNMP manager). Each of the data values defined by the MIB are associated with an OID identified by a hierarchy of numbers separated by periods.
Installation:
- CentOS/RedHat: sudo yum install net-snmp-utils net-snmp net-snmp-devel
(RPMs also included with CentOS/RHEL 6 and 7 install DVDs) - Ubuntu: sudo apt-get install snmp snmpd snmp-mibs-downloader
Configure:
- System file /etc/snmp/snmpd.conf
This file default restricts access to localhost only. - User file
Start:
- CentOS/RedHat:
- sudo systemctl enable snmpd.service
- sudo systemctl start snmpd.service
- sudo systemctl status snmpd.service
- Ubuntu:
- sudo systemctl enable snmpd.service
- sudo systemctl start snmpd.service
- sudo systemctl status snmpd.service
- snmpwalk -v 1 localhost -c public .1.3.6.1
- snmpwalk -v 1 localhost -c public system
[Potential Pitfall] : open up the firewall rules:
- Open firewall to everything (if using iptables): sudo iptables -F
or - if using firewald: sudo firewall-cmd --permanent --new-service=snmp
this command will add service to directory /etc/firewalld/services/
Note: Ports 161 and 162 need to be available. See /etc/services:
- RHEL 7: snmpget -v 1 -c public localhost sysDescr.0 Ubuntu: snmpget -v 1 -c public localhost .1.3.6.1.2.1.1.1.0
- RHEL 7: snmptranslate -Tp | less
MIB files have to be installed on your system so that it understands the schema hierarchy of the system you want to query.
net-snmp-config --default-mibs --default-mibdirs
Look in /usr/share/snmp/mibs/ for a full list of system MIB files.
(CentOS/RHEL only)
Command | Description |
---|---|
snmpcmd | options and behavior common to most of the Net-SNMP command-line tools |
snmpwalk | retrieve a subtree of management values using SNMP GETNEXT requests |
snmpget | communicates with a network entity using SNMP GET requests |
snmpset | communicates with a network entity using SNMP SET requests |
snmptrap | sends an SNMP notification to a manager (also snmpinform) |
snmpgetnext | communicates with a network entity using SNMP GETNEXT requests to get the next variable that is lexicographically «next» in the remote entity’s MIB |
snmptable | retrieve an SNMP table and display it in tabular form |
snmpdelta | Monitor delta differences in SNMP Counter values |
snmptest | flexible SNMP application that can monitor and manage information on a network entity |
snmpdf | display disk space usage on a network entity via SNMP |
snmpusm | creates and maintains SNMPv3 users on a network entity |
snmpstatus | retrieves a fixed set of management information from a network entity |
snmpnetstat | display networking status and configuration information from a network entity via SNMP |
snmpbulkget | SNMP application that uses the SNMP GETBULK request to query a network entity efficiently for information |
snmpbulkwalk | retrieve a subtree of management values using SNMP GETBULK requests |
snmp.conf | configuration files for the Net-SNMP applications |
SNMP Variables | Format of specifying variable names to SNMP tools |
The Object Identifiers (OID)s are used to identify a specific characteristic of a managed device.
There are two types of Managed OIDs:
- Scalar: managed object with a single instance (a single key to a key-value pair)
- Tabular: multiple data instances such as the rows of a table (e.g. CPU with multiple cores each with its’ own specific charateristics)
SNMP uses ASN.1 (Abstract Syntax Notation One) to define the data types used to build an SNMP message and uses Basic Encoding Rules (BER) to define the data types.
Two data types each with multiple sub-types:
- Primitive Type: type/length(bytes)/data
- integer
- octet (byte, char)
- string
- null
- boolean
- OID
- Complex Type: type/length/(type/length/data)(type/length/data)
- sequence
- SNMP PDU (Protocol Data Unit) — complex data types specific to SNMP
OID | Description |
---|---|
CPU Statistics | |
.1.3.6.1.4.1.2021.10.1.3.1 | Load 1 minute |
.1.3.6.1.4.1.2021.10.1.3.2 | Load 5 minute |
.1.3.6.1.4.1.2021.10.1.3.3 | Load 15 minute |
.1.3.6.1.4.1.2021.11.9.0 | percentage of user CPU time |
.1.3.6.1.4.1.2021.11.50.0 | raw user cpu time |
.1.3.6.1.4.1.2021.11.10.0 | percentages of system CPU time |
.1.3.6.1.4.1.2021.11.52.0 | raw system cpu time |
.1.3.6.1.4.1.2021.11.11.0 | percentages of idle CPU time |
.1.3.6.1.4.1.2021.11.53.0 | raw idle cpu time |
.1.3.6.1.4.1.2021.11.51.0 | raw nice cpu time |
Memory Statistics | |
.1.3.6.1.4.1.2021.4.3.0 | Total Swap Size |
.1.3.6.1.4.1.2021.4.4.0 | Available Swap Space |
.1.3.6.1.4.1.2021.4.5.0 | Total RAM in machine |
.1.3.6.1.4.1.2021.4.6.0 | Total RAM used |
.1.3.6.1.4.1.2021.4.11.0 | Total RAM Free |
.1.3.6.1.4.1.2021.4.13.0 | Total RAM Shared |
.1.3.6.1.4.1.2021.4.14.0 | Total RAM Buffered |
.1.3.6.1.4.1.2021.4.15.0 | Total Cached Memory |
Disk Statistics | |
.1.3.6.1.4.1.2021.9.1.2.1 | Disk path where disk is mounted |
.1.3.6.1.4.1.2021.9.1.3.1 | Path of the device for the partition |
.1.3.6.1.4.1.2021.9.1.6.1 | Total size of the disk/partition (kBytes) |
.1.3.6.1.4.1.2021.9.1.7.1 | Available space on the disk |
.1.3.6.1.4.1.2021.9.1.8.1 | Used space on the disk |
.1.3.6.1.4.1.2021.9.1.9.1 | Percentage of space used on disk |
.1.3.6.1.4.1.2021.9.1.10.1 | Percentage of inodes used on disk |
System Statistics | |
.1.3.6.1.2.1.1.3.0 | System uptime |
.1.3.6.1.2.1.1.5.0 | Host name |
Installation:
- CentOS/RedHat: sudo yum install net-snmp-gui
(uses EPEL repository) - Ubuntu: sudo apt-get install tkmib
Run: tkmib localhost
Select the «walk» button to traverse the OIDs.
Источник
Примеры snmpwalk для Windows и Linux
В конце 1980-х, SNMP или Простой протокол управления сетью впервые возник как решение для управления узлами в сети. С тех пор данные SNMP использовались для измерения производительности устройств среди бесчисленных поставщиков, чтобы обеспечить работоспособность сетей. Сегодня SNMP является одним из самых популярных сетевых протоколов в мире и snmpwalk стал методом сканирования для сканирования нескольких узлов одновременно.
Как работает SNMP?
Однако, прежде чем мы рассмотрим команду snmpwalk, нам сначала нужно посмотреть, как работает SNMP. На устройствах с поддержкой SNMP Агент SNMP собирает информацию с устройства и хранит его в База управленческой информации (MIB) где хранятся эти данные, чтобы к ним можно было обращаться каждый раз, когда менеджер SNMP опрашивает агента SNMP.
Когда SNMP Manager запрашивает SNMP-агент, данные берутся из MIB и отправляются в SNMP Manager, где их можно просматривать с помощью инструмента сетевого мониторинга. Существует много разных команд, которые вы можете использовать для запроса агента SNMP. Наиболее распространенными способами являются использование ПОЛУЧИТЬ или GET-Next команда. Команда GET используется для Идентификатор объекта (OID) Из MIB. Команда GET-Next немного более продвинута и проходит через дерево MIB от OID до OID, получая информацию. Здесь приходит snmpwalk.
Что такое snmpwalk?
snmpwalk это имя, данное приложение SNMP, которое автоматически выполняет несколько запросов GETNEXT. Запрос SNMP GETNEXT используется для запроса устройства и получения данных SNMP с устройства. Команда snmpwalk используется потому, что она позволяет пользователю объединять запросы GETNEXT вместе, не вводя уникальные команды для каждого OID или узла в поддереве..
snmpwalk выдается корневому узлу поддерева так что информация собирается из каждого подключенного узла. Это предоставляет вам эффективный способ сбора информации с различных устройств, таких как маршрутизаторы и коммутаторы. Собираемая вами информация поступает в форме OID. OID — это объект, который является частью MIB в устройстве с поддержкой SNMP.
Установка snmpwalk в Windows
Для пользователей Windows процесс установки snmpwalk в Windows невероятно прост.
- Сначала вам нужно скачать и извлечь следующий файл из zip-файла:
https://sourceforge.net/projects/net-snmp/files/net-snmp/ - Когда у вас есть файл snmpwalk.exe на вашем компьютере, нажмите Начало > поиск CMD и нажмите Войти. Это покажет окно командной строки.
- Перетащите snmpwalk.exe файл в черное окно.
Если вы не хотите запускать файл из командной строки, вы можете скачать установщик .exe по этой ссылке здесь (обратите внимание, что вы хотите выбрать самую последнюю версию, которую можете): http://sourceforge.net/projects/net-snmp/files/net-snmp/
Установка snmpwalk в Linux
На устройствах Linux snmpwalk доступен в виде пакета для установки. Процесс этого зависит от вашего дистрибутива Linux. Однако вы можете установить Linux, введя следующие команды:
- Redhat / Fedora / CentOs: yum install net-snmp-utils
- Ubuntu: apt-get установить snmp
Параметры и параметры Snmpwalk в Windows и Linux
Snmpwalk имеет ряд различных параметров, которые вы можете использовать. К ним относятся следующие:
- имя хоста — Имя агента SNMP.
- сообщество -Тип читаемого сообщества.
- object_id — Укажите идентификатор объекта для возврата всех объектов SNMP под ним. Если NULL, то корень объектов SNMP принимается как object_id.
- Тайм-аут — количество микросекунд до первого таймаута.
- повторы — Сколько раз повторить попытку подключения в случае тайм-аута.
- -Операционные системы — Показывает последний символический элемент OID.
- -с -Устанавливает строку сообщества.
- -v — указывает версию SNMP, которую вы хотите использовать.
Как минимизировать информацию, которую вы видите с помощью snmpwalk
Первое, что вы заметите при запуске snmpwalk, — это слишком много результатов, чтобы вы могли их прочитать. Вы можете легко получить тысячи разных результатов. Чтобы обойти это, поставщики помогут вам, предоставив вам MIB файл. Файл MIB используется для указания того, какие OID доступны на устройстве.. Многие поставщики предоставляют вам MIB-файл для каждого вашего устройства. Наличие файла MIB позволяет вам выполнить запрос, специфичный для этого файла, а не проходить через все.
Смотрите также: Инструменты SMNP
Примеры Snmpwalk
При использовании snmpwalk на устройстве агент SNMP предоставит вам диапазон значений. Вы будете проходить через OID от вашего начального OID и далее. Если вы введете команду snmpwalk на устройстве, отобразится результат, подобный следующему:
$ snmpwalk -v1 -c public 10.10.1.224
SNMPv2-MIB :: sysDescr.0 = STRING: APC Web / Карта управления SNMP
SNMPv2-MIB :: sysObjectID.0 = OID: SNMPv2-SMI :: enterprises.318.1.3.7
SNMPv2-MIB :: sysUpTime.0 = Timeticks: (47372422) 5 дней, 11: 35: 24.22
SNMPv2-MIB :: sysContact.0 = STRING: Comparitech
SNMPv2-MIB :: sysName.0 = STRING: APC-3425
SNMPv2-MIB :: sysLocation.0 = sTRING: 3425EDISON
SNMPv2-MIB :: sysServices.0 = INTEGER: 72
IF-MIB :: ifNumber.0 = INTEGER: 1
IF-MIB :: ifIndex.1 = INTEGER: 1
IF-MIB :: ifDescr.1 = STRING: veya
.
SNMPv2-MIB :: snmpOutGetResponses.0 = Counter32: 338
SNMPv2-MIB: snmpOutTraps.0 = Counter32: 0
SNMPv2-MIB :: snmpEnableAuthenTraps.0 = INTEGER: 0
$
Как видите, много информации генерируется одной командой. Большинство строк состоит из информации, полученной из MIB.
В приведенном ниже примере вы можете увидеть пример snmpwalk без MIB. Второе число в первой строке или .1.3.6.1.4.1.318 — это OID, с которого мы начали.
$ snmpwalk -v1 -c public 10.10.1.224 .1.3.6.1.4.1.318
SNMPv2-SMI :: enterprises.318.1.1.1.1.1.1.0 = STRING: «Silcon DP340E»
SNMPv2-SMI :: enterprises.318.1.1.1.1.1.2.0 = STRING: «UPS_IDEN»
SNMPv2-SMI :: enterprises.318.1.1.1.1.2.1.0 = STRING: «314.10.D
.
Однако, если у вас есть определенный MIB, вы можете получить более подробную информацию, возвращенную вам из объектов, которые вы хотите просмотреть. В приведенном ниже примере команда -m обозначает MIB, который будет запрашиваться.
$ snmpwalk -v1 -c public -m «./APC-POWERNET.txt» 10.10.1.224 apc
PowerNet-MIB :: upsBasicIdentModel.0 = STRING: «Silcon DP340E»
PowerNet-MIB :: upsBasicIdentName.0 = STRING: «UPS_IDEN»
PowerNet-MIB :: upsAdvIdentFirmwareRevision.0 = STRING: «314.10.D»
.
Ниже приведен пример команды snmpwalk для Linux. Как вы можете видеть, эта функция работает примерно так же, проходя через OID для извлечения соответствующей информации из подключенных устройств:
#% snmpwalk-v 1 локальная публичная система # system.sysDescr.o = «SunOS name sun4c»
# system.sysObjectID.o = OID: enterprises.ucdavis.ucdSnmpAgent.sunos4
# system.sys.UpTime.o = Timeticks (595637548) 68 дней, 22:32:55
# system.sysContact.o = «[email protected]>»
# system.sysName.o = «Ridyadh_o8_WS»
# system.sysLocation.o = «Ридьяд, КСА»
# system.sysServices.o = 72
Экономьте время с snmpwalk
snmpwalk кажется сложной концепцией, но на самом деле это не так. Команда snmpwalk просто сокращенный способ использовать несколько запросов GETNEXT без необходимости вводить множество различных команд. С помощью одной команды snmpwalk вы можете запустить множество различных GETNEXT и просмотреть состояние своей инфраструктуры..
Если вы используете команду snmpwalk, важно помнить, чтобы максимально сократить объем получаемой информации. Указание MIB позволит вам видеть конкретную информацию, а не данные, собранные из всей базы данных идентификаторов объектов!
Таким образом, получая данные SNMP с устройств по всей вашей сети, вы можете быть уверены, что не пропустите ничего важного в вашей сети. В конце концов, есть команда snmpwalk, которая поможет вам максимально эффективно извлекать данные SNMP с устройств в вашей сети..
Использование MIB с агентом SNMP
Агенты SNMP собирают информацию о сетевых устройствах и сохраняют ее в базе управляющей информации (MIB) и становятся доступными для мощных инструментов SNMP.
Мониторинг SNMP, MIB и OID Paessler с помощью PRTG (БЕСПЛАТНАЯ ПРОБНАЯ ВЕРСИЯ)
С Paessler’s PRTG Сетевой монитор, Вы можете развернуть SNMP, MIBS и OID с одной интуитивно понятной панели. PRTG использует SNMP для мониторинга вашей сети и для обработки ваших MIB и OID. После настройки PRTG может начать сбор всех соответствующих данных на каждом из устройств в вашей сети и на программном обеспечении, с которым они работают. Информация хранится в древовидной и ветвистой структуре, при этом каждый поставщик составляет ветвь дерева, помогая вам идентифицировать и устранять неполадки на каждом из устройств в вашей сети..
Сетевой монитор PRTG доступен на 30-дневной бесплатной пробной версии..
Мониторинг SNMP, MIB и OID Paessler с помощью PRTG Загрузить 30-дневную бесплатную пробную версию
Смотрите также: Лучшие инструменты мониторинга SNMP
Источник