LinuxCommandLibrary

birdc

Control and monitor BIRD routing daemon

TLDR

Open the remote control console

$ birdc
copy

Reload the configuration without restarting BIRD
$ birdc configure
copy

Show the current status of BIRD
$ birdc show status
copy

Show all configured protocols
$ birdc show protocols
copy

Show all details about a protocol
$ birdc show protocols [upstream1] all
copy

Show all routes that contain a specific AS number
$ birdc "show route where bgp_path ~ [[4242120045]]"
copy

Show all best routes
$ birdc show route primary
copy

Show all details of all routes from a given prefix
$ birdc show route for [fd00:/8] all
copy

SYNOPSIS

birdc [-s <socket>] [-d] [-R] [-r] [-P <proto>] [-p <prefix>] [command [arg ...]]

PARAMETERS

-s <socket>
    Path to BIRD control socket (default: /var/run/bird.ctl)

-d
    Enable debug output

-R
    Raw mode: dump raw protocol messages

-r
    Non-interactive mode (execute command and exit)

-P <proto>
    Limit commands to specified protocol instance

-p <prefix>
    Apply commands to routes matching given prefix

-t <table>
    Use specified routing table

-v
    Show version information

DESCRIPTION

birdc is the command-line interface client for the BIRD Internet Routing Daemon, a routing software suite for Unix-like systems. It allows users to interact with a running BIRD instance via a Unix-domain control socket, enabling monitoring and management of routing protocols, tables, and routes.

Primarily used by network administrators to inspect the state of BGP, OSPF, RIP, and other protocols supported by BIRD. Common tasks include displaying protocol status, routes, symbols, and interfaces, as well as injecting or withdrawing routes dynamically. birdc supports interactive mode for sequential commands or non-interactive execution of single commands.

In interactive mode (default without -r), it provides a shell-like prompt ('bird>') for entering commands like show protocols, show route, or show protocols all. Output is formatted for readability, with options for raw protocol dumps. birdc authenticates via a password configured in BIRD's config file under the 'control' section.

It does not modify the configuration file but sends runtime commands to the daemon, making it essential for troubleshooting and operational control in production routing environments. Supports filtering by protocol instances or prefixes for targeted queries.

COMMON COMMANDS

show protocols: List protocol status.
show route [for <proto>]: Display routing table.
show symbols: Show imported/exported routes.

AUTHENTICATION

Requires 'control "socket" { password "secret"; }' in bird.conf for access.

HISTORY

Developed as part of the BIRD project started in 1998 by Martin Mares at Czech Technical University. birdc introduced early for runtime control; evolved with BIRD v1 (2000s) and v2 (2018+), adding JSON output, filters, and multi-table support.

SEE ALSO

bird(8)

Copied to clipboard