How to Access and Use Quagga Shell using Avi CLI

Background

Quagga is a network routing software suite providing implementations of various routing protocols. Avi Vantage uses Quagga for BGP based scaling of virtual services. For more information on BGP scaling on Avi Vantage, refer BGP Support for Scaling Virtual Services.

To know more about Quagga, refer Quagga Software article.

Instructions

Quagga shell is used to check BGP configuration and status of BGP peer.

Note In this example, all the commands are executed from the default namespace on an Avi SE hosting a virtual service enabled for BGP. To list the namespaces available, use the command ip netns. To switch to the desired datapath namespace, use the following command.


admin@AVI-SE1:ip netns exec namespace name bash

Changes in Avi Vantage 17.2.8

For Avi Vantage release 17.2.8 and later versions, use the netcat localhost bgpd command instead of the telnet localhost bgpd command to get access to the Quagga shell.


admin@AVI-SE1: netcat localhost bgpd
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.

Hello, this is Quagga (version 0.99.24.1).

Note: Password is avi123

If the authentication is successful, the following output is observed.


Quagga-bgp>

Configuration and Troubleshooting Commands

Use the command show run to check running configuration


Quagga-bgp> en
Quagga-bgp# show run

Current configuration:
!
password avi123
log file /var/lib/avi/log/bgp/0_bgpd.log
!
router bgp 65000
bgp router-id 1.2.87.205
network 10.140.99.153/32
neighbor 10.140.60.155 remote-as 3
neighbor 10.140.60.155 password avi123
neighbor 10.140.60.155 advertisement-interval 5
neighbor 10.140.60.155 timers 60 180
neighbor 10.140.60.155 timers connect 10
neighbor 10.140.60.155 distribute-list 2 out
neighbor 10.140.99.157 remote-as 2
neighbor 10.140.99.157 password avi123
neighbor 10.140.99.157 advertisement-interval 5
neighbor 10.140.99.157 timers 60 180
neighbor 10.140.99.157 timers connect 10
neighbor 10.140.99.157 distribute-list 1 out
!
access-list 1 permit 10.140.99.153
!
line vty
!
end

Use the command show bgp neighbors to check bgp peering status.


10-140-4-220# *show bgp neighbors*
BGP neighbor is 10.140.60.155, remote AS 3, local AS 65000, external link
  BGP version 4, remote router ID 0.0.0.0
 BGP state = Active*
  Last read 03w5d06h, hold time is 180, keepalive interval is 60 seconds
  Configured hold time is 180, keepalive interval is 60 seconds
  Message statistics:
    Inq depth is 0
    Outq depth is 0
                         Sent       Rcvd
    Opens:                  0          0
    Notifications:          0          0
    Updates:                0          0
    Keepalives:             0          0
    Route Refresh:          0          0
    Capability:             0          0
    Total:                  0          0
  Minimum time between advertisement runs is 5 seconds

 For address family: IPv4 Unicast
  Community attribute sent to this neighbor(both)
  Outbound path policy configured
  Outgoing update network filter list is 2
  0 accepted prefixes

  Connections established 0; dropped 0
  Last reset never
Next connect timer due in 3 seconds
Read thread: off  Write thread: off

BGP neighbor is 10.140.99.157, remote AS 2, local AS 65000, external link
  BGP version 4, remote router ID 10.140.6.28
 BGP state = Established, up for 03w6d03h*
  Last read 00:00:48, hold time is 180, keepalive interval is 60 seconds
  Configured hold time is 180, keepalive interval is 60 seconds
  Neighbor capabilities:
    4 Byte AS: advertised and received
    Route refresh: advertised and received(old & new)
    Address family IPv4 Unicast: advertised and received
    Graceful Restart Capabilty: advertised and received
      Remote Restart timer is 120 seconds
      Address families by peer:
        none
  Graceful restart informations:
    End-of-RIB send: IPv4 Unicast
    End-of-RIB received: IPv4 Unicast
  Message statistics:
    Inq depth is 0
    Outq depth is 0
                         Sent       Rcvd
    Opens:                  6          3
    Notifications:          3          0
    Updates:                4          1
    Keepalives:         39103      39102
    Route Refresh:          0          0
    Capability:             0          0
    Total:              39116      39106
  Minimum time between advertisement runs is 5 seconds

 For address family: IPv4 Unicast
  Community attribute sent to this neighbor(both)
  Outbound path policy configured
  Outgoing update network filter list is *1
  0 accepted prefixes

  Connections established 1; dropped 0
  Last reset never
Local host: 10.140.99.156, Local port: 179
Foreign host: 10.140.99.157, Foreign port: 54566
Nexthop: 10.140.99.156
Nexthop global: ::
Nexthop local: ::
BGP connection: non shared network
Read thread: on  Write thread: off

Additional Information

How to Access and Use Quagga Shell using Avi CLI