WeOS
5.29.0

# Simple Network Management Protocol

The Simple Network Management Protocol is an application layer protocol for collecting and handling information about managed devices in IP networks. SNMP is used for network management and network monitoring. The data in SNMP is exposed in variables organised in management information bases, called MIB:s.

## Overview

In WeOS 5, SNMP act as an agent if enabled and supports version SNMPv2c and SNMPv3 of the protocol. WeOS 5 also supports up to 8 users and 8 trap/inform hosts.

To use SNMPv3 traps/informs, the engine id must be enabled first and at least one SNMPv3 user created before adding a traphost.

### Write Support

Currently WeOS does not have full write support, only a few very select OIDs are writable. So in general it is best to consider most of the MIBs as read-only.

### Supported MIBs

A number of standard MIBs are supported along with a few private MIBs.

Detailed Information

For more detailed information about the MIB support, refer to the included MIB and conformance files in any downloaded WeOS Release’s zip-archive.

The conformance files lists the deviations and variations from the MIB files if any.

#### Standard MIBs

MIB | Base OID | Description | Note
--- | --- | --- | ---
BRIDGE-MIB | `.1.3.6.1.2.1.17` | MIB for devices supporting IEEE 802.1D. Note: In dot1dTpFdb, if more than one entry is found for a mac address, the one with the lowest ifindex will be the one present in the table. | Supports dot1dBase, dot1dStp and dot1dTp.
ENTITY-MIB | `.1.3.6.1.2.1.47` | Physical entity MIB. Used for managing and monitoring physical components of network devices, such as chassis, modules, and sensors. Can be used to read serial number, firmware version, etc… | Supports entityPhysical.
ENTITY-SENSOR-MIB | `.1.3.6.1.2.1.99` | MIB for monitoring physical sensors in network devices, such as temperature, voltage, and fan speed. | -
EtherLike-MIB | `.1.3.6.1.2.1.10.7` | MIB for managing and monitoring Ethernet-like interfaces. | Supports dot3StatsTable.
HOST-RESOURCES-MIB | `.1.3.6.1.2.1.25` | MIB for managing and monitoring host resources, such as CPU, memory, and storage. | Supports hrSystem.
IEC-62439-2-MIB | `.1.0.62439.1` | MIB for managing and monitoring the Media Redundancy Protocol (MRP) as defined by the IEC 62439-2 standard. | -
IEC-62439-3-MIB | `.1.0.62439.2` | MIB for managing and monitoring the Parallel Redundancy Protocol (PRP) as defined by the IEC 62439-3 standard. | Supports lreConfigurationGeneralGroup, lreConfigurationPortsGroup, lreStatisticsGeneralGroup
IEEE8023-LAG-MIB | `.1.2.840.10006.300.43` | MIB for managing and monitoring Link Aggregation Groups (LAGs) as defined by the IEEE 802.3ad standard. | Supports dot3adAgg nad dot3adAggPort.
IF-MIB | `.1.3.6.1.2.1.2`, `.1.3.6.1.2.1.31` | MIB for managing and monitoring network interfaces. | Supports ifTable, ifXTable.
LLDP-MIB | `.1.0.8802.1.1.2` | MIB for managing and monitoring the Link Layer Discovery Protocol (LLDP). | Partial Support for lldpConfiguration, lldpPortConfigTable, lldpStatistics, lldpLocalSystemData and lldpExtensions.
MAU-MIB | `.1.3.6.1.2.1.26` | MIB for managing and monitoring Media Attachment Units (MAUs). | Supports dot3IfMauBasicGroup and dot3IfMauAutoNegGroup
POWER-ETHERNET-MIB | `.1.3.6.1.2.1.105` | MIB for managing and monitoring Power over Ethernet (PoE) devices. | Supports pethPsePortGroup and pethMainPseGroup for applicable devices.
Q-BRIDGE-MIB | `.1.3.6.1.2.1.17.7` | MIB for managing and monitoring VLANs in bridged networks. | Supports dot1qBase, dot1qFdbTable, dot1qTpFdbTable, dot1qVlanCurrentTable and dot1qVlanStaticTable
RFC1213-MIB | `1.3.6.1.2.1` | The original MIB-II standard for network management. Provides basic management information for TCP/IP-based networks, including system, interface, and protocol statistics. | Supports system, snmp, interfaces, at, ip, icmp, tcp and udp.
RMON-MIB | `.1.3.6.1.2.1.16` | MIB for Remote Network Monitoring (RMON). | Supports etherStatsTable.
RSTP-MIB | `.1.3.6.1.2.1.17.2.16`, `.1.3.6.1.2.1.17.2.17`, `.1.3.6.1.2.1.17.2.19` | MIB for managing and monitoring Rapid Spanning Tree Protocol (RSTP). | Supports rstpBridgeGroup and rstpPortGroup
SNMP-FRAMEWORK-MIB | `.1.3.6.1.6.3.10` | MIB for managing and monitoring the SNMP framework itself. | Supports snmpEngine.
SNMP-MPD-MIB | `.1.3.6.1.6.3.11` | MIB for managing and monitoring the SNMP Message Processing and Dispatching (MPD) subsystem. | Supports snmpMPDStats.
SNMP-USER-BASED-SM-MIB | `.1.3.6.1.6.3.15` | MIB for managing and monitoring SNMPv3 user-based security models. | Supports usmStats and usmUser.
SNMPv2-MIB | `.1.3.6.1.2.1.1`, `.1.3.6.1.2.1.11` | MIB for managing and monitoring SNMPv2 entities. | Supports system and snmp.
SNMP-VIEW-BASED-ACM-MIB | `.1.3.6.1.6.3.16` | MIB for managing and monitoring SNMP view-based access control models. | Supports vacmContextTable, vacmSecurityToGroupTable, vacmAccessTable and vacmMIBViews
TRDP-MIB | `.1.0.61375.2.1.1` | Train Real-Time Data Protocol (TRDP) MIB, part of the IEC 61375. | Supports trdpGenGroup, trdpMemGroup, trdpPdGroup, trdpMduGroup, trdpMdtGroup and trdpRedGroup
TTDB-MIB | `.1.0.61375.2.3` | Train Topology DataBase (TTDB) MIB, part of the IEC 61375. | Supports ttdbBasicGroup and ttdbOpVehListGroup
TTDP-MIB | `.1.0.61375.2.5` | Train Topology Discovery Protocol (TTDP) MIB, part of the IEC 61375. | Supports ttdpBasicGroup and ttdpStatsGroup
UCD-SNMP-MIB | `.1.3.6.1.4.1.2021` | MIB for managing and monitoring system performance and resource utilisation. | Supports laTable and memory
VRRP-MIB | `.1.3.6.1.2.1.68` | MIB for managing and monitoring Virtual Router Redundancy Protocol (VRRP). | Supports vrrpOperGroup and vrrpStatsGroup
VRRPV3-MIB | `.1.3.6.1.2.1.207` | MIB for managing and monitoring Virtual Router Redundancy Protocol version 3 (VRRPv3). | Supports vrrpv3OperationsGroup and vrrpv3StatisticsGroup

