# ZYXEL AAM1212-51 IES-612 by SNMP ## Overview http://origin-eu.zyxel.com/products_services/ies_1248_51v.shtml?t=p ### Known Issues Description: Incorrect handling of SNMP bulk requests. Disable the use of bulk requests in the SNMP interface settings. Version: all versions firmware Device: ZYXEL AAM1212-51 / IES-612 ## Requirements Zabbix version: 7.0 and higher. ## Tested versions This template has been tested on: - ZYXEL AAM1212-51 / IES-612 ## Configuration > Zabbix should be configured according to the instructions in the [Templates out of the box](https://www.zabbix.com/documentation/7.0/manual/config/templates_out_of_the_box) section. ## Setup Refer to the vendor documentation. ### Macros used |Name|Description|Default| |----|-----------|-------| |{$ZYXEL.LLD.FILTER.IF.CONTROL.MATCHES}|
Triggers will be created only for interfaces whose description contains the value of this macro
|`CHANGE_IF_NEEDED`| |{$SNMP.TIMEOUT}|The time interval for SNMP agent availability trigger expression.
|`5m`| |{$ZYXEL.ADSL.SNR.MIN}|Type the minimum signal to noise margin (0-31 dB)
|`8`| |{$ZYXEL.ADSL.ATN.MAX}|Type the maximum signal attenuation
|`40`| |{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.MATCHES}|Filter of discoverable link types.
|`.*`| |{$ZYXEL.LLD.FILTER.IF.LINKSTATUS.NOT_MATCHES}|Filter to exclude discovered by link types.
|`2`| ### Items |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |ZYXEL AAM1212-51 / IES-612: SNMP agent availability||Zabbix internal|zabbix[host,snmp,available]**Preprocessing**
Discard unchanged with heartbeat: `1h`
MIB: RFC1213-MIB
A textual description of the entity. This value
should include the full name and version
identification of the system's hardware type,
software operating-system, and networking
software. It is mandatory that this only contain
printable ASCII characters.
|SNMP agent|zyxel.aam1212.model**Preprocessing**
Discard unchanged with heartbeat: `6h`
MIB: RFC1213-MIB
The textual identification of the contact person
for this managed node, together with information
on how to contact this person.
|SNMP agent|zyxel.aam1212.contact**Preprocessing**
Discard unchanged with heartbeat: `6h`
MIB: RFC1213-MIB
An administratively-assigned name for this
managed node. By convention, this is the node's
fully-qualified domain name.
|SNMP agent|zyxel.aam1212.name**Preprocessing**
Discard unchanged with heartbeat: `6h`
MIB: RFC1213-MIB
The physical location of this node (e.g.,
`telephone closet, 3rd floor').
|SNMP agent|zyxel.aam1212.location**Preprocessing**
Discard unchanged with heartbeat: `6h`
MIB: IF-MIB
The interface's address at the protocol layer
immediately `below' the network layer in the
protocol stack. For interfaces which do not have
such an address (e.g., a serial line), this object
should contain an octet string of zero length.
|SNMP agent|zyxel.aam1212.mac**Preprocessing**
Discard unchanged with heartbeat: `6h`
MIB: RFC1213-MIB
The time (in hundredths of a second) since the
network management portion of the system was last
re-initialized.
|SNMP agent|zyxel.aam1212.net.uptime**Preprocessing**
Custom multiplier: `0.01`
MIB: HOST-RESOURCES-MIB
The amount of time since this host was last initialized.
Note that this is different from sysUpTime in the SNMPv2-MIB
[RFC1907] because sysUpTime is the uptime of the
network management portion of the system.
|SNMP agent|zyxel.aam1212.hw.uptime**Preprocessing**
Check for not supported value
⛔️Custom on fail: Set value to: `0`
Custom multiplier: `0.01`
MIB: ZYXEL-IESCOMMON-MIB
|SNMP agent|zyxel.aam1212.fwversion**Preprocessing**
Discard unchanged with heartbeat: `6h`
MIB: ZYXEL-IESCOMMON-MIB
Serial number
|SNMP agent|zyxel.aam1212.serialnumber**Preprocessing**
Discard unchanged with heartbeat: `6h`
MIB: ZYXEL-IESCOMMON-MIB
This variable indicates the alarm status of the module.
It is a bit map represented a sum, therefore, it can represent
multiple defects simultaneously. The moduleNoDefect should be set
if and only if no other flag is set.
The various bit positions are:
1 moduleNoDefect
2 moduleOverHeat
3 moduleFanRpmLow
4 moduleVoltageLow
5 moduleThermalSensorFailure
6 modulePullOut
7 powerDC48VAFailure
8 powerDC48VBFailure
9 extAlarmInputTrigger
10 moduleDown
11 mscSwitchOverOK
12 networkTopologyChange
13 macSpoof
14 cpuHigh
15 memoryUsageHigh
16 packetBufferUsageHigh
17 loopguardOccurence
|SNMP agent|zyxel.aam1212.slot.alarm**Preprocessing**
JavaScript: `The text is too long. Please see the template.`
SNMP is not available for polling. Please check device connectivity and SNMP settings.
|`max(/ZYXEL AAM1212-51 IES-612 by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0`|Warning|| |ZYXEL AAM1212-51 / IES-612: Template does not match hardware|This template is for Zyxel AAM1212-51 / IES-612, but connected to {ITEM.VALUE}
|`last(/ZYXEL AAM1212-51 IES-612 by SNMP/zyxel.aam1212.model)<>"AAM1212-51 / IES-612"`|Info|**Manual close**: Yes| |ZYXEL AAM1212-51 / IES-612: Host has been restarted|Uptime is less than 10 minutes.
|`(last(/ZYXEL AAM1212-51 IES-612 by SNMP/zyxel.aam1212.hw.uptime)>0 and last(/ZYXEL AAM1212-51 IES-612 by SNMP/zyxel.aam1212.hw.uptime)<10m) or (last(/ZYXEL AAM1212-51 IES-612 by SNMP/zyxel.aam1212.hw.uptime)=0 and last(/ZYXEL AAM1212-51 IES-612 by SNMP/zyxel.aam1212.net.uptime)<10m)`|Info|**Manual close**: Yes| |ZYXEL AAM1212-51 / IES-612: Firmware has changed|Firmware version has changed. Acknowledge to close the problem manually.
|`last(/ZYXEL AAM1212-51 IES-612 by SNMP/zyxel.aam1212.fwversion,#1)<>last(/ZYXEL AAM1212-51 IES-612 by SNMP/zyxel.aam1212.fwversion,#2) and length(last(/ZYXEL AAM1212-51 IES-612 by SNMP/zyxel.aam1212.fwversion))>0`|Info|**Manual close**: Yes| |ZYXEL AAM1212-51 / IES-612: Device has been replaced|Device serial number has changed. Acknowledge to close the problem manually.
|`last(/ZYXEL AAM1212-51 IES-612 by SNMP/zyxel.aam1212.serialnumber,#1)<>last(/ZYXEL AAM1212-51 IES-612 by SNMP/zyxel.aam1212.serialnumber,#2) and length(last(/ZYXEL AAM1212-51 IES-612 by SNMP/zyxel.aam1212.serialnumber))>0`|Info|**Manual close**: Yes| |ZYXEL AAM1212-51 / IES-612: Port {#SNMPINDEX} alarm|The slot reported an error.
|`find(/ZYXEL AAM1212-51 IES-612 by SNMP/zyxel.aam1212.slot.alarm,,"like","moduleNoDefect")=0`|Average|**Manual close**: Yes| ### LLD rule Temperature discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |Temperature discovery|An entry in tempTable.
|SNMP agent|zyxel.aam1212.temp.discovery| ### Item prototypes for Temperature discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |ZYXEL AAM1212-51 / IES-612: Temperature "{#ZYXEL.TEMP.ID}"|MIB: ZYXEL-IESCOMMON-MIB
The current temperature measured at this sensor
|SNMP agent|zyxel.aam1212.temp[{#SNMPINDEX}]**Preprocessing**
Discard unchanged with heartbeat: `1h`
Please check the temperature
|`last(/ZYXEL AAM1212-51 IES-612 by SNMP/zyxel.aam1212.temp[{#SNMPINDEX}])>{#ZYXEL.TEMP.THRESH.HIGH}`|Average|| ### LLD rule Voltage discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |Voltage discovery|An entry in voltageTable.
|SNMP agent|zyxel.aam1212.volt.discovery**Preprocessing**
JavaScript: `The text is too long. Please see the template.`
MIB: ZYXEL-IESCOMMON-MIB
The current voltage reading.
|SNMP agent|zyxel.aam1212.volt[{#SNMPINDEX}]**Preprocessing**
Custom multiplier: `0.001`
Discard unchanged with heartbeat: `1h`
Please check the power supply
|`last(/ZYXEL AAM1212-51 IES-612 by SNMP/zyxel.aam1212.volt[{#SNMPINDEX}])<{#ZYXEL.VOLT.THRESH.LOW}`|Average|| ### LLD rule Ethernet interface discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |Ethernet interface discovery||SNMP agent|zyxel.aam1212.net.if.discovery| ### Item prototypes for Ethernet interface discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |ZYXEL AAM1212-51 / IES-612: Port {#ZYXEL.IF.NAME}: Interface name|MIB: IF-MIB
A textual string containing information about the interface
|SNMP agent|zyxel.aam1212.net.if.name[{#SNMPINDEX}]**Preprocessing**
Discard unchanged with heartbeat: `6h`
MIB: IF-MIB
The current operational state of the interface.
The testing(3) state indicates that no operational
packets can be passed.
|SNMP agent|zyxel.aam1212.net.if.operstatus[{#SNMPINDEX}]**Preprocessing**
Discard unchanged with heartbeat: `6h`
MIB: IF-MIB
The desired state of the interface. The
testing(3) state indicates that no operational
packets can be passed.
|SNMP agent|zyxel.aam1212.net.if.adminstatus[{#SNMPINDEX}]**Preprocessing**
Discard unchanged with heartbeat: `6h`
MIB: IF-MIB
The total number of octets received on the interface,
including framing characters.
|SNMP agent|zyxel.aam1212.net.if.in.traffic[{#SNMPINDEX}]**Preprocessing**
Custom multiplier: `8`
MIB: IF-MIB
The total number of octets transmitted out of the
interface, including framing characters. This object is a
64-bit version of ifOutOctets.
|SNMP agent|zyxel.aam1212.net.if.out.traffic[{#SNMPINDEX}]**Preprocessing**
Custom multiplier: `8`
This trigger expression works as follows:
1. It can be triggered if the operations status is down.
2. `{$IFCONTROL:"{#IFNAME}"}=1` - a user can redefine context macro to value - 0. That marks this interface as not important. No new trigger will be fired if this interface is down.
3. `{TEMPLATE_NAME:METRIC.diff()}=1` - the trigger fires only if the operational status was up to (1) sometime before (so, do not fire for the 'eternal off' interfaces.)
WARNING: if closed manually - it will not fire again on the next poll, because of .diff.
MIB: IF-MIB
A textual string containing information about the interface
|SNMP agent|zyxel.aam1212.net.adsl.name[{#SNMPINDEX}]**Preprocessing**
Discard unchanged with heartbeat: `6h`
MIB: IF-MIB
The current operational state of the interface.
The testing(3) state indicates that no operational
packets can be passed.
|SNMP agent|zyxel.aam1212.net.adsl.operstatus[{#SNMPINDEX}]**Preprocessing**
Discard unchanged with heartbeat: `6h`
MIB: IF-MIB
The desired state of the interface. The
testing(3) state indicates that no operational
packets can be passed.
|SNMP agent|zyxel.aam1212.net.adsl.adminstatus[{#SNMPINDEX}]**Preprocessing**
Discard unchanged with heartbeat: `6h`
MIB: IF-MIB
The total number of octets received on the interface,
including framing characters.
|SNMP agent|zyxel.aam1212.net.adsl.in.traffic[{#SNMPINDEX}]**Preprocessing**
Custom multiplier: `8`
MIB: IF-MIB
The total number of octets transmitted out of the
interface, including framing characters. This object is a
64-bit version of ifOutOctets.
|SNMP agent|zyxel.aam1212.net.adsl.out.traffic[{#SNMPINDEX}]**Preprocessing**
Custom multiplier: `8`
MIB: ADSL-LINE-MIB
Noise Margin as seen by this ATU with respect to its
received signal in tenth dB.
The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit - Central), in this case ZYXEL AAM1212-51 / IES-612, during negotiation/provisioning message interchanges.
|SNMP agent|zyxel.aam1212.net.adsl.atuc.snrmgn[{#SNMPINDEX}]**Preprocessing**
Custom multiplier: `0.1`
Discard unchanged with heartbeat: `1h`
MIB: ADSL-LINE-MIB
Measured difference in the total power transmitted by
the peer ATU and the total power received by this ATU.
The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit - Central), in this case ZYXEL AAM1212-51 / IES-612, during negotiation/provisioning message interchanges.
|SNMP agent|zyxel.aam1212.net.adsl.atuc.atn[{#SNMPINDEX}]**Preprocessing**
Custom multiplier: `0.1`
Discard unchanged with heartbeat: `1h`
MIB: ADSL-LINE-MIB
Measured total output power transmitted by this ATU.
The Info Atuc fields show data acquired from the ATUC (ADSL Termination Unit - Central), in this case ZYXEL AAM1212-51 / IES-612, during negotiation/provisioning message interchanges.
|SNMP agent|zyxel.aam1212.net.adsl.atuc.outpwr[{#SNMPINDEX}]**Preprocessing**
Custom multiplier: `0.1`
Discard unchanged with heartbeat: `1h`
MIB: ADSL-LINE-MIB
Noise Margin as seen by this ATU with respect to its
received signal in tenth dB.
The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit - Remote), in this case the subscriber's ADSL modem or router, during negotiation/provisioning message interchanges.
|SNMP agent|zyxel.aam1212.net.adsl.atur.snrmgn[{#SNMPINDEX}]**Preprocessing**
Custom multiplier: `0.1`
Discard unchanged with heartbeat: `1h`
MIB: ADSL-LINE-MIB
Measured difference in the total power transmitted by
the peer ATU and the total power received by this ATU.
The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit - Remote), in this case the subscriber's ADSL modem or router, during negotiation/provisioning message interchanges.
|SNMP agent|zyxel.aam1212.net.adsl.atur.atn[{#SNMPINDEX}]**Preprocessing**
Custom multiplier: `0.1`
Discard unchanged with heartbeat: `1h`
MIB: ADSL-LINE-MIB
Measured total output power transmitted by this ATU.
The Info Atur fields show data acquired from the ATUR (ADSL Termination Unit - Remote), in this case the subscriber's ADSL modem or router, during negotiation/provisioning message interchanges.
|SNMP agent|zyxel.aam1212.net.adsl.atur.outpwr[{#SNMPINDEX}]**Preprocessing**
Custom multiplier: `0.1`
Discard unchanged with heartbeat: `1h`
This trigger expression works as follows:
1. It can be triggered if the operations status is down.
2. `{$IFCONTROL:"{#IFNAME}"}=1` - a user can redefine context macro to value - 0. That marks this interface as not important. No new trigger will be fired if this interface is down.
3. `{TEMPLATE_NAME:METRIC.diff()}=1` - the trigger fires only if the operational status was up to (1) sometime before (so, do not fire for the 'eternal off' interfaces.)
WARNING: if closed manually - it will not fire again on the next poll, because of .diff.
Signal-to-noise margin (SNR Margin) which is the difference between the actual SNR and the SNR required to sync at a specific speed
|`min(/ZYXEL AAM1212-51 IES-612 by SNMP/zyxel.aam1212.net.adsl.atuc.snrmgn[{#SNMPINDEX}],5m)<{$ZYXEL.ADSL.SNR.MIN}`|Warning|| |ZYXEL AAM1212-51 / IES-612: High the DSL line attenuation in Port {#SNMPINDEX}|The reductions in amplitude of the downstream and upstream DSL signals.
|`min(/ZYXEL AAM1212-51 IES-612 by SNMP/zyxel.aam1212.net.adsl.atuc.atn[{#SNMPINDEX}],5m)>{$ZYXEL.ADSL.ATN.MAX}`|Warning|| |ZYXEL AAM1212-51 / IES-612: Low the DSL line noise margins in Port {#SNMPINDEX}|Signal-to-noise margin (SNR Margin) which is the difference between the actual SNR and the SNR required to sync at a specific speed
|`min(/ZYXEL AAM1212-51 IES-612 by SNMP/zyxel.aam1212.net.adsl.atur.snrmgn[{#SNMPINDEX}],5m)<{$ZYXEL.ADSL.SNR.MIN}`|Warning|| |ZYXEL AAM1212-51 / IES-612: High the DSL line attenuation in Port {#SNMPINDEX}|The reductions in amplitude of the downstream and upstream DSL signals.
|`min(/ZYXEL AAM1212-51 IES-612 by SNMP/zyxel.aam1212.net.adsl.atur.atn[{#SNMPINDEX}],5m)>{$ZYXEL.ADSL.ATN.MAX}`|Warning|| ## Feedback Please report any issues with the template at [`https://support.zabbix.com`](https://support.zabbix.com) You can also provide feedback, discuss the template, or ask for help at [`ZABBIX forums`](https://www.zabbix.com/forum/zabbix-suggestions-and-feedback)