2003-06-20 Paul Jakma <paul@dishone.st>

* *.texi: update the docs a bit. Add some info about
	  zebra.dishone.st in the overview. Add link-detect and update
	  static routes section in zebra. Add write-config in vtysh. Update
	  version handling and add passive-interface default for ripd.
This commit is contained in:
paul 2003-06-20 01:18:07 +00:00
parent 56e475cba9
commit 971a449786
8 changed files with 343 additions and 179 deletions

View File

@ -2,3 +2,4 @@ Makefile
Makefile.in
draft-zebra-00.txt
zebra.info-*
zebra.html

View File

@ -245,9 +245,19 @@ useful when using Zebra to implement a routing looking glass. One
machine can be used to collect differing routing views from differing
points in the network.
@item -A @var{address}
@itemx --vty_addr=@var{address}
Set the VTY local address to bind to. If set, the VTY socket will only
be bound to this address.
@item -P @var{port}
@itemx --vty_port=@var{port}
Set the VTY port number.
Set the VTY TCP port number. If set to 0 then the TCP VTY sockets will not
be opened.
@item -u @var{user}
@itemx --vty_addr=@var{user}
Set the user and group to run as.
@item -v
@itemx --version

View File

@ -72,6 +72,23 @@ file does not match to the current running kernel, configure script will
not turn on netlink support.
@item --enable-snmp
Enable SNMP support. By default, SNMP support is disabled.
@item --enable-nssa
Enable support for Not So Stubby Area (see RC3101) in ospfd.
@item --enable-opaque-lsa
Enable support for Opaque LSAs (RFC2370) in ospfd.
@item --disable-ospfapi
Disable support for OSPF-API, an API to interface directly with ospfd.
OSPF-API is enabled if --enable-opaque-lsa is set.
@item --disable-ospfclient
Disable building of the example OSPF-API client.
@item --enable-ospf-te
Enable support for OSPF Traffic Engineering Extension (internet-draft) this
requires support for Opaque LSAs.
@item --enable-multipath=@var{ARG}
Enable support for Equal Cost Multipath. @var{ARG} is the maximum number
of ECMP paths to allow, set to 0 to allow unlimited number of paths.
@item --enable-rtadv
Enable support IPV6 router advertisement in zebra.
@end table
You may specify any combination of the above options to the configure
@ -84,9 +101,47 @@ options to the configuration script.
@item --prefix=@var{prefix}
Install architecture-independent files in @var{prefix} [/usr/local].
@item --sysconfdir=@var{dir}
Read-only sample configuration file in @var{dir} [@var{prefix}/etc].
Look for configuration files in @var{dir} [@var{prefix}/etc]. Note
that sample configuration files will be installed here.
@item --localstatedir=@var{dir}
Configure zebra to use @var{dir} for local state files, such
as pid files and unix sockets.
@end table
Additionally, you may configure zebra to drop its elevated
privileges shortly after startup and switch
to another user, there are three configure options
to control zebra's behaviour.
@table @option
@item --enable-user=@var{user}
Switch to user @var{ARG} shortly after startup, and run as user @var{ARG}
in normal operation.
@item --enable-group=@var{group}
Switch real and effective group to @var{group} shortly after
startup.
@item --enable-vty-group=@var{group}
Create Unix Vty sockets (for use with vtysh) with group owndership set to
@var{group}. This allows one to create a seperate group which is
restricted to accessing only the Vty sockets, hence allowing one to
delegate this group to individual users, or to run vtysh setgid to
this group.
@end table
The default user and group which will be configured is 'zebra' if no user
or group is specified. Note that this user or group requires write access
to the local state directory (see --localstatedir) and requires at least
read access, and write access if you wish to allow daemons
to write out their configuration, to the configuration directory
(see --sysconfdir).
On systems which have the 'libcap' capabilities manipulation library
(currently only linux), the zebra system will retain
only minimal capabilities required, further it will only raise these
capabilities for brief periods. On systems without libcap, zebra will run
as the user specified and only raise its uid back to uid 0 for brief
periods.
@example
% ./configure --disable-ipv6
@end example

View File

