]> git.proxmox.com Git - mirror_frr.git/blame - doc/frr-args.8.in
OSPFD: Update Segment Routing following reviews
[mirror_frr.git] / doc / frr-args.8.in
CommitLineData
5309b14e
DL
1.TH frr-args 8 "28 August 2017" "@PACKAGE_FULLNAME@ general options" "Version @PACKAGE_VERSION@"
2.SH NAME
3frr-args \- common command line options for all @PACKAGE_FULLNAME@ daemons.
4.SH SYNOPSIS
5<\fBzebra\fR|\fBbgpd\fR|\fB...\fR>
6[\fB\-h\fR] [\fB\-v\fR]
7
8<\fBzebra\fR|\fBbgpd\fR|\fB...\fR>
9[\fB\-d\fR|\fB\-t\fR|\fB\-dt\fR]
10[\fB\-C\fR]
11[\fB\-f\fR \fIconfig-file\fR]
12[\fB\-i\fR \fIpid-file\fR]
13[\fB\-z\fR \fIzclient-path\fR]
14[\fB\-u\fR \fIuser\fR]
15[\fB\-g\fR \fIgroup\fR]
16[\fB\-A\fR \fIvty-addr\fR]
17[\fB\-P\fR \fIvty-port\fR]
18[\fB\-M\fR \fImodule\fR[\fB:\fIoptions\fR]]
19[\fB\-N\fR \fIpathspace\fR]
20[\fB\-\-vty_socket\fR \fIvty-path\fR]
21[\fB\-\-moduledir\fR \fImodule-path\fR]
22
23.SH DESCRIPTION
24@PACKAGE_NAME@ daemons share a large part of their command line options;
25this man page documents these. For options on specific daemons please refer
26to their respective man pages. Most of the common options are related to
27process control, configuration and common library functionality.
28
29.SH HELP AND VERSION
30.TP
31\fB\-h\fR, \fB\-\-help\fR
32Print a short description of the daemon's command line options.
33.TP
34\fB\-v\fR, \fB\-\-version\fR
35Print version and build information for the daemon.
36.PP
37Both of these options inhibit normal operation and will immediately exit.
38
39.SH PROCESS CONTROL
40These options control background operation:
41.TP
42\fB\-d\fR, \fB\-\-daemon\fR
43Launches the process in background/daemon mode, forking and detaching from
44the terminal.
45
46The parent process will delay its exit until the daemon/child has finished
47its initialization and has entered its main loop. This is important for
48\fBzebra\fR startup because the other daemons will attempt to connect to
49\fBzebra\fR. A return from \fBzebra -d\fR guarantees its readiness to
50accept these connections.
51.TP
52\fB\-t\fR, \fB\-\-terminal\fR
53Opens an interactive VTY session on the terminal, allowing for both state
54and configuration operations. Note that the terminal starts operating after
55startup has completed and the configuration file has been loaded.
56
57The process will exit when end of file is detected on the terminal. It is
58possible to daemonize a process started with \fB-t\fR (but without \fB-d\fR)
59by sending \fISIGQUIT\fR to the process (normally mapped to a \fI^\\\fR
60keypress.)
61.TP
62\fB\-dt\fR, \fB\-\-daemon \-\-terminal\fR
63This combination of the previous two options will delay the daemon from
64going into background until the terminal session ends (by end of file.)
65
66If the process receives \fISIGINT\fR (e.g. a \fI^C\fR keypress) in this
67mode, it will exit instead of daemonizing.
68.PP
69It is safe to suspend (\fISIGTSTP\fR / \fI^Z\fR) the terminal session
70opened by the previous two options; this will only stop the terminal but
71not the protocol daemon itself (which runs in a separate second process.)
72
73.SH CONFIGURATION AND PATHS
74The following options control configuration and file system locations for
75@PACKAGE_NAME@ processes:
76.TP
77\fB\-f\fR, \fB\-\-config_file\fR \fIconfig-file\fR
78Specify a configuration file to be used instead of the default
79\fB\fI@CFG_SYSCONF@/<daemon>.conf\fR file.
80
81Note that the daemon will attempt to write to this file if the
82\fIwrite file\fR command is issued on its VTY interface or through
83\fBvtysh\fR.
84.TP
85\fB\-C\fR, \fB\-\-dryrun\fR
86Load the configuration file and check its validity, then exit.
87.TP
88\fB\-i\fR, \fB\-\-pid_file\fR \fIpid-file\fR
89Output a pid file to a location other than the default
90\fB\fI@CFG_STATE@/<daemon>.pid\fR.
91.TP
92\fB\-z\fR, \fB\-\-socket\fR \fIzclient-path\fR
93Override the path of the ZAPI socket used to communicate between \fBzebra\fR
94and the various protocol daemons. The default is
95\fB\fI@CFG_STATE@/zserv.api\fR. The value of this option must be the same
96across all daemons.
97.TP
98\fB\-N\fR, \fB\-\-pathspace\fR \fIpathspace\fR
99Insert \fIpathspace\fR into all default paths, changing the defaults to:
100.IP
101\fB@CFG_SYSCONF@/\fIpathspace\fB/<daemon>.conf\fR
102.br
103\fB@CFG_STATE@/\fIpathspace\fB/<daemon>.pid\fR
104.br
105\fB@CFG_STATE@/\fIpathspace\fB/<daemon>.vty\fR
106.br
107\fB@CFG_STATE@/\fIpathspace\fB/zserv.api\fR
108
109\'.\' and \'/\' characters will not be accepted in \fIpathspace\fR, but the
110empty string will be accepted.
111
112Note that this only changes the respective defaults, it has no effect on
113the respective path if the \fB\-f\fR, \fB\-i\fR, \fB\-z\fR or
114\fB\-\-vty_socket\fR options are used.
115
116The purpose of this option is to easily group all file system related
117bits together for running multiple fully-separate "logical routers" on a
118system, particularly with Linux network namespaces. Groups of daemons
119running with distinct \fIpathspace\fR values will be completely unaware
120of each other and not interact in any way.
121
122This option does not do any system setup (like network namespaces.) This
123must be done by the user, for example by running:
124.IP
125\fBip netns exec \fInamespace \fB<daemon> -N \fInamespace\fR
126
127.SH PROCESS CREDENTIALS
128.TP
129\fB\-u\fR, \fB\-\-user\fR \fIuser\fR
130(default: \fB@enable_user@\fR)
131.TP
132\fB\-g\fR, \fB\-\-group\fR \fIgroup\fR
133(default: \fB@enable_group@\fR)
134.IP
135Change the user/group which the daemon will switch to.
136.PP
137Note that there is an additional group, \fB@enable_vty_group@\fR, which
138controls group ownership of the VTY sockets. The name of this group cannot
139currently be changed, and \fIuser\fR must be a member of this group.
140
141.SH VTY SETUP
142These following options control the daemon's VTY (interactive command line)
143interface. The interface is available over TCP, using the telnet protocol,
144as well as through the \fBvtysh\fR frontend.
145.TP
146\fB\-A\fR, \fB--vty_addr\fR \fIvty-addr\fR
147Specify an IP/IPv6 address to bind the TCP VTY interface to. It is
148generally recommended to specify \fI::1\fR or \fI127.0.0.1\fR. For reasons
149of backwards compatibility, the default is to listen on all interfaces.
150.TP
151\fB\-P\fR, \fB--vty_port\fR \fIvty-port\fR
152Override the daemon's default TCP VTY port (each daemon has a different
153default value upwards of 2600, listed below.) Specifying \fI0\fR disables
154the TCP VTY interface.
155
156Default ports are:
157
158.ta 16m
159zebra 2601
160.br
161ripd 2602
162.br
163ripngd 2603
164.br
165ospfd 2604
166.br
167bgpd 2605
168.br
169ospf6d 2606
170.br
171isisd 2608
172.br
173babeld 2609
174.br
175nhrpd 2610
176.br
177pimd 2611
178.br
179ldpd 2612
180.br
181eigrpd 2613
182
183Port 2607 is used for ospfd's Opaque LSA API, while port 2600 is used for
184the (insecure) TCP-ZEBRA interface.
185.TP
186\fB\-\-vty_socket\fR \fIvty-path\fR
187Overrides the directory used for the \fB<daemon>.vty\fR sockets.
188\fBvtysh\fR connects to these sockets in order to access each daemon's
189VTY.
190.br
191Default: \fB\fI@CFG_STATE@\fR[\fB/\fI<pathspace>\fR]
192
193NB: Unlike the other options, this option specifies a \fBdirectory\fR,
194not a full path.
195
196This option is primarily used by the SNAP packaging system, its semantics
197may change. It should not be neccessary in most other scenarios.
198
199.SH MODULE LOADING
200@PACKAGE_NAME@ supports optional dynamically loadable modules, although
201these can only be loaded at startup. The set of available modules may vary
202across distributions and packages, and modules may be available for
203installation as separate packages.
204.TP
205\fB\-M\fR, \fB\-\-module\fR \fImodule\fR[\fB:\fIoptions\fR]
206Load a module named \fImodule\fR, optionally passing \fIoptions\fR to it.
207
208If there is a \'/\' character in \fImodule\fR, the value is assumed to be
209a pathname to a module.
210
211If there is no \'/\' character, the module directory (see next option)
212is searched first for a module named "\fI<daemon>\fB_\fI<module>\fB.so\fR",
213then for "\fI<module>\fB.so\fR".
214This allows for a module to exist in variations appropriate for particular
215daemons, e.g. \fIzebra_snmp\fR and \fIbgp_snmp\fR, with the correct one
216selected by \fI\-M snmp\fR.
217
218The meaning of \fIoptions\fR is specific to the module being loaded. Most
219modules currently ignore it.
220
221Modules are loaded in the order as listed on the command line. This is
222not generally relevant.
223.TP
224\fB\-\-moduledir\fR \fImodule-path\fR
225Look for modules in the \fImodule-path\fR directory instead of the default
226\fI@CFG_MODULE@\fR. (This path is \fBnot\fR affected by the \fB\-N\fR
227option.)
228.PP
229The list of loaded modules can be inspected at runtime with the
230\fBshow modules\fR VTY command.
231
232
233.SH "SEE ALSO"
234.BR zebra (8),
235.BR vtysh (1),
236.BR ripd (8),
237.BR ripngd (8),
238.BR ospfd (8),
239.BR ospf6d (8),
240.BR bgpd (8),
241.BR isisd (8),
242.BR babeld (8),
243.BR nhrpd (8),
244.BR pimd (8),
245.BR ldpd (8),
246.BR eigrpd (8)
247
248\fIhttps://frrouting.org/