#### Private MIBs

These MIBs are specific to Westermo devices. You can find the MIB files in the zip archive of the WeOS release you have downloaded. Afterwards you could load them into your SNMP management software.

MIB | Base OID | Description
--- | --- | ---
WESTERMO-COMMAND-MIB | `.1.3.6.1.4.1.16177.2.7` | MIB for managing and monitoring Westermo specific commands over SNMP, such as reboot and factory reset.
WESTERMO-DDM-MIB | `.1.3.6.1.4.1.16177.2.1` | MIB for managing and monitoring Westermo’s Digital Diagnostic Monitoring (DDM) features.
WESTERMO-EVENT-MIB | `.1.3.6.1.4.1.16177.2.3` | MIB for managing and monitoring Westermo specific events and alarms.
WESTERMO-FRNT-MIB | `.1.3.6.1.4.1.16177.2.5` | MIB for managing and monitoring Westermo’s FRNT (Fast Reconfiguration of Network Topology) feature.
WESTERMO-INTERFACE-MIB | `.1.3.6.1.4.1.16177.2.4` | The MIB lists all ports and interfaces and their reference index. The purpose of this reference index is to have a predictable index for ports and interfaces.
WESTERMO-RICH-MIB | `.1.3.6.1.4.1.16177.2.10` | MIB for managing and monitoring Westermo’s Ring Chaining (RiCh) protocol feature.
WESTERMO-RICO-MIB | `.1.3.6.1.4.1.16177.2.8` | MIB for managing and monitoring Westermo’s Ring Coupling Protocol (RiCo) feature.
WESTERMO-SYSTEM-MIB | `.1.3.6.1.4.1.16177.2.9` | MIB for managing and monitoring Westermo specific system information.

### SNMP Notifications (Traps/Informs) Support

TODO

- Add some list of trapsdoc/user-guide/docs/General/Auditable-Events.md
- what they do
- what they include
- When they are enabled or will be sent, etc…

## Configuration

##### Enter SNMP context

    example:/#> configure
    example:/config/#> management
    example:/config/management/#> snmp
    example:/config/management/snmp/#>

#### Syntax

`[no] enable`

  This will enable or disable SNMP.

  no
    Disable SNMP.
`[no] rocommunity <STR>`

  This setting controls the read-only community for SNMPv2.

  no
    Disables the read-only community for SNMPv2.
`[no] rwcommunity <STR>`

  This setting controls the read-writable community for SNMPv2.

  no
    Disables the read-writable community for SNMPv2.
`[no] trapcommunity <STR>`

  This setting controls the trap community for SNMPv2.

  no
    Set the trap community for SNMPv2 back to default `trap`.
