Annotation of embedaddon/quagga/doc/main.texi, revision 1.1

1.1     ! misho       1: @node Zebra
        !             2: @chapter Zebra
        !             3: 
        !             4: @c SYNOPSIS
        !             5: @command{zebra} is an IP routing manager.  It provides kernel routing
        !             6: table updates, interface lookups, and redistribution of routes between
        !             7: different routing protocols.
        !             8: 
        !             9: @menu
        !            10: * Invoking zebra::              Running the program
        !            11: * Interface Commands::          Commands for zebra interfaces
        !            12: * Static Route Commands::       Commands for adding static routes
        !            13: * zebra Route Filtering::       Commands for zebra route filtering
        !            14: * zebra Terminal Mode Commands::  Commands for zebra's VTY
        !            15: @end menu
        !            16: 
        !            17: 
        !            18: @node Invoking zebra
        !            19: @section Invoking zebra
        !            20: 
        !            21: Besides the common invocation options (@pxref{Common Invocation Options}), the
        !            22: @command{zebra} specific invocation options are listed below.
        !            23: 
        !            24: @table @samp
        !            25: @item -b
        !            26: @itemx --batch
        !            27: Runs in batch mode.  @command{zebra} parses configuration file and terminates
        !            28: immediately.
        !            29: 
        !            30: @item -k
        !            31: @itemx --keep_kernel
        !            32: When zebra starts up, don't delete old self inserted routes.
        !            33: 
        !            34: @item -r
        !            35: @itemx --retain
        !            36: When program terminates, retain routes added by zebra.
        !            37: 
        !            38: @end table
        !            39: 
        !            40: @node Interface Commands
        !            41: @section Interface Commands
        !            42: 
        !            43: @deffn Command {interface @var{ifname}} {}
        !            44: @end deffn
        !            45: 
        !            46: @deffn {Interface Command} {shutdown} {}
        !            47: @deffnx {Interface Command} {no shutdown} {}
        !            48: Up or down the current interface.
        !            49: @end deffn
        !            50: 
        !            51: @deffn {Interface Command} {ip address @var{address/prefix}} {}
        !            52: @deffnx {Interface Command} {ipv6 address @var{address/prefix}} {}
        !            53: @deffnx {Interface Command} {no ip address @var{address/prefix}} {}
        !            54: @deffnx {Interface Command} {no ipv6 address @var{address/prefix}} {}
        !            55: Set the IPv4 or IPv6 address/prefix for the interface.
        !            56: @end deffn
        !            57: 
        !            58: @deffn {Interface Command} {ip address @var{address/prefix} secondary} {}
        !            59: @deffnx {Interface Command} {no ip address @var{address/prefix} secondary} {}
        !            60: Set the secondary flag for this address. This causes ospfd to not treat the
        !            61: address as a distinct subnet.
        !            62: @end deffn
        !            63: 
        !            64: @deffn {Interface Command} {description @var{description} ...} {}
        !            65: Set description for the interface.
        !            66: @end deffn
        !            67: 
        !            68: @deffn {Interface Command} {multicast} {}
        !            69: @deffnx {Interface Command} {no multicast} {}
        !            70: Enable or disables multicast flag for the interface.
        !            71: @end deffn
        !            72: 
        !            73: @deffn {Interface Command} {bandwidth <1-10000000>} {}
        !            74: @deffnx {Interface Command} {no bandwidth <1-10000000>} {}
        !            75: Set bandwidth value of the interface in kilobits/sec.  This is for 
        !            76: calculating OSPF cost. This command does not affect the actual device 
        !            77: configuration.
        !            78: @end deffn
        !            79: 
        !            80: @deffn {Interface Command} {link-detect} {}
        !            81: @deffnx {Interface Command} {no link-detect} {}
        !            82: Enable/disable link-detect on platforms which support this. Currently 
        !            83: only Linux and Solaris, and only where network interface drivers support reporting
        !            84: link-state via the IFF_RUNNING flag.
        !            85: @end deffn
        !            86: 
        !            87: @node Static Route Commands
        !            88: @section Static Route Commands
        !            89: 
        !            90: Static routing is a very fundamental feature of routing technology.  It
        !            91: defines static prefix and gateway.
        !            92: 
        !            93: @deffn Command {ip route @var{network} @var{gateway}} {}
        !            94: @var{network} is destination prefix with format of A.B.C.D/M.
        !            95: @var{gateway} is gateway for the prefix.  When @var{gateway} is
        !            96: A.B.C.D format.  It is taken as a IPv4 address gateway.  Otherwise it
        !            97: is treated as an interface name. If the interface name is @var{null0} then
        !            98: zebra installs a blackhole route.
        !            99: 
        !           100: @example
        !           101: ip route 10.0.0.0/8 10.0.0.2
        !           102: ip route 10.0.0.0/8 ppp0
        !           103: ip route 10.0.0.0/8 null0
        !           104: @end example
        !           105: 
        !           106: First example defines 10.0.0.0/8 static route with gateway 10.0.0.2.
        !           107: Second one defines the same prefix but with gateway to interface ppp0. The
        !           108: third install a blackhole route.
        !           109: @end deffn
        !           110: 
        !           111: @deffn Command {ip route @var{network} @var{netmask} @var{gateway}} {}
        !           112: This is alternate version of above command.  When @var{network} is
        !           113: A.B.C.D format, user must define @var{netmask} value with A.B.C.D
        !           114: format.  @var{gateway} is same option as above command
        !           115: 
        !           116: @example
        !           117: ip route 10.0.0.0 255.255.255.0 10.0.0.2
        !           118: ip route 10.0.0.0 255.255.255.0 ppp0
        !           119: ip route 10.0.0.0 255.255.255.0 null0
        !           120: @end example
        !           121: 
        !           122: These statements are equivalent to those in the previous example.
        !           123: @end deffn
        !           124: 
        !           125: @deffn Command {ip route @var{network} @var{gateway} @var{distance}} {}
        !           126: Installs the route with the specified distance.
        !           127: @end deffn
        !           128: 
        !           129: Multiple nexthop static route
        !           130: 
        !           131: @example
        !           132: ip route 10.0.0.1/32 10.0.0.2
        !           133: ip route 10.0.0.1/32 10.0.0.3
        !           134: ip route 10.0.0.1/32 eth0
        !           135: @end example
        !           136: 
        !           137: If there is no route to 10.0.0.2 and 10.0.0.3, and interface eth0
        !           138: is reachable, then the last route is installed into the kernel.
        !           139: 
        !           140: If zebra has been compiled with multipath support, and both 10.0.0.2 and
        !           141: 10.0.0.3 are reachable, zebra will install a multipath route via both
        !           142: nexthops, if the platform supports this.
        !           143: 
        !           144: @example
        !           145: zebra> show ip route
        !           146: S>  10.0.0.1/32 [1/0] via 10.0.0.2 inactive
        !           147:                       via 10.0.0.3 inactive
        !           148:   *                   is directly connected, eth0
        !           149: @end example
        !           150: 
        !           151: @example
        !           152: ip route 10.0.0.0/8 10.0.0.2
        !           153: ip route 10.0.0.0/8 10.0.0.3
        !           154: ip route 10.0.0.0/8 null0 255
        !           155: @end example
        !           156: 
        !           157: This will install a multihop route via the specified next-hops if they are
        !           158: reachable, as well as a high-metric blackhole route, which can be useful to
        !           159: prevent traffic destined for a prefix to match less-specific routes (eg
        !           160: default) should the specified gateways not be reachable. Eg:
        !           161: 
        !           162: @example
        !           163: zebra> show ip route 10.0.0.0/8             
        !           164: Routing entry for 10.0.0.0/8
        !           165:   Known via "static", distance 1, metric 0
        !           166:     10.0.0.2 inactive
        !           167:     10.0.0.3 inactive
        !           168: 
        !           169: Routing entry for 10.0.0.0/8
        !           170:   Known via "static", distance 255, metric 0
        !           171:     directly connected, Null0
        !           172: @end example
        !           173: 
        !           174: @deffn Command {ipv6 route @var{network} @var{gateway}} {}
        !           175: @deffnx Command {ipv6 route @var{network} @var{gateway} @var{distance}} {}
        !           176: These behave similarly to their ipv4 counterparts.
        !           177: @end deffn
        !           178: 
        !           179: 
        !           180: @deffn Command {table @var{tableno}} {}
        !           181: Select the primary kernel routing table to be used.  This only works
        !           182: for kernels supporting multiple routing tables (like GNU/Linux 2.2.x
        !           183: and later).  After setting @var{tableno} with this command, 
        !           184: static routes defined after this are added to the specified table.
        !           185: @end deffn
        !           186: 
        !           187: @node zebra Route Filtering
        !           188: @section zebra Route Filtering
        !           189: Zebra supports @command{prefix-list} and @command{route-map} to match
        !           190: routes received from other quagga components.  The
        !           191: @command{permit}/@command{deny} facilities provided by these commands
        !           192: can be used to filter which routes zebra will install in the kernel.
        !           193: 
        !           194: @deffn Command {ip protocol @var{protocol} route-map @var{routemap}} {}
        !           195: Apply a route-map filter to routes for the specified protocol. @var{protocol}
        !           196: can be @b{any} or one of
        !           197: @b{system},
        !           198: @b{kernel},
        !           199: @b{connected},
        !           200: @b{static},
        !           201: @b{rip},
        !           202: @b{ripng},
        !           203: @b{ospf},
        !           204: @b{ospf6},
        !           205: @b{isis},
        !           206: @b{bgp},
        !           207: @b{hsls}.
        !           208: @end deffn
        !           209: 
        !           210: @deffn {Route Map} {set src @var{address}}
        !           211: Within a route-map, set the preferred source address for matching routes
        !           212: when installing in the kernel.
        !           213: @end deffn
        !           214: 
        !           215: @example
        !           216: The following creates a prefix-list that matches all addresses, a route-map
        !           217: that sets the preferred source address, and applies the route-map to all
        !           218: @command{rip} routes.
        !           219: 
        !           220: @group
        !           221: ip prefix-list ANY permit 0.0.0.0/0 le 32
        !           222: route-map RM1 permit 10
        !           223:      match ip address prefix-list ANY
        !           224:      set src 10.0.0.1
        !           225: 
        !           226: ip protocol rip route-map RM1
        !           227: @end group
        !           228: @end example
        !           229: 
        !           230: @node zebra Terminal Mode Commands
        !           231: @section zebra Terminal Mode Commands
        !           232: 
        !           233: @deffn Command {show ip route} {}
        !           234: Display current routes which zebra holds in its database.
        !           235: 
        !           236: @example
        !           237: @group
        !           238: Router# show ip route 
        !           239: Codes: K - kernel route, C - connected, S - static, R - RIP, 
        !           240:        B - BGP * - FIB route.
        !           241: 
        !           242: K* 0.0.0.0/0              203.181.89.241
        !           243: S  0.0.0.0/0              203.181.89.1
        !           244: C* 127.0.0.0/8            lo
        !           245: C* 203.181.89.240/28      eth0
        !           246: @end group
        !           247: @end example
        !           248: @end deffn
        !           249: 
        !           250: @deffn Command {show ipv6 route} {}
        !           251: @end deffn
        !           252: 
        !           253: @deffn Command {show interface} {}
        !           254: @end deffn
        !           255: 
        !           256: @deffn Command {show ip prefix-list [@var{name}]} {}
        !           257: @end deffn
        !           258: 
        !           259: @deffn Command {show route-map [@var{name}]} {}
        !           260: @end deffn
        !           261: 
        !           262: @deffn Command {show ip protocol} {}
        !           263: @end deffn
        !           264: 
        !           265: @deffn Command {show ipforward} {}
        !           266: Display whether the host's IP forwarding function is enabled or not.
        !           267: Almost any UNIX kernel can be configured with IP forwarding disabled.
        !           268: If so, the box can't work as a router.
        !           269: @end deffn
        !           270: 
        !           271: @deffn Command {show ipv6forward} {}
        !           272: Display whether the host's IP v6 forwarding is enabled or not.
        !           273: @end deffn

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>