@ -54,8 +54,17 @@ When program terminates, retain routes added by zebra.
Up or down the current interface.
@end deffn
@deffn {Interface Command} {ip address @var{address}} {}
Set ip address for the interface.
@deffn {Interface Command} {ip address @var{address/prefix}} {}
@deffnx {Interface Command} {ip6 address @var{address/prefix}} {}
@deffnx {Interface Command} {no ip address @var{address/prefix}} {}
@deffnx {Interface Command} {no ip6 address @var{address/prefix}} {}
Set the IPv4 or IPv6 address/prefix for the interface.
@end deffn
@deffn {Interface Command} {ip address @var{address/prefix} secondary} {}
@deffnx {Interface Command} {no ip address @var{address/prefix} secondary} {}
Set the secondary flag for this address. This causes ospfd to not treat the
address as a distinct subnet.
@end deffn
@deffn {Interface Command} {description @var{description} ...} {}
@ -69,8 +78,16 @@ Enable or disables multicast flag for the interface.
@deffn {Interface Command} {bandwidth <1-10000000>} {}
@deffnx {Interface Command} {no bandwidth <1-10000000>} {}
Set bandwidth value to the interface. This is for calculating OSPF
cost. This command does not affect the actual device configuration.
Set bandwidth value of the interface in kilobits/sec. This is for
calculating OSPF cost. This command does not affect the actual device
configuration.
@end deffn
@deffn {Interface Command} {link-detect} {}
@deffnx {Interface Command} {no link-detect} {}
Enable/disable link-detect on platforms which support this. Currently
only linux and with certain drivers - those which properly support the
IFF_RUNNING flag.
@end deffn
@node Static Route Commands, zebra Terminal Mode Commands, Interface Commands, Zebra
@ -84,15 +101,18 @@ defines static prefix and gateway.
@var{network} is destination prefix with format of A.B.C.D/M.
@var{gateway} is gateway for the prefix. When @var{gateway} is
A.B.C.D format. It is taken as a IPv4 address gateway. Otherwise it
is treated as an interface name.
is treated as an interface name. If the interface name is @var{null0} then
zebra installs a blackhole route.
@example
ip route 10.0.0.0/8 10.0.0.2
ip route 10.0.0.0/8 ppp0
ip route 10.0.0.0/8 null0
@end example
First example defines 10.0.0.0/8 static route with gateway 10.0.0.2.
Second one defines the same prefix but with gateway to interface ppp0.
Second one defines the same prefix but with gateway to interface ppp0. The
third install a blackhole route.
@end deffn
@deffn Command {ip route @var{network} @var{netmask} @var{gateway}} {}
@ -103,13 +123,14 @@ format. @var{gateway} is same option as above command
@example
ip route 10.0.0.0 255.255.255.0 10.0.0.2
ip route 10.0.0.0 255.255.255.0 ppp0
ip route 10.0.0.0 255.255.255.0 null0
@end example
This is a same setting using this statement.
These statements are equivalent to those in the previous example.
@end deffn
@deffn Command {ip route @var{network} @var{gateway} @var{distance}} {}
Installs the route with the specified distance.
@end deffn
Multiple nexthop static route
@ -123,6 +144,10 @@ ip route 10.0.0.1/32 eth0
If there is no route to 10.0.0.2 and 10.0.0.3, and interface eth0
is reachable, then the last route is installed into the kernel.
If zebra has been compiled with multipath support, and both 10.0.0.2 and
10.0.0.3 are reachable, zebra will install a multipath route via both
nexthops, if the platform supports this.
@example
zebra> show ip route
S> 10.0.0.1/32 [1/0] via 10.0.0.2 inactive
@ -130,14 +155,32 @@ S> 10.0.0.1/32 [1/0] via 10.0.0.2 inactive
* is directly connected, eth0
@end example
Floating static route
@example
ip route 10.0.0.0/8 10.0.0.2
ip route 10.0.0.0/8 10.0.0.3
ip route 10.0.0.0/8 null0 255
@end example
This will install a multihop route via the specified next-hops if they are
reachable, as well as a high-metric blackhole route, which can be useful to
prevent traffic destined for a prefix to match less-specific routes (eg
default) should the specified gateways not be reachable. Eg:
@example
zebra> show ip route 10.0.0.0/8
Routing entry for 10.0.0.0/8
Known via "static", distance 1, metric 0
10.0.0.2 inactive
10.0.0.3 inactive
Routing entry for 10.0.0.0/8
Known via "static", distance 255, metric 0
directly connected, Null0
@end example
@deffn Command {ipv6 route @var{network} @var{gateway}} {}
@end deffn
@deffn Command {ipv6 route @var{network} @var{gateway} @var{distance}} {}
@deffnx Command {ipv6 route @var{network} @var{gateway} @var{distance}} {}
These behave similarly to their ipv4 counterparts.
@end deffn