`[no] ifindex-persistence`

  This setting controls if the ifindex persistence is enabled or disabled.

  no
    Disables the ifindex persistence.
`[no] engine-id [auto|custom <HEXSTR>]`

  This setting controls the engine-id, which is needed for sending SNMPv3 traps. This engine-id is only used for sending v3 traps. Get, set, walk etc. uses an engine-id that starts with the internal Net-SNMP prefix 80001f88 instead of 80003f31 followed by 03 and the MAC from br0.

  no
    Disables the engine-id.
  auto
    Sets the engine-id value based on the base MAC address and Westermo’s enterprise number.
  custom
    Sets the engine-id to a custom chosen hexadecimal string which can be between 10 (5 octets) and 64 (32 octets) hex digits long.
`[no] listen <IFACE> [<IFACE>...]]`
  This setting controls which interface(s) the SNMP daemon will listen to,
  all, some interfaces or none.
  no
    SNMP daemon will not listen to any interface.
`[no] commands-allowed [reboot, factory-reset]`

  This setting enables or disables the one or both of the two commands that are possible to use over SNMP. This means that it’s possible to reboot or factory reset a device on distance over SNMP if allowed here.

  no
    Disables one or all of the commands.
  reboot
    Enables or disables reboot of the device over SNMP.
  factory-reset
    Enables or disables factory-reset of the device over SNMP.
`[no] host <IP-ADDR[:PORT]|[IPv6-ADDR]:PORT|FQDN[:PORT]> [version <version> [username <USERNAME>]] [type trap|inform [resends <NUM>]]`

  Manage SNMP trap sink host definitions.

  Use this command to add or remove trap host definitions. These host definitions dictate how the system generates SNMP notifications (traps or informs) when such events occur, specifically where and how to send them. As such, this command only configures where and how any SNMP notifications will be sent; it does not configure which events will be generated.

  For instance, an alarm configured with an SNMP action will attempt to generate a SNMP notification event, but if no host has been configured with this command, no SNMP notification can be sent anywhere.

  Therefore, any part of the system that may support generating SNMP notifications for a given event needs to have at least one trap host configured for any SNMP notifications to actually be sent.

  Note

  Up to eight trap hosts can be configured.

  Default values:

  - If no version is specified, the default is 2.
  - If no type is specified, the default is trap.
  - If no resend value is specified for informs, the default is 5.
    - Resends are only relevant for informs.

  Example

      example:/config/management/snmp/#> host 192.168.1.1
      example:/config/management/snmp/#> host 192.168.1.2:1620 version 2 type trap
      example:/config/management/snmp/#> host 192.168.1.3 version 2 type inform resends 3
      example:/config/management/snmp/#> host 192.168.1.4 version 3 type inform user JohnDoe
      example:/config/management/snmp/#> host snmp.example.com version 2 type trap

  no
    Disables one or all traphosts.
  version
    SNMP version as a figure 2 or 3. Default is 2.
  username
    In case of version 3, a username of a user present in the SNMP configuration.
  type
    The type of message to send to the traphost, trap or inform. Default is trap.
  resends
    Number of times to resend the message in case of no ack received from the recipient. 0-60 number of resends is supported. Only available for informs. Default number of resends is 5.
`[no] rwuser <USERNAME> [auth <md5|sha1|sha224|sha256|sha384|sha512> <PASSPHRASE> [crypto <des|aes128|aes192|aes256|aes192c|aes256c> <PASSPHRASE>]] [OIDTREE]`

  This setting manages read-writable users.

  no
    Disables one or all read-writable users.
  auth
    Set the authentication encryption type and required password for the authentication.
  crypto
    Set the encryption type and required password for the encryption.
  oidtree
    Restricts access for the user to the subtree rooted at the given OID. Default is full access.
`[no] rouser <USERNAME> [auth <md5|sha1|sha224|sha256|sha384|sha512> <PASSPHRASE> [crypto <des|aes128|aes192|aes256|aes192c|aes256c> <PASSPHRASE>]] [OIDTREE]`

  This setting manages read-only users.

  no
    Disables one or all read-only users.
  auth
    Set the authentication encryption type and required password for the authentication.
  crypto
    Set the encryption type and required password for the encryption.
  oidtree
    Restricts access for the user to the subtree rooted at the given OID. Default is full access.

#### Examples

##### Add a read-writable user with authentication and crypto

    example:/#> configure
    example:/config/#> management
    example:/config/management/#> snmp
    example:/config/management/snmp/#> rwuser JohnDoe auth sha384 Secret1 crypto aes192 Secret2

##### Add a host for version 3 informs with the user created above

    example:/#> configure
    example:/config/#> management
    example:/config/management/#> snmp
    example:/config/management/snmp/#> host 1.2.3.4 version 3 type informs user JohnDoe

##### Add a host for version 2 traps

    example:/#> configure
    example:/config/#> management
    example:/config/management/#> snmp
    example:/config/management/snmp/#> host snmp.example.com version 2 type trap

« Previous Next »