Scroll to navigation



vtysh - an integrated shell for FRRouting.


vtysh [ -b ]

vtysh [ -E ] [ -d daemon ] [ -c command ]


vtysh is an integrated shell for the FRRouting suite of protocol daemons.


OPTIONS available for the vtysh command:

Execute boot startup configuration. It makes sense only if integrated config file is in use (not default in FRRouting). See Info file frr for more info.

Specify command to be executed under batch mode. It behaves like -c option in any other shell - command is executed and vtysh exits.

It's useful for gathering info from FRRouting daemons or reconfiguring daemons from inside shell scripts, etc. Note that multiple commands may be executed by using more than one -c option and/or embedding linefeed characters inside the command string.

Specify which daemon to connect to. By default, vtysh attempts to connect to all FRRouting daemons running on the system. With this flag, one can specify a single daemon to connect to instead. For example, specifying '-d ospfd' will connect only to ospfd. This can be particularly useful inside scripts with -c where the command is targeted for a single daemon.

Alias for -c. It's here only for compatibility with Zebra routing software and older FRR versions. This will be removed in future.

When the -c option is being used, this flag will cause the standard vtysh prompt and command to be echoed prior to displaying the results. This is particularly useful to separate the results when executing multiple commands.

When the -C option is being used, this flag will check the config for syntatic validity.

Mark the input file with context ends, useful for cleanup of a config file that has a lot of extraneous space and end markers

When executing cli that does not invoke a vtysh shell, if an error ocurrs ignore it for purposes of return codes from vtysh.

Override the history file for vtysh commands. You can set vtysh -H /dev/null to turn logging of at all.

Restrict access to configuration commands by preventing use of the "enable" command. This option provides the same limited "security" as password-protected telnet access. This security should not be relied on in production environments.

Caveat emptor: VTYSH was never designed to be a privilege broker and is not built using secure coding practices. No guarantees of security are provided for this option and under no circumstances should this option be used to provide any semblance of secure read-only access to FRR.

Display a usage message on standard output and exit.


This should be the name of the pager to use. Default is more.
Override the history file for vtysh commands. Logging can be turned off using VTYSH_HISTFILE=/dev/null vtysh. Environment is prefered way to override the history file path over command line argument (-H/--histfile).


The default location of the vtysh binary.
The default location of the vtysh config file.
The default location of the integrated FRRouting routing engine config file if integrated config file is in use.
Location of history of commands entered via cli
If the vtysh process is configured to output logs to a file, then you will find this file in the directory where you started vtysh.


This man page is intended to be a quick reference for command line options. The definitive document is the info file frr 8.1 or the documentation available on the project website at


The daemon may log to standard output, to a VTY, to a log file, or through syslog to the system logs. FRR supports many debugging options, see the Info file, web docs or source for details.


frr-zebra(8), vtysh(1), frr-ripd(8), frr-ripngd(8), frr-ospfd(8), frr-ospf6d(8), frr-bgpd(8), frr-isisd(8), frr-babeld(8), frr-nhrpd(8), frr-pimd(8), frr-pbrd(8), frr-ldpd(8), frr-eigrpd(8), frr-staticd(8), frr-fabricd(8), frr-vrrpd(8), mtracebis(8)


FRR eats bugs for breakfast. If you have food for the maintainers, please email <>.


2021, FRR

November 13, 2021 8.1