Revision 1532a244 doc/bird.sgml

View differences:

doc/bird.sgml
978 978
}
979 979
</code>
980 980

  
981
<sect>Rip
981
<sect>RIP
982 982

  
983 983
<sect1>Introduction
984 984

  
985
<p>Rip protocol (sometimes called Rest In Pieces) is a simple protocol, where each router broadcasts
986
distances to all networks it can reach. When router hears distance to other network, it increments
985
<p>The RIP protocol (also sometimes called Rest In Pieces) is a simple protocol, where each router broadcasts (to all its neighbors)
986
distances to all networks it can reach. When a router hears distance to another network, it increments
987 987
it and broadcasts it back. Broadcasts are done in regular intervals. Therefore, if some network goes
988
unreachable, routers keep telling each other that distance is old distance plus 1 (actually, plus
989
interface metric, which is usually one). After some time, distance reaches infinity (that's 15 in
990
rip) and all routers know that network is unreachable. Rip tries to minimize situations where
988
unreachable, routers keep telling each other that its distance is the original distance plus 1 (actually, plus
989
interface metric, which is usually one). After some time, the distance reaches infinity (that's 15 in
990
RIP) and all routers know that network is unreachable. RIP tries to minimize situations where
991 991
counting to infinity is necessary, because it is slow. Due to infinity being 16, you can't use
992
rip on networks where maximal distance is bigger than 15 hosts. You can read more about rip at <HTMLURL
993
URL="http://www.ietf.org/html.charters/rip-charter.html">. Both IPv4
994
and IPv6 versions of rip are supported by BIRD, historical RIPv1 is
992
RIP on networks where maximal distance is higher than 15 hosts. You can read more about rip at <HTMLURL
993
URL="http://www.ietf.org/html.charters/rip-charter.html" TEXT="http://www.ietf.org/html.charters/rip-charter.html">. Both IPv4
994
and IPv6 versions of RIP are supported by BIRD, historical RIPv1 is
995 995
currently not fully supported.
996 996

  
997
<p>Rip is very simple protocol, and it is not too good. Slow
998
convergence, big network load and inability to handle bigger networks
997
<p>RIP is a very simple protocol, and it has a lot of shortcomings. Slow
998
convergence, big network load and inability to handle larger networks
999 999
makes it pretty much obsolete in IPv4 world. (It is still usable on
1000
very small networks, through.) It is widely used in IPv6 world,
1001
because they are no good implementations of OSPFv3.
1000
very small networks.) It is widely used in IPv6 networks,
1001
because there are no good implementations of OSPFv3.
1002 1002

  
1003 1003
<sect1>Configuration
1004 1004

  
1005
<p>In addition to options generic to other protocols, rip supports following options:
1005
<p>In addition to options common for all to other protocols, RIP supports the following ones:
1006 1006

  
1007 1007
<descrip>
1008
	<tag/authentication none|password|md5/ selects authentication method to use. None means that
1009
	  packets are not authenticated at all, password means that plaintext password is embedded
1010
	  into each packet, and md5 means that packets are authenticated using md5 cryptographic
1011
	  hash. If you set authentication to non-none, it is good idea to add <cf>passwords { }</cf>
1008
	<tag/authentication none|password|md5/ selects authentication method to be used. <cf/none/ means that
1009
	  packets are not authenticated at all, <cf/password/ means that a plaintext password is embedded
1010
	  into each packet, and <cf/md5/ means that packets are authenticated using a md5 cryptographic
1011
	  hash. If you set authentication to not-none, it is a good idea to add <cf>passwords { }</cf>
1012 1012
	  section.
1013 1013

  
1014
	<tag>honor always|neighbor|never </tag>specifies, when should be requests for dumping routing table
1015
	  honored. (Always, when sent from host on directly connected
1016
	  network, or never.) Routing table updates are honored only from
1014
	<tag>honor always|neighbor|never </tag>specifies when should requests for dumping routing table
1015
	  be honored. (Always, when sent from a  host on a directly connected
1016
	  network or never.) Routing table updates are honored only from
1017 1017
	  neighbors, that is not configurable.
1018 1018
</descrip>
1019 1019

  
1020 1020
<p>There are two options that can be specified per-interface. First is <cf>metric</cf>, with
1021 1021
default one.  Second is <cf>mode multicast|broadcast|quiet|nolisten|version1</cf>, it selects mode for
1022 1022
rip to work in. If nothing is specified, rip runs in multicast mode. <cf>version1</cf> is
1023
currently equivalent to <cf>broadcast</cf>, and it makes rip talk at broadcast address even
1024
through multicast mode is possible. <cf>quiet</cf> option means that rip will not transmit
1025
periodic messages onto this interface and <cf>nolisten</cf> means that rip will talk to this
1026
interface but not listen on it.
1023
currently equivalent to <cf>broadcast</cf>, and it makes RIP talk to a broadcast address even
1024
through multicast mode is possible. <cf>quiet</cf> option means that RIP will not transmit
1025
any periodic messages to this interface and <cf>nolisten</cf> means that RIP will send to this
1026
interface but not listen to it.
1027 1027

  
1028
<p>Following options generally override specified behavior from RFC. If you use any of these
1029
options, BIRD will no longer be RFC-compatible, which means it will not be able to talk to anything
1030
other than equally misconfigured BIRD. I warned you.
1028
<p>The following options generally override behavior specified in RFC. If you use any of these
1029
options, BIRD will no longer be RFC-compliant, which means it will not be able to talk to anything
1030
other than equally configured BIRD. I have warned you.
1031 1031

  
1032 1032
<descrip>
1033 1033
	<tag>port <M>number</M></tag>
1034 1034
	  selects IP port to operate on, default 520. (This is useful when testing BIRD, if you
1035
	  set this to address &gt;1024, you will not need to run bird with UID==0).
1035
	  set this to an address &gt;1024, you will not need to run bird with UID==0).
1036 1036

  
1037 1037
	<tag>infinity <M>number</M></tag>
1038
	  select value of infinity, default 16. Bigger values will make protocol convergence
1038
	  selects the value of infinity, default is 16. Bigger values will make protocol convergence
1039 1039
	  even slower.
1040 1040

  
1041 1041
	<tag>period <M>number</M>
1042
	  </tag>specifies number of seconds between periodic updates. Default is 30 seconds. Lower
1042
	  </tag>specifies the number of seconds between periodic updates. Default is 30 seconds. A lower
1043 1043
	  number will mean faster convergence but bigger network
1044 1044
	  load. Do not use values lower than 10.
1045 1045

  
1046 1046
	<tag>timeout time <M>number</M>
1047
	  </tag>specifies how old route has to be to be considered unreachable. Default is 4*period.
1047
	  </tag>specifies how old route has to be to be considered unreachable. Default is 4*<cf/period/.
1048 1048

  
1049 1049
	<tag>garbage time <M>number</M>
1050
	  </tag>specifies how old route has to be to be discarded. Default is 10*period.
1050
	  </tag>specifies how old route has to be to be discarded. Default is 10*<cf/period/.
1051 1051
</descrip>
1052 1052

  
1053 1053
<sect1>Attributes

Also available in: Unified diff