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 [options] [command]

PARAMETERS

-r
    Connects to the BIRD daemon in read-only mode, preventing any configuration changes or state modifications.

-s <socket>
    Specifies the path to the BIRD control socket. By default, birdc attempts to connect to standard socket locations (e.g., /run/bird/bird.ctl).

-v
    Displays the version information of the birdc client and the connected BIRD daemon, then exits.

DESCRIPTION

birdc is the command-line client for the BIRD Internet Routing Daemon. It provides an interface to interact with a running BIRD instance, allowing network administrators to manage and observe the daemon's operations.

Through birdc, users can perform a variety of tasks such as displaying current routing tables, inspecting the state of various routing protocols (e.g., BGP, OSPF, RIP), loading new configurations, reloading the daemon, enabling or disabling specific protocols, and troubleshooting routing issues. It supports both interactive mode, where users can enter multiple commands, and non-interactive mode, where a single command can be executed directly from the shell.

The client connects to the BIRD daemon via a control socket, typically located at /run/bird/bird.ctl (for IPv4/IPv6) or /run/bird/bird6.ctl (for IPv6 only), enabling secure and privileged communication for management tasks.

CAVEATS

birdc requires the BIRD Internet Routing Daemon to be running for it to function correctly. Access to the control socket usually requires appropriate file system permissions, often restricting usage to privileged users (e.g., root or members of a specific group). Ensure the specified socket path is correct and accessible.

INTERACTIVE VS. NON-INTERACTIVE MODE

When invoked without a specific command argument, birdc enters an interactive shell-like mode, indicated by a prompt. In this mode, users can execute multiple commands sequentially. If a command argument is provided on the command line, birdc executes that single command and then exits (non-interactive mode).

COMMON INTERNAL COMMANDS

Once connected to the BIRD daemon, birdc can execute numerous commands:
show status: Displays the general status of the BIRD daemon.
show protocols: Lists all configured routing protocols and their current states.
show routes [protocol]: Shows routes in the routing table, optionally filtered by protocol.
configure: Reloads the configuration from the default configuration file.
reload: Reloads the configuration from the default configuration file. (Similar to configure).
enable <protocol>: Activates a specified routing protocol.
disable <protocol>: Deactivates a specified routing protocol.
quit or exit: Exits the birdc client.
help: Provides a list of available commands and their brief descriptions.

HISTORY

The BIRD Internet Routing Daemon project, including its client birdc, was initiated at Charles University, Prague, in 1998. It was designed to be a flexible and powerful routing daemon for Unix-like operating systems. birdc has been an integral part of the BIRD ecosystem from its early stages, serving as the primary administrative interface for controlling and monitoring the daemon's complex routing operations.

SEE ALSO

bird(8), bird-config(5)

Copied to clipboard