AX25D.CONF(5)

πŸ“¦
version 1.1.0 Β· 3 versions
, in alpine 3.24, debian bookworm, debian trixie, ubuntu jammy, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

✨ NAME ✨

ax25d.conf β€” the config file for ax25d, bestie πŸ’… (this is the Linux Programmer's Manual btw, we're fancy here)


πŸŽ€ DESCRIPTION πŸŽ€

Okay so ax25d.conf is literally the mastermind behind how ax25d behaves. Its whole job is to say: which ports do we listen on, which apps are available, and who's even allowed to use them πŸ‘‘. And here's the cute part β€” the same config file serves all three of AX.25, NET/ROM and Rose, and the two halves of the file look super similar (iykyk).

The general layout for an entry for a given port goes like this:

interface control
callsign entry 1
 .
 .
callsign entry n

The interface control line decides which port and which callsigns apply to all the callsign entry lines after it, right up until the next interface control shows up. There are four variants of this line, and yes we're numbering them:

  1. [AX.25 Port Name]
  2. [Callsign VIA AX.25 Port Name]
  3. <NET/ROM Port Name>
  4. {Callsign VIA Rose Port Name}

Version 1 lets the following callsign entry lines listen on the AX.25 port named by AX.25 Port Name, using that AX.25 port's default callsign.

Version 2 lets the following callsign entry lines listen on the AX.25 port named by AX.25 Port Name, but using the specified callsign instead of the port's default one. If you throw a * in for the AX.25 Port Name, then those callsign entries become valid on all the operating AX.25 ports, using the callsign you specified πŸ”₯. Oh and VIA can be shortened to just V (slay, abbreviation). If the callsign has an asterisk appended to it, the system listens on the port with that callsign β€” but as a pseudo-digipeater instead of the normal destination callsign πŸ‘€.

Version 3 lets the following callsign entry lines listen on the NET/ROM port named by NET/ROM Port Name, using that NET/ROM port's default callsign.

Version 4 lets the following callsign entry lines listen on the Rose port using the specified Rose Port Name, using the specified callsign as the service access point (SAP). You can put a * as the callsign to match any incoming Call Requests with any SAP πŸ’«.


πŸ¦‹ the callsign entry lines

These have a similar layout for AX.25, NET/ROM and Rose. Here's the vibe:

peer window t1 t2 t3 idle n2 mode uid exec args...
⚠️ Every value has to be filled in for every entry, even when it isn't used β€” like window for NET/ROM, where you just stick a * in. No blanks, no skipping, periodt.

The meanings of each field, coming right up. Heads up: all timings apart from the idle value are in seconds, and the idle value is in minutes ⏱️.

  • peer β€” specifies the callsign of the remote end of the connection that should get the following parameters and executable set up for them. (The syntax of the peer argument gets its own whole explanation below, don't worry 🫢)
  • window β€” sets the value of the window size. If you put * here, the default for the port comes from the parameters entry (see below), or if there's no such entry, the kernel default is used. This field is used by AX.25, but not by NET/ROM or Rose.
  • t1 β€” sets the value of the T1 timer. A * means: take the port default from the parameters entry (see below), or failing that, the kernel default. Used by both AX.25 and NET/ROM, but not by Rose.
  • t2 β€” sets the value of the T2 timer. Same * deal: parameters entry default (see below), else the kernel default. Used by both AX.25 and NET/ROM, but not by Rose.
  • t3 β€” sets the value of the T3 timer. Same * deal again: parameters entry (see below), else kernel default. Used by AX.25, but not by NET/ROM or Rose.
  • idle β€” sets the value of the idle timer. You already know the drill: * β†’ port default from the parameters entry (see below), else the kernel default.
  • n2 β€” sets the value of the N2 counter. * β†’ parameters entry default (see below), else kernel default. Used by both AX.25 and NET/ROM, but not by Rose.
  • mode β€” a set of flags controlling the various properties of the incoming connection. The flags are single letters, upper or lower case both fine, and there must be no spaces between them πŸ™ˆ. If you don't want any flags, you have to enter 0, - or * instead. The valid mode flag letters are:
    • D β€” do not allow connections that have passed via any digipeaters. AX.25 only.
    • L β€” do not allow this station to connect, they are Locked out πŸ”’.
    • N β€” check that the NET/ROM neighbour is allowed, currently unused.
    • Q β€” do not make an entry into the log file for this connection.
    • V β€” validate the callsign of the incoming connection, currently unused.
  • uid β€” the userid that the following command should run under when it executes.
  • exec β€” the executable that should be executed when an incoming connection matches the criteria of both the interface control and the callsign entry.
  • args... β€” the optional arguments passed to the executable. All arguments are passed literally, apart from these special ones:
    • %d β€” the name of the port that the connection is on.
    • %U β€” the username (callsign) of the remote station in upper case, without the SSID.
    • %u β€” the username (callsign) of the remote station in lower case, without the SSID.
    • %S β€” the username (callsign) of the remote station in upper case, with the SSID.
    • %s β€” the username (callsign) of the remote station in lower case, with the SSID.
    • %P β€” the nodename of the remote station in upper case, without the SSID. Only valid under NET/ROM and Rose; under AX.25 a % is substituted instead.
    • %p β€” the nodename of the remote station in lower case, without the SSID. Only valid under NET/ROM and Rose; under AX.25 a % is substituted instead.
    • %R β€” the nodename of the remote station in upper case, with the SSID. Only valid under NET/ROM and Rose; under AX.25 a % is substituted instead.
    • %r β€” the nodename of the remote station in lower case, with the SSID. Only valid under NET/ROM and Rose; under AX.25 a % is substituted instead.
    • %% β€” a %.

🧚 the peer argument

This one depends on whether you're running AX.25, NET/ROM or Rose. There are five formats:

  1. default
  2. parameters
  3. callsign
  4. callsign@node
  5. @node
  • Format 1 (default) β€” used by AX.25, NET/ROM and Rose to say that all callsigns on a given port should be matched. The default line is usually the last of the callsign entry lines, so that the more specific entries actually get a chance to match first ✨.
  • Format 2 (parameters) β€” this one is not a callsign entry used by any incoming connections, bestie, it's a whole different creature. It's a way to specify default values for parameters like Window, T1, T2, T3, Idle and N2. Used by AX.25, NET/ROM and Rose.
  • Format 3 (callsign) β€” used by AX.25, NET/ROM and Rose to specify the callsign of the remote station to match the callsign entry line. If no SSID is given, the callsign matches anything with the same callsign and any SSID. Give an SSID and the callsign has to match exactly. With NET/ROM and Rose, this entry does not say which node the originating callsign comes from.
  • Format 4 (callsign@node) β€” used by NET/ROM and Rose to specify both the callsign of the remote station and the remote node to match the callsign entry line. No SSID in the callsign part? Then it matches the same callsign with any SSID. Give an SSID and it matches exactly πŸ’«.
  • Format 5 (@node) β€” used by NET/ROM and Rose to specify only the address of the remote node to match the callsign entry line. Which means: all remote users at that node match this entry 🫢.

🌈 comments + the extAX25 era

Comments get embedded in the config file by putting a # in the first column.

Okay so here's a fun one: ax25d can now honour AX.25 TCP/IP mode-VC connections in a special way πŸ”₯. So there's a new port specific option, parameters_extAX25, with the following options, separated by spaces:

parameters_extAX25
     VC-debug
     VC-reject-login|VC-wait-login|VC-login-ok
     VC-disc-on-linkfailure-msg, VC-send-failure-msg, VC-log-connections

Recommended settings in ax25d.conf β€” take your pick:

parameters_extAX25 VC-wait-login VC-disc-on-linkfailure-msg VC-log-connections

or

parameters_extAX25 VC-reject-login VC-send-failure-msg VC-log-connections

πŸ’œ FILES πŸ’œ

  • /etc/ax25/ax25d.conf

⭐ SEE ALSO ⭐

ax25(4), ax25wrapper(8), netrom(4), rose(4), axports(5), nrports(5), rsports(5), ax25d(8).


🌸 okay that's the whole page, you ate that πŸ“ this cutie was brought to you by Linux, dated 25 May 2015 β€” go configure something iconic, mwah πŸ’–