RX packets experienced errors-juniper-junos

RX packets experienced errors-juniper-junos
0

RX packets experienced errors-juniper-junos

Vendor: juniper

OS: junos

Description:
Indeni tracks the number of packets that had issues and alerts if the ratio is too high.

Remediation Steps:
Packet errors usually occur when there is a mismatch in the speed and duplex settings on two sides of a cable, or a damaged cable.
|1. Run the “show interface extensive” command to review the interface error counters.

|2. Check for a mismatch in the speed and duplex interface settings on the both sides.
|3. Check the physical cable. It might be damaged or incorrect type is used.
|4. Review the following article on Juniper tech support site: Operational Commands
|5. If the problem persists, contact the Juniper Networks Technical Assistance Center (JTAC)""",

How does this work?
This script logs into the Juniper JUNOS-based device using SSH and retrieves the output of the “show interfaces extensive” command. The output includes all the interface related information and statistics.

Why is this important?
Capture the interface Received Packets counter. Knowing the amount of bytes and packets flowing through an interface can help estimate an interface’s performance and utilization.

Without Indeni how would you find this?
There are many solutions out there for tracking traffic flow on network interfaces and alerting when critical indicators are reached.

junos-show-interfaces-extensive

name: junos-show-interfaces-extensive
description: JUNOS get interface information (including stats)
type: monitoring
monitoring_interval: 1 minute
requires:
  vendor: juniper
  os.name: junos
comments:
  network-interface-state:
    why: |
      Capture the interface state. If an interface transitions from up to down an alert would be raised.
    how: |
      This script logs into the Juniper JUNOS-based device using SSH and retrieves the output of the "show interfaces extensive" command.
      The output includes all the interface related information and statistics.
    can-with-snmp: true
    can-with-syslog: true
  network-interface-admin-state:
    why: |
      Capture the interface administrative state.
    how: |
      This script logs into the Juniper JUNOS-based device using SSH and retrieves the output of the "show interfaces extensive" command.
      The output includes all the interface related information and statistics.
    can-with-snmp: true
    can-with-syslog: true
  network-interface-description:
    why: |
      Capture the interface description.
    how: |
      This script logs into the Juniper JUNOS-based device using SSH and retrieves the output of the "show interfaces extensive" command.
      The output includes all the interface related information and statistics.
    can-with-snmp: true
    can-with-syslog: true
  network-interface-speed:
    why: |
      Capture the interface speed in human readable format such as 1G, 10G, etc. indeni will alert if the speed is below 1G.
    how: |
      This script logs into the Juniper JUNOS-based device using SSH and retrieves the output of the "show interfaces extensive" command.
      The output includes all the interface related information and statistics.
    can-with-snmp: true
    can-with-syslog: false
  network-interface-duplex:
    why: |
      Capture the interface duplex in human readable format such as full or half. In modern network environments it is very uncommon to see half-duplex interfaces, and that should be an indication for a potential exception.
    how: |
      This script logs into the Juniper JUNOS-based device using SSH and retrieves the output of the "show interfaces extensive" command.
      The output includes all the interface related information and statistics.
    can-with-snmp: true
    can-with-syslog: true
  network-interface-rx-frame:
    why: |
      Capture the interface Receive Errors (CRC) counter. If this counter increases an alarm will be raised.
    how: |
      This script logs into the Juniper JUNOS-based device using SSH and retrieves the output of the "show interfaces extensive" command.
      The output includes all the interface related information and statistics.
    can-with-snmp: true
    can-with-syslog: false
  network-interface-mac:
    why: |
      Capture the interface MAC address.
    how: |
      This script logs into the Juniper JUNOS-based device using SSH and retrieves the output of the "show interfaces extensive" command.
      The output includes all the interface related information and statistics.
    can-with-snmp: true
    can-with-syslog: false
  network-interface-type:
    why: |
      Capture the interface type, for example "Ethernet".
    how: |
      This script logs into the Juniper JUNOS-based device using SSH and retrieves the output of the "show interfaces extensive" command.
      The output includes all the interface related information and statistics.
    can-with-snmp: true
    can-with-syslog: false
  network-interface-rx-bits:
    why: |
      Capture the interface Received bits counter. Knowing the amount of bits and packets flowing through an interface can help estimate an interface's performance and utilization.
    how: |
      This script logs into the Juniper JUNOS-based device using SSH and retrieves the output of the "show interfaces extensive" command.
      The output includes all the interface related information and statistics.
    can-with-snmp: true
    can-with-syslog: false
  network-interface-rx-dropped:
    why: |
      Capture the interface Received Errors counter. Packet loss may impact traffic performance.
    how: |
      This script logs into the Juniper JUNOS-based device using SSH and retrieves the output of the "show interfaces extensive" command.
      The output includes all the interface related information and statistics.
    can-with-snmp: true
    can-with-syslog: false
  network-interface-rx-packets:
    why: |
      Capture the interface Received Packets counter. Knowing the amount of bits and packets flowing through an interface can help estimate an interface's performance and utilization.
    how: |
      This script logs into the Juniper JUNOS-based device using SSH and retrieves the output of the "show interfaces extensive" command.
      The output includes all the interface related information and statistics.
    can-with-snmp: true
    can-with-syslog: false
  network-interface-ipv4-address:
    why: |
      Capture the interface IPv4 address. Only relevant for layer 3 interfaces, including Vlan interfaces (SVI).
    how: |
      This script logs into the Juniper JUNOS-based device using SSH and retrieves the output of the "show interfaces extensive" command.
      The output includes all the interface related information and statistics.
    can-with-snmp: true
    can-with-syslog: false
  network-interface-ipv4-subnet:
    why: |
      Capture the interface IPv4 subnet mask. Only relevant for layer 3 interfaces, including Vlan interfaces (SVI).
    how: |
      This script logs into the Juniper JUNOS-based device using SSH and retrieves the output of the "show interfaces extensive" command.
      The output includes all the interface related information and statistics.
    can-with-snmp: true
    can-with-syslog: false
  network-interface-tx-carrier:
    why: |
      Capture the interface carrier state change counter. It would increase every time the interface changes state from up to down.
    how: |
      This script logs into the Juniper JUNOS-based device using SSH and retrieves the output of the "show interfaces extensive" command.
      The output includes all the interface related information and statistics.
    can-with-snmp: true
    can-with-syslog: false
  network-interface-mtu:
    why: |
      Capture the interface MTU (Maximum Transmit Unit). A low MTU may cause issues.
    how: |
      This script logs into the Juniper JUNOS-based device using SSH and retrieves the output of the "show interfaces extensive" command.
      The output includes all the interface related information and statistics.
    can-with-snmp: true
    can-with-syslog: false
  network-interface-tx-bits:
    why: |
      Capture the interface Transmitted bits counter. Knowing the amount of bits and packets flowing through an interface can help estimate an interface's performance and utilization.
    how: |
      This script logs into the Juniper JUNOS-based device using SSH and retrieves the output of the "show interfaces extensive" command.
      The output includes all the interface related information and statistics.
    can-with-snmp: true
    can-with-syslog: false
  network-interface-tx-errors:
    why: |
      Capture the interface Transmit Errors counter. Transmission errors indicate an issue with duplex/speed matching.
    how: |
      This script logs into the Juniper JUNOS-based device using SSH and retrieves the output of the "show interfaces extensive" command.
      The output includes all the interface related information and statistics.
    can-with-snmp: true
    can-with-syslog: false
  network-interface-tx-packets:
    why: |
      Capture the interface Transmitted Packets counter. Knowing the amount of bits and packets flowing through an interface can help estimate an interface's performance and utilization.
    how: |
      This script logs into the Juniper JUNOS-based device using SSH and retrieves the output of the "show interfaces extensive" command.
      The output includes all the interface related information and statistics.
    can-with-snmp: true
    can-with-syslog: false
steps:
  -   run:
        type: SSH
        command: show interfaces extensive | display xml
      parse:
        type: XML
        file: show-interfaces-extensive.parser.1.xml.yaml

cross_vendor_rx_error

// Deprecation warning : Scala template-based rules are deprecated. Please use YAML format rules instead.

package com.indeni.server.rules.library.templatebased.crossvendor

import com.indeni.server.rules.RuleContext
import com.indeni.server.rules.library.templates.NearingCapacityWithItemsTemplateRule
import com.indeni.server.rules.RemediationStepCondition

/**
  *
  */
case class CrossVendorRxError() extends NearingCapacityWithItemsTemplateRule(
  ruleName = "cross_vendor_rx_error",
  ruleFriendlyName = "All Devices: RX packets experienced errors",
  ruleDescription = "Indeni tracks the number of packets that had issues and alerts if the ratio is too high.",
  usageMetricName = "network-interface-rx-errors",
  limitMetricName = "network-interface-rx-packets",
  applicableMetricTag = "name",
  threshold = 0.5,
  minimumValueToAlert = 100.0, // We don't want to alert if the number of error packets is really low
  alertDescription = "Some network interfaces and ports are experiencing a high error rate. Review the ports below.",
  alertItemDescriptionFormat = "%.0f error packets identified out of a total of %.0f received.",
  baseRemediationText = "Packet errors usually occur when there is a mismatch in the speed and duplex settings on two sides of a cable, or a damaged cable.",
  alertItemsHeader = "Affected Ports")(
  RemediationStepCondition.VENDOR_CISCO ->
    """|
       |1. Run the "show interface" command to review the interface error counters and the bitrate. Consider to configure the "load-interval 30" interface sub command to improve the accuracy of the interface measurements.
       |2. Check for a mismatch in the speed and duplex interface settings on two sides of a cable, or for a damaged cable.
       |3. Use the "show interface counters errors" NX-OS command to display detailed interface error counters. If you do not specify an interface, this command displays information about all Layer 2 interfaces.""".stripMargin,
  RemediationStepCondition.VENDOR_JUNIPER ->
    """|1. Run the "show interface extensive" command to review the interface error counters.

       |2. Check for a mismatch in the speed and duplex interface settings on the both sides.
       |3. Check the physical cable. It might be damaged or incorrect type is used.
       |4. Review the following article on Juniper tech support site: <a target="_blank" href="https://www.juniper.net/documentation/en_US/junos/topics/reference/command-summary/show-interfaces-security.html#jd0e1772">Operational Commands</a>
       |5. If the problem persists, contact the Juniper Networks Technical Assistance Center (JTAC)""",
  RemediationStepCondition.VENDOR_FORTINET ->
    """
       |1. Run "diag hardware deviceinfo nic <interface>" command to display a list of hardware related error names and values. Review  the next link for more details: http://help.fortinet.com/fos50hlp/54/Content/FortiOS/fortigate-toubleshooting-54/troubleshooting_tools.htm
       |2. Run command "fnsysctl cat /proc/net/dev" to get a summary of the interface statistics.
       |3. Check for speed and duplex mismatch in the interface settings on both sides of a cable, and check for a damaged cable. Review the next link for more info: http://kb.fortinet.com/kb/documentLink.do?externalID=10653""".stripMargin
)