RDISC(8)
π
RDISC(8) β ok so this is the rdisc page from the iputils fam, bestie
β¨ NAME β¨
rdisc β the network router discovery daemon. yes she's a daemon, she's booked and busy π«Ά
β¨ SYNOPSIS β¨
rdisc [-abdfrstvV] [-p preference] [-T max_interval] [send_address]
[receive_address]
like, that's the whole vibe right there π«
β¨ DESCRIPTION β¨
okay so rdisc implements the client side of the ICMP Internet Router Discovery Protocol, aka IRDP. no cap. You invoke rdisc at boot time and it goes ahead and populates your network routing tables with default routes β she's literally doing the networking equivalent of setting up your whole group chat π
rdisc listens on the ALL_HOSTS (224.0.0.1) multicast address β or on receive_address if you passed one β for ROUTER_ADVERTISE messages from routers. And the way it handles the received messages? Very demure, very mindful:
- first it ignores those listed router addresses with which the host does not share a network. not our people, not our problem π
- among the remaining addresses, the ones with the highest preference get selected as default routers π
- and a default route gets entered in the kernel routing table for each one of them. slay β¨
Optionally, rdisc can avoid sitting around waiting for routers to announce themselves (so awkward) by sending out a few ROUTER_SOLICITATION messages to the ALL_ROUTERS (224.0.0.2) multicast address β or to send_address if that was provided β right when it's started. initiative!! π₯
A timer is associated with each router address, and that address will no longer be considered for inclusion in the routing tables if the timer expires before a new advertise message is received from the router. literally the router ghosted, so she moves on π The address will also be excluded from consideration if the received advertise message has a preference of maximum negative β that's the ick, blocked, unfollowed.
Server side of the router discovery protocol is supported by Cisco IOS and by any more or less complete UNIX routing daemon, for example gated. And if compiled with ENABLE_RDISC_SERVER, rdisc can act as responder β she can serve too, versatile icon π
β¨ OPTIONS β¨
-aβ Accept all routers independently of the preference they have in their advertise messages. Normallyrdisconly accepts (and enters in the kernel routing tables) the router or routers with the highest preference. so this is the "everyone's welcome, no gatekeeping" setting π«Ά-bβ Opposite to-a, i.e. install only the router with the best preference value. This is the default behaviour. picky queen, and honestly valid π-dβ Send debugging messages to syslog.-fβ Keeprdiscrunning in the background even if no routers are found. Normallyrdiscgives up if it has not received any advertise message after soliciting three times. In this case it exits with a non-zero exit code. If-fis not specified in the first form then-smust be specified. she's persistent, she's patient, she's not leaving π§-rβ Responder mode, available only if compiled withENABLE_RDISC_SERVER.-sβ Send three solicitation messages initially to quickly discover the routers when the system is booted. When-sis specifiedrdiscexits with a non-zero exit code if it can not find any routers. This can be overridden with the-foption.-ppreference β Set preference in advertisement messages. Available only with the-roption.-Tmax_interval β Set maximum advertisement interval in seconds. Default is600. Available only with the-roption.-tβ Test mode. Do not go to background.-vβ Be verbose and send lots of debugging messages to syslog. talkative era π-Vβ Print version and exit.
πΈ HISTORY πΈ
This program was developed by Sun Microsystems (see copyright notice in source file). It was ported to Linux by Alexey Kuznetsov <kuznet@ms2.inr.ac.ru>. give him his flowers π
π¦ SEE ALSO π¦
β REFERENCES β
RFC1256 ICMP Router Discovery Messages. S. Deering, Ed.. September 1991. the source material, the blueprint, the origin story π
π₯ SECURITY π₯
rdisc requires CAP_NET_RAW to listen and send ICMP messages and capability CAP_NET_ADMIN to update routing tables. so yeah, she needs the keys to the kingdom β no cap, don't hand these out to just anyone π
π AVAILABILITY π
rdisc is part of iputils package. family business π«Ά
ok that's the whole page bestie, ily, go configure your routes responsibly π this lil rewrite was brought to you by iputils 20210202, and the page itself is dated with that same iputils 20210202 stamp β RDISC(8), signing off β¨π
π¦ where this page comes from
- centos-stream 9: iputils 20210202-15.el9 Β· BSD and GPLv2+
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms