1<refentry id="rdisc">
2
3<refmeta>
4<refentrytitle>rdisc</refentrytitle>
5<manvolnum>8</manvolnum>
6<refmiscinfo>iputils-&snapshot;</refmiscinfo>
7</refmeta>
8
9<refnamediv>
10<refname>rdisc</refname>
11<refpurpose>network router discovery daemon</refpurpose>
12</refnamediv>
13
14<refsynopsisdiv>
15<cmdsynopsis>
16<command>rdisc</command>
17<arg choice="opt"><option>-abdfstvV</option></arg>
18<arg choice="opt"><replaceable/send_address/</arg>
19<arg choice="opt"><replaceable/receive_address/</arg>
20</cmdsynopsis>
21</refsynopsisdiv>
22
23<refsect1><title>DESCRIPTION</title>
24<para>
25<command/rdisc/ implements client side of the ICMP router discover protocol.
26<command/rdisc/ is invoked at boot time to populate the network
27routing tables with default routes. 
28</para>
29
30<para>
31<command/rdisc/ listens on the ALL_HOSTS (224.0.0.1) multicast address
32(or <replaceable/receive_address/ provided it is given) 
33for ROUTER_ADVERTISE messages from routers. The received
34messages are handled by first ignoring those listed router addresses
35with which the host does not share a network. Among the remaining addresses
36the ones with the highest preference are selected as default routers
37and a default route is entered in the kernel routing table
38for each one of them.
39</para>
40
41<para>
42Optionally, <command/rdisc/ can avoid waiting for routers to announce 
43themselves by sending out a few ROUTER_SOLICITATION messages
44to the ALL_ROUTERS (224.0.0.2) multicast address 
45(or <replaceable/send_address/ provided it is given) 
46when it is started.
47</para>
48
49<para>
50A timer is associated with each router address and the address will
51no longer be considered for inclusion in the the routing tables if the 
52timer expires before a new 
53<emphasis/advertise/ message is received from the router.
54The address will also be excluded from consideration if the host receives an 
55<emphasis/advertise/
56message with the preference being maximally negative.
57</para>
58
59<para>
60Server side of router discovery protocol is supported by Cisco IOS
61and by any more or less complete UNIX routing daemon, f.e <command/gated/.
62</para>
63
64</refsect1>
65
66<refsect1><title>OPTIONS</title>
67
68<variablelist>
69 <varlistentry>
70  <term><option/-a/</term>
71  <listitem><para>
72Accept all routers independently of the preference they have in their 
73<emphasis/advertise/ messages.
74Normally <command/rdisc/ only accepts (and enters in the kernel routing
75tables) the router or routers with the highest preference.
76  </para></listitem>
77 </varlistentry>
78 <varlistentry>
79  <term><option/-b/</term>
80  <listitem><para>
81Opposite to <option/-a/, i.e. install only router with the best
82preference value. It is default behaviour.
83  </para></listitem>
84 </varlistentry>
85 <varlistentry>
86  <term><option/-d/</term>
87  <listitem><para>
88Send debugging messages to syslog.
89  </para></listitem>
90 </varlistentry>
91 <varlistentry>
92  <term><option/-f/</term>
93  <listitem><para>
94Run <command/rdisc/ forever even if no routers are found.
95Normally <command/rdisc/ gives up if it has not received any 
96<emphasis/advertise/ message after after soliciting three times,
97in which case it exits with a non-zero exit code.
98If <option/-f/ is not specified in the first form then 
99<option/-s/ must be specified.
100  </para></listitem>
101 </varlistentry>
102
103 <varlistentry>
104  <term><option/-s/</term>
105  <listitem><para>
106Send three <emphasis/solicitation/ messages initially to quickly discover
107the routers when the system is booted.
108When <option/-s/ is specified <command/rdisc/
109exits with a non-zero exit code if it can not find any routers.
110This can be overridden with the <option/-f/ option.
111  </para></listitem>
112 </varlistentry>
113
114 <varlistentry>
115  <term><option/-t/</term>
116  <listitem><para>
117Test mode. Do not go to background.
118  </para></listitem>
119 </varlistentry>
120
121
122 <varlistentry>
123  <term><option/-v/</term>
124  <listitem><para>
125Be verbose i.e. send lots of debugging messages to syslog.
126  </para></listitem>
127 </varlistentry>
128
129 <varlistentry>
130  <term><option/-V/</term>
131  <listitem><para>
132Print version and exit.
133  </para></listitem>
134 </varlistentry>
135</variablelist>
136</refsect1>
137
138<refsect1><title>HISTORY</title>
139<para>
140This program was developed by Sun Microsystems (see copyright
141notice in source file). It was ported to Linux by
142<ulink url="mailto:kuznet@ms2.inr.ac.ru">Alexey Kuznetsov
143&lt;kuznet@ms2.inr.ac.ru&gt;</ulink>.
144</para>
145</refsect1>
146
147
148<refsect1><title>SEE ALSO</title>
149<para>
150<citerefentry><refentrytitle/icmp/<manvolnum/7/</citerefentry>,
151<citerefentry><refentrytitle/inet/<manvolnum/7/</citerefentry>,
152<link linkend="ping">
153<citerefentry><refentrytitle/ping/<manvolnum/8/</citerefentry></link>.
154</para>
155</refsect1>
156
157<refsect1><title>REFERENCES</title>
158<para>
159Deering, S.E.,ed "ICMP Router Discovery Messages",
160<ulink url="ftp://ftp.isi.edu/in-notes/rfc1256.txt">
161RFC1256</ulink>, Network Information Center, SRI International,
162Menlo Park, Calif., September 1991.
163</para>
164</refsect1>
165
166<refsect1><title>SECURITY</title>
167<para>
168<command/rdisc/ requires <constant/CAP_NET_RAWIO/ to listen
169and send ICMP messages and capability <constant/CAP_NET_ADMIN/
170to update routing tables. 
171</para>
172</refsect1>
173
174<refsect1><title>AVAILABILITY</title>
175<para>
176<command/rdisc/ is part of <filename/iputils/ package
177and the latest versions are  available in source form for anonymous ftp
178<ulink url="ftp://ftp.inr.ac.ru/ip-routing/iputils-current.tar.gz">
179ftp://ftp.inr.ac.ru/ip-routing/iputils-current.tar.gz</ulink>.
180</para>
181</refsect1>
182
183<![IGNORE[
184<refsect1><title>COPYING</title>
185<para>
186<literallayout>
187Rdisc (this program) was developed by Sun Microsystems, Inc. and is 
188provided for unrestricted use provided that this legend is included on 
189all tape media and as a part of the software program in whole or part.  
190Users may copy or modify Rdisc without charge, and they may freely 
191distribute it.
192
193RDISC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE
194WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR
195PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE.
196
197Rdisc is provided with no support and without any obligation on the
198part of Sun Microsystems, Inc. to assist in its use, correction,
199modification or enhancement.
200
201SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE
202INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY RDISC
203OR ANY PART THEREOF.
204
205In no event will Sun Microsystems, Inc. be liable for any lost revenue
206or profits or other special, indirect and consequential damages, even if
207Sun has been advised of the possibility of such damages.
208
209Sun Microsystems, Inc.
2102550 Garcia Avenue
211Mountain View, California  94043
212</literallayout>
213</para>
214</refsect1>
215]]>
216
217
218</refentry>
219