Provided by: openbgpd_8.3-1build2_amd64 bug

NAME

       bgplgd — a bgpctl FastCGI server

SYNOPSIS

       bgplgd [-d] [-p path] [-S socket] [-s socket] [-U user]

DESCRIPTION

       bgplgd  is  a  server  which  implements the FastCGI Protocol to execute bgpctl(8) commands.  bgplgd is a
       simple server that implements a simple web API to query bgpd(8).

       bgplgd opens a socket at /run/bgplgd.sock, owned by www-data, with permissions 0660.  It will  then  drop
       privileges to user "_bgplgd", unveil(2) the bgpctl(8) binary and restrict itself with pledge(2).

       The options are as follows:

       -d      Do  not  daemonize.   If  this  option is specified, bgplgd will run in the foreground and log to
               stderr.

       -p path
               Use path instead of bgpctl(8) to query bgpd(8).

       -S socket
               Use socket instead of the default /run/openbgpd/bgpd.rsock to communicate with bgpd(8).

       -s socket
               Create and bind to alternative local socket at socket.

       -U user
               Change the owner of /run/bgplgd.sock to user and its primary group instead of  the  default  www-
               data.

       bgplgd  provides  the  following  API  endpoints.  Unless further specified the endpoints do not take any
       parameters:

       /interfaces
               Show the interface states.

       /memory
               Show RIB memory statistics.

       /metrics
               Output various statistics in OpenMetrics format.

       /neighbors
               Show detailed neighbors information.  The output can be limited with the following parameters:

               neighbor=peer  Show information for a specific neighbor.  peer may be the neighbor's  address  or
                              description.
               group=name     Show only entries from the specified peer group.

       /nexthops
               Show the list of BGP nexthops and the result of their validity check.

       /rib    Show  routes  from the bgpd(8) Routing Information Base.  The following parameters can be used to
               filter the output:

               neighbor=peer  Show information for a specific neighbor.  peer may be the neighbor's  address  or
                              description.
               group=name     Show only entries from the specified peer group.
               as=number      Show only entries with the specified source AS number.
               community=string
               ext-community=string
               large-community=string
                              Show only entries that match the specified community.
               af=(ipv4 | ipv6 | vpnv4 | vpnv6)
                              Show only entries that match the specified address family.
               rib=name       Show only entries from the RIB with name name.
               ovs=(valid | not-found | invalid)
                              Show only prefixes that match the specified Origin Validation State.
               avs=(valid | invalid | unknown)
                              Show only prefixes that match the specified ASPA Validation State.
               best=1         Show only selected routes.
               error=1        Show only prefixes which are marked invalid and were treated as withdrawn.
               invalid=1      Show only prefixes which are not eligible.
               leaked=1       Show only prefixes where a route leak was detected.
               prefix=addr    Show  only entries that match prefix either as the best matching route or show the
                              entry for this CIDR prefix.
               all=1          Show all entries in the specified prefix range.
               or-shorter=1   Show all entries covering and including the specified prefix.

       /rtr    Show a list of all RTR sessions.

       /sets   Show a list summarizing all roa-set, as-set, prefix-set, and origin-set tables.

       /summary
               Show a list of all neighbors, including information about the session state and message counters.

EXAMPLES

       An example setup in httpd(8) is:

                     location "/bgplgd/*" {
                             fastcgi socket "/run/bgplgd.sock"
                             request strip 1
                     }

SEE ALSO

       bgpctl(8), bgpd(8), httpd(8)

HISTORY

       The bgplgd server first appeared in OpenBSD 7.2.

AUTHORS

       Claudio Jeker <claudio@openbsd.org>

Debian                                           March 13, 2023                                        BGPLGD(8)