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