# ZYXEL IES1248-51 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 IES1248-51 ## Requirements Zabbix version: 7.0 and higher. ## Tested versions This template has been tested on: - ZYXEL IES1248-51 ## 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 IES1248-51: SNMP agent availability||Zabbix internal|zabbix[host,snmp,available]

**Preprocessing**

| |ZYXEL IES1248-51: Hardware model name|

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.ies1248.model

**Preprocessing**

| |ZYXEL IES1248-51: Contact|

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.ies1248.contact

**Preprocessing**

| |ZYXEL IES1248-51: Host name|

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.ies1248.name

**Preprocessing**

| |ZYXEL IES1248-51: Location|

MIB: RFC1213-MIB

The physical location of this node (e.g.,

`telephone closet, 3rd floor').

|SNMP agent|zyxel.ies1248.location

**Preprocessing**

| |ZYXEL IES1248-51: MAC address|

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.ies1248.mac

**Preprocessing**

| |ZYXEL IES1248-51: Uptime (network)|

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.ies1248.net.uptime

**Preprocessing**

| |ZYXEL IES1248-51: Uptime (hardware)|

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.ies1248.hw.uptime

**Preprocessing**

| |ZYXEL IES1248-51: ZyNOS F/W Version|

MIB: ZYXEL-IESCOMMON-MIB

|SNMP agent|zyxel.ies1248.fwversion

**Preprocessing**

| |ZYXEL IES1248-51: Hardware serial number|

MIB: ZYXEL-IESCOMMON-MIB

Serial number

|SNMP agent|zyxel.ies1248.serialnumber

**Preprocessing**

| |ZYXEL IES1248-51: Alarm status|

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.ies1248.slot.alarm

**Preprocessing**

| ### Triggers |Name|Description|Expression|Severity|Dependencies and additional info| |----|-----------|----------|--------|--------------------------------| |ZYXEL IES1248-51: No SNMP data collection|

SNMP is not available for polling. Please check device connectivity and SNMP settings.

|`max(/ZYXEL IES1248-51 by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0`|Warning|| |ZYXEL IES1248-51: Template does not match hardware|

This template is for Zyxel IES1248-51, but connected to {ITEM.VALUE}

|`last(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.model)<>"IES1248-51"`|Info|**Manual close**: Yes| |ZYXEL IES1248-51: Host has been restarted|

Uptime is less than 10 minutes.

|`(last(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.hw.uptime)>0 and last(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.hw.uptime)<10m) or (last(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.hw.uptime)=0 and last(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.net.uptime)<10m)`|Info|**Manual close**: Yes| |ZYXEL IES1248-51: Firmware has changed|

Firmware version has changed. Acknowledge to close the problem manually.

|`last(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.fwversion,#1)<>last(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.fwversion,#2) and length(last(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.fwversion))>0`|Info|**Manual close**: Yes| |ZYXEL IES1248-51: Device has been replaced|

Device serial number has changed. Acknowledge to close the problem manually.

|`last(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.serialnumber,#1)<>last(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.serialnumber,#2) and length(last(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.serialnumber))>0`|Info|**Manual close**: Yes| |ZYXEL IES1248-51: Port {#SNMPINDEX} alarm|

The slot reported an error.

|`find(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.slot.alarm,,"like","moduleNoDefect")=0`|Average|**Manual close**: Yes| ### LLD rule Fan discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |Fan discovery|

An entry in fanRpmTable.

|SNMP agent|zyxel.ies1248.fan.discovery| ### Item prototypes for Fan discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |ZYXEL IES1248-51: Fan #{#SNMPINDEX}|

MIB: ZYXEL-IESCOMMON-MIB

Current speed in Revolutions Per Minute (RPM) on the fan.

|SNMP agent|zyxel.ies1248.fan[{#SNMPINDEX}]

**Preprocessing**

| ### Trigger prototypes for Fan discovery |Name|Description|Expression|Severity|Dependencies and additional info| |----|-----------|----------|--------|--------------------------------| |ZYXEL IES1248-51: FAN{#SNMPINDEX} is in critical state|

Please check the fan unit

|`last(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.fan[{#SNMPINDEX}])<{#ZYXEL.FANRPM.THRESH.LOW}`|Average|| ### LLD rule Temperature discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |Temperature discovery|

An entry in tempTable.

|SNMP agent|zyxel.ies1248.temp.discovery| ### Item prototypes for Temperature discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |ZYXEL IES1248-51: Temperature "{#ZYXEL.TEMP.ID}"|

MIB: ZYXEL-IESCOMMON-MIB

The current temperature measured at this sensor

|SNMP agent|zyxel.ies1248.temp[{#SNMPINDEX}]

**Preprocessing**

| ### Trigger prototypes for Temperature discovery |Name|Description|Expression|Severity|Dependencies and additional info| |----|-----------|----------|--------|--------------------------------| |ZYXEL IES1248-51: Temperature {#ZYXEL.TEMP.ID} is in critical state|

Please check the temperature

|`last(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.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.ies1248.volt.discovery

**Preprocessing**

| ### Item prototypes for Voltage discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |ZYXEL IES1248-51: Nominal "{#ZYXEL.VOLT.NOMINAL}"|

MIB: ZYXEL-IESCOMMON-MIB

The current voltage reading.

|SNMP agent|zyxel.ies1248.volt[{#SNMPINDEX}]

**Preprocessing**

| ### Trigger prototypes for Voltage discovery |Name|Description|Expression|Severity|Dependencies and additional info| |----|-----------|----------|--------|--------------------------------| |ZYXEL IES1248-51: Voltage {#ZYXEL.VOLT.NOMINAL} is in critical state|

Please check the power supply

|`last(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.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.ies1248.net.if.discovery| ### Item prototypes for Ethernet interface discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |ZYXEL IES1248-51: Port {#SNMPINDEX}: Interface name|

MIB: IF-MIB

A textual string containing information about the interface

|SNMP agent|zyxel.ies1248.net.if.name[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL IES1248-51: Port {#ZYXEL.IF.NAME}: Operational status|

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.ies1248.net.if.operstatus[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL IES1248-51: Port {#ZYXEL.IF.NAME}: Administrative status|

MIB: IF-MIB

The desired state of the interface. The

testing(3) state indicates that no operational

packets can be passed.

|SNMP agent|zyxel.ies1248.net.if.adminstatus[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL IES1248-51: Port {#ZYXEL.IF.NAME}: Incoming traffic|

MIB: IF-MIB

The total number of octets received on the interface,

including framing characters.

|SNMP agent|zyxel.ies1248.net.if.in.traffic[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL IES1248-51: Port {#ZYXEL.IF.NAME}: Outgoing traffic|

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.ies1248.net.if.out.traffic[{#SNMPINDEX}]

**Preprocessing**

| ### Trigger prototypes for Ethernet interface discovery |Name|Description|Expression|Severity|Dependencies and additional info| |----|-----------|----------|--------|--------------------------------| |ZYXEL IES1248-51: Port {#ZYXEL.IF.NAME}: Link down|

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.

|`last(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.net.if.operstatus[{#SNMPINDEX}])=2 and last(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.net.if.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.net.if.operstatus[{#SNMPINDEX}],#2)`|Average|**Manual close**: Yes| ### LLD rule ADSL interface discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |ADSL interface discovery||SNMP agent|zyxel.ies1248.net.adsl.discovery| ### Item prototypes for ADSL interface discovery |Name|Description|Type|Key and additional info| |----|-----------|----|-----------------------| |ZYXEL IES1248-51: Port {#SNMPINDEX}: Interface name|

MIB: IF-MIB

A textual string containing information about the interface

|SNMP agent|zyxel.ies1248.net.adsl.name[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL IES1248-51: Port {#SNMPINDEX}: Operational status|

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.ies1248.net.adsl.operstatus[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL IES1248-51: Port {#SNMPINDEX}: Administrative status|

MIB: IF-MIB

The desired state of the interface. The

testing(3) state indicates that no operational

packets can be passed.

|SNMP agent|zyxel.ies1248.net.adsl.adminstatus[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL IES1248-51: Port {#SNMPINDEX}: Incoming traffic|

MIB: IF-MIB

The total number of octets received on the interface,

including framing characters.

|SNMP agent|zyxel.ies1248.net.adsl.in.traffic[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL IES1248-51: Port {#SNMPINDEX}: Outgoing traffic|

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.ies1248.net.adsl.out.traffic[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL IES1248-51: Port {#SNMPINDEX}: ATUC noise margin|

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 IES1248-51, during negotiation/provisioning message interchanges.

|SNMP agent|zyxel.ies1248.net.adsl.atuc.snrmgn[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL IES1248-51: Port {#SNMPINDEX}: ATUC attenuation|

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 IES1248-51, during negotiation/provisioning message interchanges.

|SNMP agent|zyxel.ies1248.net.adsl.atuc.atn[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL IES1248-51: Port {#SNMPINDEX}: ATUC output power|

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 IES1248-51, during negotiation/provisioning message interchanges.

|SNMP agent|zyxel.ies1248.net.adsl.atuc.outpwr[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL IES1248-51: Port {#SNMPINDEX}: ATUR noise margin|

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.ies1248.net.adsl.atur.snrmgn[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL IES1248-51: Port {#SNMPINDEX}: ATUR attenuation|

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.ies1248.net.adsl.atur.atn[{#SNMPINDEX}]

**Preprocessing**

| |ZYXEL IES1248-51: Port {#SNMPINDEX}: ATUR output power|

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.ies1248.net.adsl.atur.outpwr[{#SNMPINDEX}]

**Preprocessing**

| ### Trigger prototypes for ADSL interface discovery |Name|Description|Expression|Severity|Dependencies and additional info| |----|-----------|----------|--------|--------------------------------| |ZYXEL IES1248-51: Port {#SNMPINDEX}: Link down|

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.

|`last(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.net.adsl.operstatus[{#SNMPINDEX}])=2 and last(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.net.adsl.operstatus[{#SNMPINDEX}],#1)<>last(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.net.adsl.operstatus[{#SNMPINDEX}],#2)`|Average|**Manual close**: Yes| |ZYXEL IES1248-51: 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 IES1248-51 by SNMP/zyxel.ies1248.net.adsl.atuc.snrmgn[{#SNMPINDEX}],5m)<{$ZYXEL.ADSL.SNR.MIN}`|Warning|| |ZYXEL IES1248-51: High the DSL line attenuation in Port {#SNMPINDEX}|

The reductions in amplitude of the downstream and upstream DSL signals.

|`min(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.net.adsl.atuc.atn[{#SNMPINDEX}],5m)>{$ZYXEL.ADSL.ATN.MAX}`|Warning|| |ZYXEL IES1248-51: 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 IES1248-51 by SNMP/zyxel.ies1248.net.adsl.atur.snrmgn[{#SNMPINDEX}],5m)<{$ZYXEL.ADSL.SNR.MIN}`|Warning|| |ZYXEL IES1248-51: High the DSL line attenuation in Port {#SNMPINDEX}|

The reductions in amplitude of the downstream and upstream DSL signals.

|`min(/ZYXEL IES1248-51 by SNMP/zyxel.ies1248.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)