babeld.man 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704
  1. .TH BABELD 8
  2. .SH NAME
  3. babeld \- ad-hoc network routing daemon
  4. .SH SYNOPSIS
  5. .B babeld
  6. .IR option ...
  7. [
  8. .B \-\-
  9. ]
  10. .IR interface ...
  11. .SH DESCRIPTION
  12. Babel is a loop-avoiding distance-vector routing protocol roughly
  13. based on DSDV and AODV, but with provisions for link cost estimation
  14. and redistribution of routes from other routing protocols.
  15. While it is optimised for wireless mesh networks, Babel will also work
  16. efficiently on wired networks.
  17. .SH OPTIONS
  18. .TP
  19. .BI \-V
  20. Display babeld's version and quit.
  21. .TP
  22. .BI \-m " multicast-address"
  23. Specify the link-local multicast address to be used by the protocol.
  24. The default is
  25. .BR ff02:0:0:0:0:0:1:6 .
  26. .TP
  27. .BI \-p " port"
  28. Specify the UDP port number to be used by the protocol. The default is
  29. .BR 6696 .
  30. .TP
  31. .BI \-S " state-file"
  32. Set the name of the file used for preserving long-term information
  33. between invocations of the
  34. .B babeld
  35. daemon. If this file is deleted, the daemon will run in passive mode
  36. for 3 minutes when it is next started (see
  37. .B -P
  38. below), and other hosts might initially ignore it. The default is
  39. .BR /var/lib/babel-state .
  40. .TP
  41. .BI \-h " hello-interval"
  42. Specify the interval in seconds at which scheduled hello packets are
  43. sent on wireless interfaces. The default is 4 seconds.
  44. .TP
  45. .BI \-H " wired-hello-interval"
  46. Specify the interval in seconds at which scheduled hello packets are
  47. sent on wired interfaces. The default is 4 seconds.
  48. .TP
  49. .BI \-z " kind" " \fR[\fB," factor "\fR]"
  50. Enable diversity-sensitive routing. The value
  51. .B kind
  52. defines the diversity algorithm used, and can be one of
  53. .B 0
  54. (no diversity),
  55. .B 1
  56. (per-interface diversity with no memory),
  57. .B 2
  58. (per-channel diversity with no memory),
  59. or
  60. .B 3
  61. (per-channel diversity with memory).
  62. The value
  63. .B factor
  64. specifies by how much the cost of non-interfering routes is multiplied,
  65. in units of 1/256; the default is 128 (i.e. division by 2).
  66. .TP
  67. .BI \-M " half-time"
  68. Specify the half-time in seconds of the exponential decay used for
  69. smoothing metrics for performing route selection; the value 0 disables
  70. smoothing. The default is 4s.
  71. .TP
  72. .BI \-k " priority"
  73. Specify the priority value used when installing routes into the kernel.
  74. The default is 0.
  75. .TP
  76. .BI \-A " priority"
  77. Allow duplicating external routes when their kernel priority is at least
  78. .IR priority .
  79. Do not use this option unless you know what you are doing, as it can cause
  80. persistent route flapping.
  81. .TP
  82. .B \-l
  83. Use IFF_RUNNING (carrier sense) when determining interface availability.
  84. .TP
  85. .B \-w
  86. Don't optimise wired links, assume all interfaces are wireless unless
  87. explicitly overridden in the configuration file.
  88. .TP
  89. .B \-s
  90. Do not perform split-horizon processing on wired interfaces.
  91. Split-horizon is not performed on wireless interfaces.
  92. .TP
  93. .B \-r
  94. Use a random router-id. The default is to use persistent router-ids
  95. derived from the MAC address of the first interface, which is easier
  96. to debug and more reliably prevents routing loops but may sometimes
  97. cause a node to be unreachable for 120 seconds just after boot.
  98. .TP
  99. .B \-u
  100. Do not flush unfeasible (useless) routes. This is useful in order to
  101. announce more information to a front-end (see
  102. .BR \-g ).
  103. .TP
  104. .BI \-d " level"
  105. Debug level. A value of 1 requests a routing table dump at every
  106. iteration through the daemon's main loop. A value of 2 additionally
  107. requests tracing every message sent or received. A value of
  108. 3 additionally dumps all interactions with the OS kernel. The default
  109. is 0.
  110. .TP
  111. .BI \-g " port\fR,\fP" " \-g" " path"
  112. Set up a local configuration server on port
  113. .I port
  114. or at
  115. .I path
  116. in read-only mode. The protocol is described in the section
  117. .B Local Configuration Protocol
  118. below.
  119. .TP
  120. .BI \-G " port\fR,\fP" " \-G" " path"
  121. Set up a local configuration server on port
  122. .I port
  123. or at
  124. .I path
  125. in read-write mode. This allows any local user to change
  126. .BR babeld 's
  127. configuration, and may therefore be a security issue.
  128. .TP
  129. .BI \-t " table"
  130. Use the given kernel routing table for routes inserted by
  131. .BR babeld .
  132. .TP
  133. .BI \-T " table"
  134. Export routes from the given kernel routing table. This can be
  135. specified multiple times in order to export routes from more than one
  136. table.
  137. .TP
  138. .BI \-c " filename"
  139. Specify the name of the configuration file. This flag can be repeated
  140. multiple times. The default is
  141. .BR /etc/babeld.conf .
  142. .TP
  143. .BI \-C " statement"
  144. Specify a configuration statement directly on the command line.
  145. .TP
  146. .B \-D
  147. Daemonise at startup.
  148. .TP
  149. .BI \-L " logfile"
  150. Specify a file to log random ``how do you do?'' messages to. This
  151. defaults to standard error if not daemonising, and to
  152. .B /var/log/babeld.log
  153. otherwise.
  154. .TP
  155. .BI \-I " pidfile"
  156. Specify a file to write our process id to, use no pidfile if set to the
  157. empty string. The default is
  158. .BR /var/run/babeld.pid .
  159. .TP
  160. .IR interface ...
  161. The list of interfaces on which the protocol should operate.
  162. .SH CONFIGURATION FILE FORMAT
  163. The configuration file is a sequence of lines each of which specifies
  164. a global option, an interface specification or a filtering
  165. rule. Comments are introduced by an octothorp
  166. .RB `` # ''
  167. and terminate at the end of the line.
  168. .SS Global options
  169. .TP
  170. .BI protocol-group " group"
  171. This specifies the link-local multicast address to be used by the
  172. protocol, and is equivalent to the command-line option
  173. .BR \-m .
  174. .TP
  175. .BI protocol-port " port"
  176. This specifies the UDP port number to be used by the protocol, and is equivalent to the command-line option
  177. .BR \-p .
  178. .TP
  179. .BI kernel-priority " priority"
  180. This specifies the priority value used when installing routes into the
  181. kernel, and is equivalent to the command-line option
  182. .BR \-k .
  183. .TP
  184. .BR reflect-kernel-metric " {" true | false }
  185. Reflect route metrics as kernel priorities. The priority effectively used
  186. is
  187. .B kernel-priority
  188. +
  189. .BR metric .
  190. .TP
  191. .BI allow-duplicates " priority"
  192. This allows duplicating external routes when their kernel priority is
  193. at least
  194. .IR priority .
  195. Do not use this option unless you know what you are doing, as it can
  196. cause persistent route flapping.
  197. .TP
  198. .BR keep-unfeasible " {" true | false }
  199. This specifies whether to keep unfeasible (useless) routes, and is
  200. equivalent to the command-line option
  201. .BR \-u .
  202. .TP
  203. .BR random-id " {" true | false }
  204. This specifies whether to use a random router-id, and is
  205. equivalent to the command-line option
  206. .BR \-r .
  207. .TP
  208. .BR ipv6-subtrees " {" true | false }
  209. This specifies whether to use native source-specific IPv6 forwarding
  210. rather than multiple routing tables. The default is chosen automatically
  211. depending on the kernel version.
  212. .TP
  213. .BI debug " level"
  214. This specifies the debugging level, and is equivalent to the command-line
  215. option
  216. .BR \-d .
  217. .TP
  218. .BI local-port " port"
  219. This specifies the TCP port on which
  220. .B babeld
  221. will listen for connections from a configuration client in read-only mode,
  222. and is equivalent to the command-line option
  223. .BR \-g .
  224. .TP
  225. .BI local-port-readwrite " port"
  226. This specifies the TCP port on which
  227. .B babeld
  228. will listen for connections from a configuration client in read-write mode,
  229. and is equivalent to the command-line option
  230. .BR \-G .
  231. This allows any local user to change
  232. .BR babeld 's
  233. configuration, and may therefore be a security issue.
  234. .TP
  235. .BI local-path " path"
  236. This specifies the filesystem path to a socket on which
  237. .B babeld
  238. will listen for connections from a configuration client in read-only mode,
  239. and is equivalent to the command-line option
  240. .BR \-g .
  241. .TP
  242. .BI local-path-readwrite " path"
  243. This specifies the filesystem path to a socket on which
  244. .B babeld
  245. will listen for connections from a configuration client in read-write mode,
  246. and is equivalent to the command-line option
  247. .BR \-G .
  248. Any user with write access to that socket will be able to change
  249. .BR babeld 's
  250. configuration.
  251. .TP
  252. .BI export-table " table"
  253. This specifies the kernel routing table to use for routes inserted by
  254. .BR babeld ,
  255. and is equivalent to the command-line option
  256. .BR \-t .
  257. .TP
  258. .BI import-table " table"
  259. This specifies a kernel routing table from which routes are
  260. redistributed by
  261. .BR babeld ,
  262. and can be specified multiple times with a cumulative effect. This is
  263. equivalent to the command-line option
  264. .BR \-T .
  265. .TP
  266. .BR link-detect " {" true | false }
  267. This specifies whether to use carrier sense for determining interface
  268. availability, and is equivalent to the command-line option
  269. .BR \-l .
  270. .TP
  271. .BR diversity " {" true | false | "\fIkind\fB" }
  272. This specifies the diversity algorithm to use;
  273. .B true
  274. is equivalent to
  275. .I kind
  276. 3. The default is
  277. .B false
  278. (do not use any diversity algorithm).
  279. .TP
  280. .BI diversity-factor " factor"
  281. This specifies by how much the cost of non-interfering routes should
  282. be multiplied, in units of 1/256. The default is 128 (division by 2).
  283. .TP
  284. .BI smoothing-half-life " seconds"
  285. This specifies the half-life in seconds of the exponential decay used
  286. for smoothing metrics for performing route selection, and is
  287. equivalent to the command-line option
  288. .BR \-M .
  289. .TP
  290. .BR daemonise " {" true | false }
  291. This specifies whether to daemonize at startup, and is equivalent to
  292. the command-line option
  293. .BR \-D .
  294. .TP
  295. .BR skip-kernel-setup " {" true | false }
  296. If this flag is set, no kernel (sysctl) setup is performed on startup. This can
  297. be useful when running in environments where system permissions prevent setting
  298. kernel parameters, for instance inside a Linux container.
  299. .TP
  300. .BI router-id " id"
  301. Specify the router-id explicitly, as a modified EUI-64 or a MAC-48
  302. address. If two nodes have the same router-id, bad things will happen.
  303. Don't use this option unless you know what you are doing.
  304. .TP
  305. .BI state-file " filename"
  306. This specifies the name of the file used for preserving long-term
  307. information between invocations of the
  308. .B babeld
  309. daemon, and is equivalent to the command-line option
  310. .BR \-S .
  311. .TP
  312. .BI log-file " filename"
  313. This specifies the name of the file used to log random messages to,
  314. and is equivalent to the command-line option
  315. .BR \-L .
  316. .TP
  317. .BI pid-file " filename"
  318. This specifies the name of the file to which
  319. .B babeld
  320. writes out its process id, and is equivalent to the command-line option
  321. .BR \-I .
  322. .TP
  323. .BI first-table-number " table"
  324. This specifies the index of the first routing table to use for
  325. source-specific routes. The default is 10.
  326. .TP
  327. .BI first-rule-priority " priority"
  328. This specifies smallest (highest) rule priority used with source-specific
  329. routes. The default is 100.
  330. .SS Interface configuration
  331. An interface is configured by a line with the following format:
  332. .IP
  333. .B interface
  334. .I name
  335. .RI [ parameter ...]
  336. .PP
  337. where
  338. .I name
  339. is the name of the interface (something like
  340. .BR eth0 ).
  341. The default value of an interface parameter can be specified changed
  342. by a line of the form
  343. .IP
  344. .B default
  345. .RI [ parameter ...]
  346. .PP
  347. Each
  348. .I parameter
  349. can be one of:
  350. .TP
  351. .BR type " {" auto | wired | wireless | tunnel }
  352. The default is
  353. .B auto
  354. unless the
  355. .B \-w
  356. command-line flag was specified.
  357. .TP
  358. .BR link\-quality " {" true | false | auto }
  359. This specifies whether link quality estimation should be performed on this
  360. interface. The default is to perform link quality estimation on wireless
  361. interfaces only.
  362. .TP
  363. .BR split\-horizon " {" true | false | auto }
  364. This specifies whether to perform split-horizon processing on this
  365. interface. The default is to perform split-horizon processing on
  366. on wired interfaces, unless the
  367. .B \-s
  368. flag was set.
  369. .TP
  370. .BI rxcost " cost"
  371. This defines the cost of receiving frames on the given interface under
  372. ideal conditions (no packet loss); how this relates to the actual cost
  373. used for computing metrics of routes going through this interface depends
  374. on whether link quality estimation is being done. The default is 256 if
  375. the interface is wireless, and 96 otherwise.
  376. .TP
  377. .BI channel " channel"
  378. Sets the channel for this interface. The value
  379. .I channel
  380. can be either an integer, or one of the strings
  381. .B interfering
  382. or
  383. .BR noninterfering .
  384. The default is to autodetect the channel number for wireless interfaces,
  385. and
  386. .B noninterfering
  387. for other interfaces.
  388. .TP
  389. .BR faraway " {" true | false }
  390. This specifies whether the network is "far away", in the sense that
  391. networks behind it don't interfere with networks in front of it. By
  392. default, networks are not far away.
  393. .TP
  394. .BI hello\-interval " interval"
  395. This defines the interval between hello packets sent on this interface.
  396. The default is specified with the
  397. .B \-h
  398. and
  399. .B \-H
  400. command-line flags.
  401. .TP
  402. .BI update\-interval " interval"
  403. This defines the interval between full routing table dumps sent on this
  404. interface; since Babel uses triggered updates and doesn't count to
  405. infinity, this can be set to a fairly large value, unless significant
  406. packet loss is expected. The default is four times the hello interval.
  407. .TP
  408. .BR enable\-timestamps " {" true | false }
  409. Enable sending timestamps with each Hello and IHU message in order to
  410. compute RTT values. The default is
  411. .B true
  412. for tunnel interfaces, and
  413. .B false
  414. otherwise.
  415. .TP
  416. .BI rtt\-decay " decay"
  417. This specifies the decay factor for the exponential moving average of
  418. RTT samples, in units of 1/256. Must be between 1 and 256, inclusive.
  419. Higher values discard old samples faster. The default is
  420. .BR 42 .
  421. .TP
  422. .BI rtt\-min " rtt"
  423. This specifies the minimum RTT, in milliseconds, starting from which
  424. we increase the cost to a neighbour. The additional cost is linear in
  425. (rtt -
  426. .BR rtt\-min ).
  427. The default is
  428. .B 10
  429. ms.
  430. .TP
  431. .BI rtt\-max " rtt"
  432. This specifies the maximum RTT, in milliseconds, above which we don't
  433. increase the cost to a neighbour. The default is
  434. .B 120
  435. ms.
  436. .TP
  437. .BI max\-rtt\-penalty " cost"
  438. This specifies the maximum cost added to a neighbour because of RTT,
  439. i.e. when the RTT is higher or equal than
  440. .BR rtt\-max .
  441. The default is
  442. .BR 96
  443. if the interface is of type
  444. .B tunnel,
  445. and
  446. .BR 0
  447. otherwise.
  448. .SS Filtering rules
  449. A filtering rule is defined by a single line with the following format:
  450. .IP
  451. .I filter
  452. .IR selector ...
  453. .I action
  454. .PP
  455. .I Filter
  456. specifies the filter to which this entry will be added, and can be one of
  457. .B in
  458. (applied to routes learned from Babel neighbours),
  459. .B out
  460. (applied to routes announced to Babel neighbours),
  461. .B redistribute
  462. (applied to routes redistributed from the kernel), or
  463. .B install
  464. (applied to routes installed into the kernel).
  465. Each
  466. .I selector
  467. specifies the conditions under which the given statement matches. It
  468. can be one of
  469. .TP
  470. .BI ip " prefix"
  471. This entry only applies to routes in the given prefix.
  472. .TP
  473. .BI eq " plen"
  474. This entry only applies to routes with a prefix length equal to
  475. .BR plen .
  476. .TP
  477. .BI le " plen"
  478. This entry only applies to routes with a prefix length less or equal to
  479. .BR plen .
  480. .TP
  481. .BI ge " plen"
  482. This entry only applies to routes with a prefix length greater or equal to
  483. .BR plen .
  484. .TP
  485. .BI src-ip " prefix"
  486. This entry only applies to routes with a source prefix in the given prefix.
  487. .TP
  488. .BI src-eq " plen"
  489. This entry only applies to routes with a source prefix length equal to
  490. .BR plen .
  491. .TP
  492. .BI src-le " plen"
  493. This entry only applies to routes with a source prefix length less or
  494. equal to
  495. .BR plen .
  496. .TP
  497. .BI src-ge " plen"
  498. This entry only applies to routes with a source prefix length greater
  499. or equal to
  500. .BR plen .
  501. .TP
  502. .BI neigh " address"
  503. This entry only applies to routes learned from a neighbour with
  504. link-local address
  505. .IR address .
  506. .TP
  507. .BI id " id"
  508. This entry only applies to routes originated by a router with router-id
  509. .IR id .
  510. .TP
  511. .BI proto " p"
  512. This entry only applies to kernel routes with kernel protocol number
  513. .IR p .
  514. If neither
  515. .B proto
  516. nor
  517. .B local
  518. is specified, this entry applies to all non-local kernel routes with
  519. a protocol different from "boot".
  520. .TP
  521. .B local
  522. This entry only applies to local addresses.
  523. .TP
  524. .BI if " interface"
  525. For an input filter, this specifies the interface over which the route
  526. is learned. For an output filter, this specifies the interface over
  527. which this route is advertised. For a redistribute statement, this
  528. specifies the interface over which the route forwards packets.
  529. .PP
  530. .I Action
  531. specifies the action to be taken when this entry matches. It can have
  532. one of the following values:
  533. .TP
  534. .B allow
  535. Allow this route, without changing its metric (or setting its metric
  536. to 0 in case of a redistribute filter).
  537. .TP
  538. .B deny
  539. Ignore this route.
  540. .TP
  541. .BI metric " value"
  542. For an input or output filter, allow this route after increasing its metric by
  543. .IR value .
  544. For a redistribute filter, redistribute this route with metric
  545. .IR value .
  546. .TP
  547. .BI src-prefix " prefix"
  548. For a redistribute filter, set the source prefix of this route to
  549. .IR prefix .
  550. .TP
  551. .BI table " table"
  552. In an
  553. .B install
  554. filter, specify the kernel routing table to use. For source-specific
  555. routes, this only works reliably for IPv6, and only when
  556. .B ipv6-subtrees
  557. is true.
  558. .PP
  559. If
  560. .I action
  561. is not specified, it defaults to
  562. .BR allow .
  563. By default,
  564. .B babeld
  565. redistributes all local addresses, and no other routes. In order to
  566. make sure that only the routes you specify are redistributed, you
  567. should include the line
  568. .IP
  569. redistribute local deny
  570. .PP
  571. as the last line in your configuration file.
  572. .SH LOCAL CONFIGURATION INTERFACE
  573. If
  574. .B babeld
  575. is invoked with the flag
  576. .BR \-g ,
  577. it accepts TCP connections from local clients on the given port and address
  578. .B ::1
  579. (the IPv6
  580. .B localhost
  581. address), or on the given UNIX-domain socket path if the argument starts with
  582. \[oq]/\[cq]. When a client connects,
  583. .B babeld
  584. replies with
  585. .B BABEL
  586. followed with the supported version of the local configuration protocol (currently
  587. .BR 1.0 ).
  588. This is followed with a number of informational lines
  589. .RB ( version
  590. etc.), terminated by
  591. .BR ok .
  592. The client can then send requests, one per line. To each request,
  593. .B babeld
  594. replies with one or more lines of data terminated by one of
  595. .BR ok ,
  596. .BR no ,
  597. or
  598. .BR bad .
  599. The following requests are currently defined:
  600. .IP \(bu 2
  601. any configuration file directive, including
  602. .BR interface ;
  603. .IP \(bu
  604. .BR "flush interface" ;
  605. .IP \(bu
  606. .BR dump ;
  607. .IP \(bu
  608. .B monitor
  609. and
  610. .BR unmonitor ;
  611. .IP \(bu
  612. .BR quit .
  613. .SH EXAMPLES
  614. You can participate in a Babel network by simply running
  615. .IP
  616. # babeld wlan0
  617. .PP
  618. where
  619. .B wlan0
  620. is the name of your wireless interface.
  621. In order to gateway between multiple interfaces, just list them all on
  622. the command line:
  623. .IP
  624. # babeld wlan0 eth0 sit1
  625. .PP
  626. On an access point, you'll probably want to redistribute some external
  627. routes into Babel:
  628. .IP
  629. # babeld \\
  630. \-C 'redistribute metric 256' \\
  631. wlan0
  632. .PP
  633. or, if you want to constrain the routes that you redistribute,
  634. .IP
  635. # babeld \\
  636. \-C 'redistribute proto 11 ip ::/0 le 64 metric 256' \\
  637. \-C 'redistribute proto 11 ip 0.0.0.0/0 le 24 metric 256' \\
  638. wlan0
  639. .SS Source-specific routing
  640. .PP
  641. If your want to redistribute kernel routes as source-specific to the network,
  642. with the 2001:DB8:0:1::/64 prefix:
  643. .IP
  644. redistribute src-prefix 2001:DB8:0:1::/64
  645. .PP
  646. For more information about source-specific routing, please see
  647. .IP
  648. Matthieu Boutier and Juliusz Chroboczek. Source-sensitive routing. In
  649. Proc. IFIP Networking 2015. 2015.
  650. .PP
  651. available online at
  652. .IP
  653. http://arxiv.org/pdf/1403.0445v4.pdf
  654. .SH FILES
  655. .TP
  656. .B /etc/babeld.conf
  657. The default location of the configuration file.
  658. .TP
  659. .B /var/lib/babel\-state
  660. The default location of the file storing long-term state.
  661. .TP
  662. .B /var/run/babeld.pid
  663. The default location of the pid file.
  664. .TP
  665. .B /var/log/babeld.log
  666. The default location of the log file.
  667. .SH SIGNALS
  668. .TP
  669. .B SIGUSR1
  670. Dump Babel's routing tables to standard output or to the log file.
  671. .TP
  672. .B SIGUSR2
  673. Check interfaces and kernel routes right now, then reopen the log file.
  674. .SH SECURITY
  675. Babel is a completely insecure protocol: any attacker able to inject
  676. IP packets with a link-local source address can disrupt the protocol's
  677. operation. This is no different from unsecured neighbour discovery or ARP.
  678. Usage of the
  679. .B \-G
  680. flag allows any user logged on the local host to change
  681. .BR babeld 's
  682. configuration.
  683. Since Babel uses link-local IPv6 packets only, there is no need to update
  684. firewalls to allow forwarding of Babel protocol packets. If local
  685. filtering is being done, UDP datagrams to the port used by the protocol
  686. should be allowed. As Babel uses unicast packets in some cases, it is not
  687. enough to just allow packets destined to Babel's multicast address.
  688. .SH SEE ALSO
  689. .BR routed (8),
  690. .BR route6d (8),
  691. .BR zebra (8),
  692. .BR ahcpd (8).
  693. .SH AUTHOR
  694. Juliusz Chroboczek.