Solution ZEBRA: netlink-listen recvmsg overrun: No buffer space available

Once on the server with Quagga after adding several thousand network interfaces, I noticed a message in the logs /var/log/zebra.log:

ZEBRA: netlink-listen recvmsg overrun: No buffer space available

Continue reading “Solution ZEBRA: netlink-listen recvmsg overrun: No buffer space available”

BGP. Channel Balancing on Quagga

I will give an example of balancing only incoming traffic with two channels using Quagga.

On the test, I will use Ubuntu 16.04.4 LTS and Quagga 0.99.24.1, the network interface ens1f0 for the second provider with one neighbors and ens2f0 for the first provider with two neighbors, the local network will be connected to ens2f1. Both providers announce “default”.
3.3.3.0/23 this will be my network with white IP addresses.
Continue reading “BGP. Channel Balancing on Quagga”

Monitoring BGP in Zabbix

I’ll give an example of a simple check whether something is running on TCP port 179 which uses BGP.

Create the following data item with the name Zabbix in the new Zabbix template or right in the network node “Template App BGP Service” (where 192.168.10.2 is the address of the host on which the performance of the BGP is checked):

Name: BGP service is running
Type: Zabbix agent
Key: net.tcp.service[tcp,192.168.10.2,179]
Type of information: Numeric (positive integer)
Data type: Decimal
Displaying the value: Service state

If Zabbix-agent is installed on the node, then we will create two data elements and in the field “Key:” we will indicate:

proc.num[bgpd]
proc.num[zebra]

If the data element reports 0, then BGP does not work, or the port is closed, if 1 is OK.

Accordingly, we will add a trigger that will notify about the idle BGP:

Name: BGP does not work on {HOST.NAME}
Expression: {Template App BGP Service:net.tcp.service[tcp,192.168.10.2,179].max(#3)}=0

Все.