The TDX supports SNMP (only 'Read' commands) - if a SNMP license is purchased and installed. This gives you the opportunity to monitor the headend with some basic commands. Mostly you will be able to receive SNMP Traps from the headend. For monitoring, you can execute several SNMP commands.
This article assume, that you have the basic knowledge of SNMP, MIB's and OID's. Later in the article, these terms will be used. If you aren't familiar with these, please get acquainted with this before continuing.
In this article, we will look closer on setting up the TDX for SNMP, SNMP queries and receiving traps. Before going through this article, you might want to download and install a free MIB browser (ie. iReasoning MIB browser) and Triax TDX MIB file.
1. SNMP License and TDX Setup
Before you can start monitoring your TDX, you need to purchase a SNMP License and install it on the TDX.
Under 'Admin' -> 'License Handling' you must enter/copy 'n' paste the License key for your SNMP, into the 'Activation Key' field. Submit the license, by clicking on 'Activate'.
When this is done, it will look somewhat like this:
Now we need to edit the SNMP settings. You will find them, under 'Admin' -> 'SNMP Settings'. These are the default values:
|Manager IP||This is the IP, which you want to sent SNMP traps towards. All IP will be able, to send SNMPGET/WALK commands to the TDX. So this is not acting like a access control list (ACL).|
|SNMP port||Default SNMP port for GET/WALK commands|
|SNMP port (Traps)||Default SNMP port for sending SNMP Traps|
|Community String||SNMP v2 community. This acts like a password. For advanced users, please note. TDX only supports 'Read' commands.|
You can change one or all of these values, as you like. We recommend you change the 'Manager IP' and the 'Community string' accordingly to your monitoring system.
This completes the SNMP setup, on the TDX. If you are confident with querying data and receiving SNMP Traps, there is no need for you, to read on.
2. Querying vs. Receiving ?
The main purpose of the SNMP functionality on the TDX is sending SNMP Traps. A SNMP trap is a 'message' sent from the TDX to the 'Manager IP', when an instants occurs. This could be a failed login or signal loss. This is receiving data from the TDX.
Secondly, it is possible to request data from the TDX (querying data). Sending a SNMPGET command, requesting a specific set of data, which the TDX then answers. This is typically done, in a defined time loop (in example once, every hour). This is querying data from the TDX.
So, what is the main difference between these to type of data reception?
Data like temperature value, memory usage, CPU usage and link usage are available all the time - monitoring systems will get these values and draw a graph. All servers, configured with the necessary setup, will be able to 'ask for data'. This is typically done via SNMPGET commands (or other).
Events, on the other hand, are not always present. For instant if a user fails to log in, the TDX can send a message to a defined IP address, that a user tried to log in, but failed. We don't want to keep asking the TDX 'Do you have lock on all frontends?' - we rather want to receive a trap telling us, that a fronted lost signal.
Its also important to know, that SNMPGET is possible for all servers. All servers, that is on the same network AND knows the community string, can request data. This is not what is wanted.
The SNMP Trap is only sent to the manager IP.
3. Querying data
There are several ways to obtain SNMP data. This article will only illustrate 2 methods.
Windows Program - iReasoning
As mention earlier in the article, you can download a free MIB Browser at iReasoning. If this section leaves you with a question about iReasonings MIB Browser, please read the Online User Guide they have provided.
Remember to download the Triax TDX MIB file
Once installed, open the program and click 'File' -> 'Load MIBs'
Locate the folder, where the MIB file is stored. Select the 'TRIAX-EVENT-MIB.mib' file and click 'Open'.
You now have the 'Triax Event MIB' loaded. Expand the MIB Tree, to verify.
Now we need to define, which headend we want to get the data from. Enter the IP Address of the headend, in the 'Address:' field -> Click on 'Advanced...' and edit the 'Read Community' and 'SNMP Version' fields:
Read Community : TDX (or the value you defined on the TDX)
SNMP Version : 2
As it is now, you can click on the 'Go' button (upper right corner). This will return the first value of the tree (The result of the first 'OID'). For the next value, click 'Go' again. You can change the way, that iReasoning returns the values.
In the field 'Operations:' - you can toggle the value to different kind of queries. Often you would use 'Walk' for all values at once or 'Get' for a single defined value.
Here we will use 'Walk' - that delivers all the values at once. Here we have selected 'The top of the tree' and clicked 'Go' (remember to scroll to the top).
We can see different values, like the identity of the unit (Triax TDX) - yes, we know this now. But imaging you are using a monitoring system, then you need to identify the different systems you are querying. We can see the uptime (7177 hours, 2 minutes, 45 seconds) and a lot of other values.
The main part of these values, will first make sense when they are handled by a monitoring system - ie. Observium
For the more experienced users, querying data is also possible from the command prompt on, in example, a Linux server. This article will not describe - in depth - how to do this. The article will not describe, how to install / setup SNMP on Linux.
Querying from 'CLI' (Command Line Interface) is normally done, for testing the connectivity from the monitoring system (if hosted on a Linux server) towards the headend.
A querying command looks would like this:
snmpget -v <snmp version> -c <comminuty> <IP address of TDX> <OID>
This we alter to our need, so the query will look like this, if we want in example, the timeticks (Uptime)
snmpget -v 2c -c tdx 192.168.0.121 .188.8.131.52.184.108.40.206.0
When executing the last command, on the TDX, we get this:
iso.220.127.116.11.18.104.22.168 = Timeticks: (2608878849) 301 days, 22:53:08.49
The end of the command (the OID part) can be changed, to and OID of your choise. The TDX do support some of the standard MIB. It do e.g. support the SNMP MIB-2 System.
4. Receiving Data
Now for the main part, of the SNMP functionality. The TDX is designed to send a SNMP Trap, when a event is triggered. This could be a failed login, Fronted loosing its lock on a signal or other events. In the end of this article, there will be a list of events that can trigger a SNMP Trap.
The TDX sends the trap, to the manager IP (as previously described). The receiving device must understand the SNMP Trap. Here we use the 'Triax Event MIB' file again. If we don't do this, the traps will just be a string of numbers. To illustrate this, the 'Triax Event MIB' has been unloaded.
Here we will use a SNMP Trap Receiver included with iReasoning (Trap Receiver).
Open the program, with no further actions, you should be able to receive SNMP Traps. If you do not receive any traps, please check your firewall settings. UDP Port 162 must be open, for the program to receive the traps.
Please note, that we haven't loaded the 'Triax Event MIB' yet (how this is done, see previous description in the top of the article) !
Now, if you ie. remove the input signal from a frontend, you will receive 1 trap. The information's include:
Description: This is the OID - Just a bunch of numbers, separeted by a dot.
Source: The originating IP address (The TDX).
Time: When the SNMP Trap was received.
Now we load the 'Triax Event MIB' again, and restart the program. We then remove the input signal again. Now the program understands the OID and presents the trap, as human readable.
Clicking on the received trap, gives you more information, in the field below. Here we can see, that it's Frontend 1 on the Main Unit and the Severity is 'Minor'.
In different monitoring systems, you can set up a notification, if/when you receive a trap. This could be by mail or SMS.
This article, will not - at this point - describe this.
This completes the setup and some basic usages of the 'Triax Event MIB'.
For further information / documentation, read more here
Below is a list, of the events, that will trigger a SNMP Trap: