ampr-ripd(8)

πŸ“¦ version 2.4.2, in fedora 43, fedora 44

πŸŽ€ NAME πŸŽ€

Okay bestie, welcome to the ampr-ripd(8) page, the General Manual Commands entry πŸ’… It's a routing daemon for AMPRNet gateways v2.4.2 and it's honestly giving main character energy ✨


🌸 SYNOPSIS 🌸

ampr-ripd [-?|-h] [-d] [-v] [-s] [-r] [-i <interface>] [-a <ip|hostname|subnet>[,<ip|hostname|subnet>...]] [-p <password>] [-m <metric>] [-w <window>] [-f <interface>] [-e <ip>] [-F <interface>] [-E <ip>] [-x <system command>] [-g <gateway>]

πŸ¦‹ DESCRIPTION πŸ¦‹

Okay so, AMPRnet is a RIPv4 Listener and route injector daemon that gets used with AMPRnet gateways. It's the behind-the-scenes queen πŸ‘‘


✨ OPTIONS ✨

  • -?, -h β€” Usage info, for when you need a little reminder πŸ™ˆ
  • -d β€” Debug mode! No daemonization (it stays in the foreground) and verbose output πŸ”
  • -v β€” Extra verbose debug output πŸ“’ Using this without debug means the console stays attached.
  • -s β€” Saves routes to /var/lib/ampr-ripd/encap.txt (encap format) πŸ’Ύ If that file already exists, it gets loaded on startup no matter what, so you don't even need this flag for that part.
  • -r β€” Uses a raw listening socket for systems with broken multicast support πŸ› οΈ
  • -i <interface> β€” The tunnel interface to use. Defaults to tunl0 πŸš‡
  • -t <table> β€” The routing table to use. Defaults to 'main' πŸ—‚οΈ
  • -a <ip>[,<ip>...] β€” A comma separated list of IPs, hostnames, or ampr subnets to be ignored 🚫 Subnets can be written as full network/mask (like 44.182.20.0/24) or encap (like 44.182.20/24), but they MUST match an entry in the RIP broadcast. If you use a hostname, its IP gets re-resolved 30 sec after every RIP broadcast. The list has your local interface IPs by default.
  • -m <metric> β€” The metric used when setting routes πŸ“Š It's a number from 0 to 255, and it defaults to 0.
  • -w <window> β€” Sets the TCP window size to a given value (defaults to 840) πŸͺŸ This is needed because IP over AX.25 connections have a small TCP window size. A value of 0 disables setting the window size. Not recommended, the default should be totally fine πŸ™…β€β™€οΈ
  • -p <password> β€” The RIPv2 password. It defaults to the current valid password, so only use this if the password ever changes πŸ”
  • -f <interface> β€” The interface for RIP forwarding. Defaults to none/disabled πŸ“‘
  • -e <ip> β€” The RIP forward destination IP. Defaults to 224.0.0.9 if enabled 🎯
  • -F <interface> β€” The interface for AMPR RIP forwarding. Defaults to none/disabled πŸ“‘
  • -E <ip> β€” The AMPR RIP forward destination IP. Defaults to 224.0.0.9 if enabled 🎯
  • -x <system command> β€” Runs this system command after a route is set or changed ⚑ If the command has white spaces, wrap it in quotes, bestie.
  • -g <gateway> β€” The gateway for direct 44net connections. Accepts a gateway IP or an interface name. If you don't set it, it gets auto-detected πŸ€–
  • -L <callsign@locator> β€” Turns on sending a callsign@locator string (honestly any string works) to the home gateway at udp:44.182.21.1:59001 πŸ’Œ It gets sent at startup and then every 5 minutes. On termination, a "shutdown" string gets sent. On HUP, the string goes out immediately and the cycle restarts. The whole point is building a dynamic map of all ampr-ripd gateways for visual display πŸ—ΊοΈ If this parameter isn't set, no data gets sent.

πŸ‘€ Observation

All routes are created with netlink protocol 44 so they're super easy to manage 🧚


🚦 SIGNALS 🚦

  • SIG_HUP β€” ampr-ripd deletes all set routes but stays active πŸ”„ Routes get set again on the next received RIPv2 set, and the saved encap file gets updated.
  • SIG_TERM (exit) β€” ampr-ripd deletes all set routes and exits πŸ‘‹

πŸ› DEBUG πŸ›

With the default debug level and the -d option, the daemon stays in the foreground, which lets you find the RIPv2 password if you need it πŸ•΅οΈ (check out the find_pass.sh shell script). For full debug output, it has to be compiled with -D HAVE_DEBUG or by uncommenting the right DOPT line.

⚠️ Heads up: this is how you dig up the RIPv2 password, so handle it with care, okay? 🫢

πŸ‘‘ AUTHOR πŸ‘‘

Author: Marius Petrescu, YO2LOJ, <marius@yo2loj.ro> 🌟


πŸ’€ KNOWN ISSUES πŸ’€

  • When you use a table other than 'main', interrogating the routes via netlink doesn't work properly 😭 That means every update deletes the route and recreates it, even if it's already set correctly. It should be fine, though, since this only happens at startup on encap loading and on route change.
  • For BGP announced 44net endpoints, only a single subnet can be assigned to a given endpoint πŸ™…β€β™€οΈ

Okay that's the whole tea on ampr-ripd, April 2025 edition πŸ’– Now go be iconic, bestie πŸ§šπŸ’…πŸŒˆ

πŸ“¦ where this page comes from