@node Zebra @comment node-name, next, previous, up @chapter Zebra @c SYNOPSIS @command{zebra} is an IP routing manager. It provides kernel routing table updates, interface lookups, and redistribution of routes between different routing protocols. @menu * Invoking zebra:: Running the program * Interface Commands:: Commands for zebra interfaces * Static Route Commands:: Commands for adding static routes * zebra Terminal Mode Commands:: Commands for zebra's VTY @end menu @node Invoking zebra, Interface Commands, Zebra, Zebra @comment node-name, next, previous, up @section Invoking zebra Besides the common invocation options (@pxref{Common Invocation Options}), the @command{zebra} specific invocation options are listed below. @table @samp @item -b @itemx --batch Runs in batch mode. @command{zebra} parses configuration file and terminates immediately. @item -k @itemx --keep_kernel When zebra starts up, don't delete old self inserted routes. @item -l @itemx --log_mode Set verbose logging on. @item -r @itemx --retain When program terminates, retain routes added by zebra. @end table @node Interface Commands, Static Route Commands, Invoking zebra, Zebra @comment node-name, next, previous, up @section Interface Commands @deffn Command {interface @var{ifname}} {} @end deffn @deffn {Interface Command} {shutdown} {} @deffnx {Interface Command} {no shutdown} {} Up or down the current interface. @end deffn @deffn {Interface Command} {ip address @var{address}} {} Set ip address for the interface. @end deffn @deffn {Interface Command} {description @var{description} ...} {} Set description for the interface. @end deffn @deffn {Interface Command} {multicast} {} @deffnx {Interface Command} {no multicast} {} Enable or disables multicast flag for the interface. @end deffn @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. @end deffn @node Static Route Commands, zebra Terminal Mode Commands, Interface Commands, Zebra @comment node-name, next, previous, up @section Static Route Commands Static routing is a very fundamental feature of routing technology. It defines static prefix and gateway. @deffn Command {ip route @var{network} @var{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. @example ip route 10.0.0.0/8 10.0.0.2 ip route 10.0.0.0/8 ppp0 @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. @end deffn @deffn Command {ip route @var{network} @var{netmask} @var{gateway}} {} This is alternate version of above command. When @var{network} is A.B.C.D format, user must define @var{netmask} value with A.B.C.D 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 @end example This is a same setting using this statement. @end deffn @deffn Command {ip route @var{network} @var{gateway} @var{distance}} {} @end deffn Multiple nexthop static route @example ip route 10.0.0.1/32 10.0.0.2 ip route 10.0.0.1/32 10.0.0.3 ip route 10.0.0.1/32 eth0 @end example 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. @example zebra> show ip route S> 10.0.0.1/32 [1/0] via 10.0.0.2 inactive via 10.0.0.3 inactive * is directly connected, eth0 @end example Floating static route @deffn Command {ipv6 route @var{network} @var{gateway}} {} @end deffn @deffn Command {ipv6 route @var{network} @var{gateway} @var{distance}} {} @end deffn @deffn Command {table @var{tableno}} {} Select the primary kernel routing table to be used. This only works for kernels supporting multiple routing tables (like GNU/Linux 2.2.x and later). After setting @var{tableno} with this command, static routes defined after this are added to the specified table. @end deffn @node zebra Terminal Mode Commands, , Static Route Commands, Zebra @comment node-name, next, previous, up @section zebra Terminal Mode Commands @deffn Command {show ip route} {} Display current routes which zebra holds in its database. @example @group Router# show ip route Codes: K - kernel route, C - connected, S - static, R - RIP, B - BGP * - FIB route. K* 0.0.0.0/0 203.181.89.241 S 0.0.0.0/0 203.181.89.1 C* 127.0.0.0/8 lo C* 203.181.89.240/28 eth0 @end group @end example @end deffn @deffn Command {show ipv6 route} {} @end deffn @deffn Command {show interface} {} @end deffn @deffn Command {show ipforward} {} Display whether the host's IP forwarding function is enabled or not. Almost any UNIX kernel can be configured with IP forwarding disabled. If so, the box can't work as a router. @end deffn @deffn Command {show ipv6forward} {} Display whether the host's IP v6 forwarding is enabled or not. @end deffn