1FRR-PBRD(8) FRR FRR-PBRD(8)
2
3
4
6 frr-pbrd - a PBR routing engine for use with FRRouting.
7
9 pbrd [-h] [-v]
10
11 pbrd [-d|-t|-dt] [-C] [-f config-file] [-i pid-file] [-z zclient-path]
12 [-u user] [-g group] [-A vty-addr] [-P vty-port] [-M module[:options]]
13 [-N pathspace] [--vty_socket vty-path] [--moduledir module-path]
14
16 pbrd is a routing component that works with the FRRouting engine.
17
19 OPTIONS available for the pbrd command:
20
21 HELP AND VERSION
22 -h, --help
23 Print a short description of the daemon's command line options.
24
25 -v, --version
26 Print version and build information for the daemon.
27
28 Both of these options inhibit normal operation and will immediately
29 exit.
30
31 PROCESS CONTROL
32 These options control background operation:
33
34 -d, --daemon
35 Launches the process in background/daemon mode, forking and
36 detaching from the terminal.
37
38 The parent process will delay its exit until the daemon/child
39 has finished its initialization and has entered its main loop.
40 This is important for zebra startup because the other daemons
41 will attempt to connect to zebra. A return from zebra -d guaran‐
42 tees its readiness to accept these connections.
43
44 -t, --terminal
45 Opens an interactive VTY session on the terminal, allowing for
46 both state and configuration operations. Note that the terminal
47 starts operating after startup has completed and the configura‐
48 tion file has been loaded.
49
50 The process will exit when end of file is detected on the termi‐
51 nal. It is possible to daemonize a process started with -t (but
52 without -d) by sending SIGQUIT to the process (normally mapped
53 to a ^keypress.)
54
55 The combination of --daemon and --terminal will delay the daemon from
56 going into background until the terminal session ends (by end of file.)
57
58 If the process receives SIGINT (e.g. a ^C keypress) in this mode, it
59 will exit instead of daemonizing.
60
61 It is safe to suspend (SIGTSTP / ^Z) the terminal session opened by the
62 previous two options; this will only stop the terminal but not the
63 protocol daemon itself (which runs in a separate second process.)
64
65 CONFIGURATION AND PATHS
66 The following options control configuration and file system locations
67 for frr processes:
68
69 -f, --config_file config-file
70 Specify a configuration file to be used instead of the default
71 /etc/frr/<daemon>.conf file.
72
73 Note that the daemon will attempt to write to this file if the
74 write file command is issued on its VTY interface or through
75 vtysh.
76
77 -C, --dryrun
78 Load the configuration file and check its validity, then exit.
79
80 -i, --pid_file pid-file
81 Output a pid file to a location other than the default
82 /var/run/frr/<daemon>.pid.
83
84 -z, --socket zclient-path
85 Override the path of the ZAPI socket used to communicate between
86 zebra and the various protocol daemons. The default is
87 /var/run/frr/zserv.api. The value of this option must be the
88 same across all daemons.
89
90 -N, --pathspace pathspace
91 Insert pathspace into all default paths, changing the defaults
92 to:
93
94 /etc/frr/pathspace/<daemon>.conf /var/run/frr/pathspace/<dae‐
95 mon>.pid /var/run/frr/pathspace/<daemon>.vty
96 /var/run/frr/pathspace/zserv.api
97
98 ´.´ and ´/´ characters will not be accepted in pathspace, but
99 the empty string will be accepted.
100
101 Note that this only changes the respective defaults, it has no
102 effect on the respective path if the -f, -i, -z or --vty_socket
103 options are used.
104
105 The purpose of this option is to easily group all file system
106 related bits together for running multiple fully-separate "logi‐
107 cal routers" on a system, particularly with Linux network name‐
108 spaces. Groups of daemons running with distinct pathspace val‐
109 ues will be completely unaware of each other and not interact in
110 any way.
111
112 This option does not do any system setup (like network name‐
113 spaces.) This must be done by the user, for example by running:
114
115 ip netns exec namespace <daemon> -N namespace
116
117 PROCESS CREDENTIALS
118 -u, --user user
119 (default: frr)
120
121 -g, --group group
122 (default: frr)
123
124 Change the user/group which the daemon will switch to.
125
126 -S, --skip_runas
127 Skip setting the process effective user and group.
128
129 Note that there is an additional group, frrvty, which controls group
130 ownership of the VTY sockets. The name of this group cannot currently
131 be changed, and user must be a member of this group.
132
133 VTY SETUP
134 These following options control the daemon's VTY (interactive command
135 line) interface. The interface is available over TCP, using the telnet
136 protocol, as well as through the vtysh frontend.
137
138 -A, --vty_addr vty-addr
139 Specify an IP/IPv6 address to bind the TCP VTY interface to. It
140 is generally recommended to specify ::1 or 127.0.0.1. For rea‐
141 sons of backwards compatibility, the default is to listen on all
142 interfaces.
143
144 -P, --vty_port vty-port
145 Override the daemon's default TCP VTY port (each daemon has a
146 different default value upwards of 2600, listed below.) Speci‐
147 fying 0 disables the TCP VTY interface.
148
149 Default ports are::
150
151 zebra 2601
152 ripd 2602
153 ripngd 2603
154 ospfd 2604
155 bgpd 2605
156 ospf6d 2606
157 isisd 2608
158 babeld 2609
159 nhrpd 2610
160 pimd 2611
161 ldpd 2612
162 eigrpd 2613
163 pbrd 2615
164 staticd 2616
165 bfdd 2617
166 fabricd 2618
167 vrrpd 2619
168
169 Port 2607 is used for ospfd's Opaque LSA API.
170
171 --vty_socket vty-path
172 Overrides the directory used for the <daemon>.vty sockets.
173 vtysh connects to these sockets in order to access each daemon's
174 VTY. Default: /var/run/frr[/<pathspace>]
175
176 NB: Unlike the other options, this option specifies a directory,
177 not a full path.
178
179 This option is primarily used by the SNAP packaging system, its
180 semantics may change. It should not be necessary in most other
181 scenarios.
182
183 MODULE LOADING
184 frr supports optional dynamically loadable modules, although these can
185 only be loaded at startup. The set of available modules may vary
186 across distributions and packages, and modules may be available for in‐
187 stallation as separate packages.
188
189 -M, --module module[:options]
190 Load a module named module, optionally passing options to it.
191
192 If there is a ´/´ character in module, the value is assumed to
193 be a pathname to a module.
194
195 If there is no ´/´ character, the module directory (see next op‐
196 tion) is searched first for a module named "<daemon>_<mod‐
197 ule>.so", then for "<module>.so". This allows for a module to
198 exist in variations appropriate for particular daemons, e.g. ze‐
199 bra_snmp and bgp_snmp, with the correct one selected by -M snmp.
200
201 The meaning of options is specific to the module being loaded.
202 Most modules currently ignore it.
203
204 Modules are loaded in the order as listed on the command line.
205 This is not generally relevant.
206
207 --moduledir module-path
208 Look for modules in the module-path directory instead of the de‐
209 fault /usr/lib/frr/modules. (This path is not affected by the
210 -N option.)
211
212 The list of loaded modules can be inspected at runtime with the show
213 modules VTY command.
214
216 /usr/lib/frr/pbrd
217 The default location of the pbrd binary.
218
219 /etc/frr/pbrd.conf
220 The default location of the pbrd config file.
221
222 $(PWD)/pbrd.log
223 If the pbrd process is configured to output logs to a file, then
224 you will find this file in the directory where you started pbrd.
225
227 This man page is intended to be a quick reference for command line op‐
228 tions. The definitive document is the info file frr 8.5.3 or the docu‐
229 mentation available on the project website at https://frrouting.org/.
230
232 The daemon may log to standard output, to a VTY, to a log file, or
233 through syslog to the system logs. FRR supports many debugging options,
234 see the Info file, web docs or source for details.
235
237 frr-zebra(8), vtysh(1), frr-ripd(8), frr-ripngd(8), frr-ospfd(8),
238 frr-ospf6d(8), frr-bgpd(8), frr-isisd(8), frr-babeld(8), frr-nhrpd(8),
239 frr-pimd(8), frr-pbrd(8), frr-ldpd(8), frr-eigrpd(8), frr-staticd(8),
240 frr-fabricd(8), frr-vrrpd(8), mtracebis(8) https://frrouting.org/
241
243 FRR eats bugs for breakfast. If you have food for the maintainers,
244 please email <dev@lists.frrouting.org>.
245
247 2023, FRR
248
249
250
251
2528.5.3 Oct 10, 2023 FRR-PBRD(8)