View File

@ -270,25 +270,26 @@ November 1995.}
@comment node-name, next, previous, up
@section How to get Zebra
Zebra is still beta software and there is no officially
released version. So currently Zebra is distributed from Zebra beta ftp
site located at:
@url{ftp://ftp.zebra.org/pub/zebra}
Once Zebra is released you can get it from @sc{gnu} FTP site and
its mirror sites. We are planning Zebra-1.0 as the first released
version.
Zebra is still beta software and there is no officially released
version. Once Zebra is released you can get it from @sc{gnu} FTP
site and its mirror sites. We are planning Zebra-1.0 as the first
released version.
Zebra's official web page is located at:
@url{http://www.gnu.org/software/zebra/zebra.html}.
There is a Zebra beta tester web page at:
The original Zebra web site is located at:
@url{http://www.zebra.org/}.
You can get the latest beta software information from this page.
As of this writing, development by zebra.org on Zebra has slowed down.
There is some work being done by third-parties to try maintain bug-fixes and
enhancements to the current Zebra code-base. Please see:
@url{http://zebra.dishone.st/}.
for further information, as well as links to additional zebra resources.
@node Mailing List, Bug Reports, How to get Zebra, Overview
@comment node-name, next, previous, up
@ -318,6 +319,26 @@ subscribe zebra
unsubscribe zebra
@end quotation
There is an additional mailing list, @email{znog@@dishone.st,ZNOG} for
discussion of zebra related issues and network operation. To subscribe
send an email to @email{znog-subscribe@@dishone.st} with a message body that
includes only:
@quotation
subscribe znog
@end quotation
To unsubscribe, send an email to @email{znog-unsubscribe@@dishone.st}
with a message body that includes only:
@quotation
unsubscribe znog
@end quotation
Alternatively, you may use the web interface located at
@url{http://www.dishone.st/mailman/listinfo/znog}. Links to archives of the
znog list are available at this URL.
@node Bug Reports, , Mailing List, Overview
@comment node-name, next, previous, up
@section Bug Reports

View File

@ -117,7 +117,7 @@ RIP, use the @code{no router rip} command. RIP must be enabled before
carrying out any of the RIP commands.
@end deffn
@deffn Command {no rouer rip} {}
@deffn Command {no router rip} {}
Disable RIP.
@end deffn
@ -126,7 +126,12 @@ the default mode is Version 2. If no version is specified, then the RIP
daemon will default to Version 2. If RIP is set to Version
1, the setting "Version 1" will be displayed, but the setting "Version
2" will not be displayed whether or not Version 2 is set explicitly as
the version of RIP being used.
the version of RIP being used. The version can be specified globally, and
also on a per-interface basis (see below).
@deffn {RIP Command} {version @var{version}} {}
Set RIP process's version. @var{version} can be `1'' or `2''.
@end deffn
@deffn {RIP Command} {network @var{network}} {}
@deffnx {RIP Command} {no network @var{network}} {}
@ -175,32 +180,35 @@ router rip
Passive interface
@deffn {RIP command} {passive-interface @var{IFNAME}} {}
@deffn {RIP command} {passive-interface (@var{IFNAME}|default)} {}
@deffnx {RIP command} {no passive-interface @var{IFNAME}} {}
This command sets the specified interface to passive mode. On passive mode
interface, all receiving packets are processed as normal and ripd does
not send either multicast or unicast RIP packets except to RIP neighbors
specified with @code{neighbor} command.
specified with @code{neighbor} command. The interface may be specified
as @var{default} to make ripd default to passive on all interfaces.
The default is to be passive on all interfaces.
@end deffn
RIP version handling
@deffn {RIP Command} {version @var{version}} {}
Set RIP process's version. @var{version} can be ``1'' or ``2''.
@end deffn
@deffn {Interface command} {ip rip send version @var{version}} {}
@var{version} can be `1', `2', `1 2'. This configuration command
overrides the router's rip version setting. The command will enable the
selected interface to send packets with RIP Version 1, RIP Version 2, or
both. In the case of '1 2', packets will be both broadcast and
multicast.
The default is to send only version 2.
@end deffn
@deffn {Interface command} {ip rip receive version @var{version}} {}
Version setting for incoming RIP packets. This command will enable the
selected interface to receive packets in RIP Version 1, RIP Version 2,
or both.
The default is to receive both versions.
@end deffn
RIP split-horizon

View File

@ -12,16 +12,42 @@ is the vtysh configuration file. Vtysh does not search current
directory for configuration file because the file includes user
authentication settings.
Currently, vtysh.conf has only one command.
Currently, vtysh.conf has only two commands.
@example
!
username foo nopassword
!
@end example
@deffn {Command} {username @var{username} nopassword} {}
With this set, user foo does not need password authentication for user vtysh.
With PAM vtysh uses PAM authentication mechanism.
If vtysh is compiled without PAM authentication, every user can use vtysh
without authentication.
without authentication. vtysh requires read/write permission
to the various daemons vty sockets, this can be accomplished through use
of unix groups and the --enable-vty-group configure option.
@end deffn
@deffn {Command} {write-conf daemon} {}
Instruct daemons to write out their config files when 'write file'
is issued.
@end deffn
@deffn {Command} {write-conf integrated} {}
Write out integrated Zebra.conf file when 'write file' is issued.
@end deffn
This command controls the behaviour of vtysh when it is told
to write out the configuration. If @command{write-conf integrated} is
set, the daemon will write out a Zebra.conf with all daemons' commands
integrated into it. If @command{write-conf daemon} is set, vtysh
will instruct each daemon to write out their config files.
Vtysh per default behaves as if @command{write-conf daemon} is set. Note
that both may be set at same time if one wishes to have both
Zebra.conf and daemon specific files written out. Further, note that the
daemons are hard-coded to first look for the integrated Zebra.conf
file before looking for their own file.
We recommend you do not mix the use of the two types of files.
Further, it is better not to use the integrated Zebra.conf file,
as any syntax error in it can lead to /all/ of your daemons being unable
to start up. Per daemon files are more robust as impact of errors in
configuration are limited to the daemon in whose file the error is made.

View File

@ -1,4 +1,4 @@
This is zebra.info, produced by makeinfo version 4.2 from zebra.texi.
This is zebra.info, produced by makeinfo version 4.3 from zebra.texi.
INFO-DIR-SECTION Routing Software:
START-INFO-DIR-ENTRY
@ -8,8 +8,8 @@ END-INFO-DIR-ENTRY
This file documents the GNU Zebra software which manages common
TCP/IP routing protocols.
This is Edition 0.1, last updated 12 September 2002 of `The GNU
Zebra Manual', for Zebra Version 0.93b.
This is Edition 0.1, last updated 26 January 2003 of `The GNU Zebra
Manual', for Zebra Version 0.94.
Copyright (C) 1999, 2000, 2001, 2002 Kunihiro Ishiguro
@ -29,142 +29,142 @@ translation approved by Kunihiro Ishiguro.

Indirect:
zebra.info-1: 1121
zebra.info-2: 48818
zebra.info-3: 95581
zebra.info-4: 143934
zebra.info-1: 1118
zebra.info-2: 48684
zebra.info-3: 97595
zebra.info-4: 140430

Tag Table:
(Indirect)
Node: Top1121
Node: Overview1646
Node: About Zebra3063
Node: System Architecture5332
Node: Supported Platforms8330
Node: Supported RFC9317
Node: How to get Zebra11119
Node: Mailing List11824
Node: Bug Reports12491
Node: Installation13336
Node: Configure the Software13767
Ref: Configure the Software-Footnote-116134
Node: Build the Software17776
Node: Install the Software18318
Node: Basic commands19689
Node: Config Commands20402
Node: Basic Config Commands21284
Node: Sample Config File23682
Node: Common Invocation Options24442
Node: Virtual Terminal Interfaces25564
Node: VTY Overview26069
Node: VTY Modes27353
Node: VTY View Mode27793
Node: VTY Enable Mode28047
Node: VTY Other Modes28311
Node: VTY CLI Commands28473
Node: CLI Movement Commands28923
Node: CLI Editing Commands29456
Node: CLI Advanced Commands30029
Node: Zebra30780
Node: Invoking zebra31287
Node: Interface Commands31873
Node: Static Route Commands32703
Node: zebra Terminal Mode Commands34790
Node: RIP35751
Node: Starting and Stopping ripd36686
Node: RIP netmask38107
Node: RIP Configuration39229
Node: How to Announce RIP route43124
Node: Filtering RIP Routes45653
Node: RIP Metric Manipulation47112
Node: RIP distance48015
Node: RIP route-map48818
Node: RIP Authentication51320
Node: RIP Timers52410
Node: Show RIP Information53685
Node: RIP Debug Commands55048
Node: RIPng56032
Node: Invoking ripngd56350
Node: ripngd Configuration56607
Node: ripngd Terminal Mode Commands57346
Node: ripngd Filtering Commands57696
Node: OSPFv258195
Node: Configuring ospfd58752
Node: OSPF router59229
Node: OSPF area60960
Node: OSPF interface63174
Node: Redistribute routes to OSPF65956
Node: Showing OSPF information68072
Node: Debugging OSPF69292
Node: OSPFv370303
Node: OSPF6 router70621
Node: OSPF6 area70978
Node: OSPF6 interface71150
Node: Redistribute routes to OSPF672002
Node: Showing OSPF6 information72306
Node: BGP73111
Node: Starting BGP73972
Node: BGP router74557
Node: BGP distance75793
Node: BGP decision process76234
Node: BGP network76490
Node: BGP route76671
Node: Route Aggregation77232
Node: Redistribute to BGP77784
Node: BGP Peer78293
Node: Defining Peer78471
Node: BGP Peer commands79087
Node: Peer filtering81458
Node: BGP Peer Group81949
Node: BGP Address Family82251
Node: Autonomous System82396
Node: AS Path Regular Expression83227
Node: Display BGP Routes by AS Path84490
Node: AS Path Access List84919
Node: Using AS Path in Route Map85373
Node: Private AS Numbers85639
Node: BGP Communities Attribute85784
Node: BGP Community Lists88245
Node: Numbered BGP Community Lists90926
Node: BGP Community in Route Map92500
Node: Display BGP Routes by Community94427
Node: Using BGP Communities Attribute95581
Node: BGP Extended Communities Attribute99139
Node: BGP Extended Community Lists100905
Node: BGP Extended Communities in Route Map102806
Node: Displaying BGP routes103249
Node: Show IP BGP103475
Node: More Show IP BGP104197
Node: Capability Negotiation105317
Node: Route Reflector108605
Node: Route Server108870
Node: Multiple instance109928
Node: BGP instance and view111741
Node: Routing policy113107
Node: Viewing the view113863
Node: How to set up a 6-Bone connection114135
Node: Dump BGP packets and table115507
Node: VTY shell116037
Node: Filtering116877
Node: IP Access List117225
Node: IP Prefix List117616
Node: ip prefix-list description120785
Node: ip prefix-list sequential number control121318
Node: Showing ip prefix-list121843
Node: Clear counter of ip prefix-list122926
Node: Route Map123347
Node: Route Map Command123848
Node: Route Map Match Command124051
Node: Route Map Set Command124659
Node: IPv6 Support125517
Node: Router Advertisement126082
Node: Kernel Interface126413
Node: SNMP Support128363
Node: How to get ucd-snmp128992
Node: SMUX configuration130040
Node: Zebra Protocol130473
Node: Packet Binary Dump Format132367
Node: Command Index143934
Node: VTY Key Index173652
Node: Top1118
Node: Overview1642
Node: About Zebra3059
Node: System Architecture5328
Node: Supported Platforms8326
Node: Supported RFC9313
Node: How to get Zebra11115
Node: Mailing List11959
Node: Bug Reports13170
Node: Installation14015
Node: Configure the Software14446
Ref: Configure the Software-Footnote-119218
Node: Build the Software20860
Node: Install the Software21402
Node: Basic commands22773
Node: Config Commands23486
Node: Basic Config Commands24368
Node: Sample Config File26766
Node: Common Invocation Options27526
Node: Virtual Terminal Interfaces28924
Node: VTY Overview29429
Node: VTY Modes30712
Node: VTY View Mode31152
Node: VTY Enable Mode31406
Node: VTY Other Modes31670
Node: VTY CLI Commands31832
Node: CLI Movement Commands32282
Node: CLI Editing Commands32815
Node: CLI Advanced Commands33388
Node: Zebra34139
Node: Invoking zebra34646
Node: Interface Commands35232
Node: Static Route Commands36739
Node: zebra Terminal Mode Commands40004
Node: RIP40965
Node: Starting and Stopping ripd41900
Node: RIP netmask43321
Node: RIP Configuration44443
Node: How to Announce RIP route48684
Node: Filtering RIP Routes51213
Node: RIP Metric Manipulation52672
Node: RIP distance53575
Node: RIP route-map54378
Node: RIP Authentication56880
Node: RIP Timers57970
Node: Show RIP Information59245
Node: RIP Debug Commands60608
Node: RIPng61592
Node: Invoking ripngd61910
Node: ripngd Configuration62167
Node: ripngd Terminal Mode Commands62906
Node: ripngd Filtering Commands63256
Node: OSPFv263755
Node: Configuring ospfd64312
Node: OSPF router64789
Node: OSPF area67629
Node: OSPF interface69843
Node: Redistribute routes to OSPF72625
Node: Showing OSPF information74741
Node: Debugging OSPF75961
Node: OSPFv376972
Node: OSPF6 router77290
Node: OSPF6 area77647
Node: OSPF6 interface77819
Node: Redistribute routes to OSPF678671
Node: Showing OSPF6 information78975
Node: BGP79780
Node: Starting BGP80641
Node: BGP router81226
Node: BGP distance82462
Node: BGP decision process82903
Node: BGP network83159
Node: BGP route83340
Node: Route Aggregation83901
Node: Redistribute to BGP84453
Node: BGP Peer84962
Node: Defining Peer85140
Node: BGP Peer commands85756
Node: Peer filtering88127
Node: BGP Peer Group88618
Node: BGP Address Family88920
Node: Autonomous System89065
Node: AS Path Regular Expression89896
Node: Display BGP Routes by AS Path91159
Node: AS Path Access List91588
Node: Using AS Path in Route Map92042
Node: Private AS Numbers92308
Node: BGP Communities Attribute92453
Node: BGP Community Lists94914
Node: Numbered BGP Community Lists97595
Node: BGP Community in Route Map99169
Node: Display BGP Routes by Community101096
Node: Using BGP Communities Attribute102250
Node: BGP Extended Communities Attribute105808
Node: BGP Extended Community Lists107574
Node: BGP Extended Communities in Route Map109475
Node: Displaying BGP routes109918
Node: Show IP BGP110144
Node: More Show IP BGP110866
Node: Capability Negotiation111986
Node: Route Reflector115274
Node: Route Server115539
Node: Multiple instance116597
Node: BGP instance and view118410
Node: Routing policy119776
Node: Viewing the view120532
Node: How to set up a 6-Bone connection120804
Node: Dump BGP packets and table122176
Node: VTY shell122706
Node: Filtering124940
Node: IP Access List125288
Node: IP Prefix List125679
Node: ip prefix-list description128848
Node: ip prefix-list sequential number control129381
Node: Showing ip prefix-list129906
Node: Clear counter of ip prefix-list130989
Node: Route Map131410
Node: Route Map Command131911
Node: Route Map Match Command132114
Node: Route Map Set Command132722
Node: IPv6 Support133580
Node: Router Advertisement134145
Node: Kernel Interface134476
Node: SNMP Support136426
Node: How to get ucd-snmp137055
Node: SMUX configuration138103
Node: Zebra Protocol138536
Node: Packet Binary Dump Format140430
Node: Command Index151997
Node: VTY Key Index182299

End Tag Table