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