AX.25

  • It is assumed that Linux kernel you have is AX.25 ready if it is not you need to:
    • Build a new kernel with AX.25 enabled OR
    • Install the AX.25 kernel module

Below is a collection of links of good tutorials for setting up AX.25. I recommend you read them as what follows in this wiki is just a summary of what is needed to get AX.25 configured to run paclink-unix.

Install AX.25 library, apps & tools

  • I usually pull the ax25 library from Craig Small VE7FET's github repo
  • You could also install libax25, apps & tools from linux-ax25.org Main page
    • Download the 3 files under 'Latest Versions' from right hand side
    • There are other versions of these packages that have been modified or patched to be 'better' but let's get this going with the vanilla sanctioned packages first.
    • The packages available from the Debian/Ubuntu repositories tend to be at least one rev behind current so don't install from them.

Building the 3 tarballs

  • Note: build libax25 first then enable the run time Lib files so that the ax25 apps and ax25 tools use the ax25 library functions.
    • To enable run time Lib after libax25 is built, execute this as root:
echo "/usr/local/lib" >> /etc/ld.so.conf && /sbin/ldconfig
  • Note: libncurses is a build dependency for ax25-apps, be sure it is installed.
    • As root
apt-get install libncurses5-dev
  • Extract the three gzipped tar balls
tar -xvzf libax25-0.0.12-rc4.tar.gz
tar -xvzf ax25-apps-0.0.8-rc4.tar.gz
tar -xvzf ax25-tools-0.0.10-rc4.tar.gz
  • for each tar ball build the source from each of these tar balls.
    • Do not need to be root until make install
cd <appropriate directory>
./configure
make
sudo make install
  • After installing these 3 tar balls verify your AX.25 setup by running a packet spy
    • By installing a packet spy you will verify that your TNC, radio, cables & Linux AX.25 config are all working … and that's a big step.

Configure AX.25

Basic Setup for Config files

Starting AX.25 at boot up

  • You will need a script to start the ax.25 service at bootup.
  • The /etc/init.d/ax25 script points to /usr/local/etc/ax25/ax25-up to start and /usr/local/etc/ax25/ax25-down to stop the ax25 service.
    • It has four options [ start | stop | restart | status ]
  • Start by placing the ax25 script found below in /etc/init.d/ and update the start up process by executing this command as root:
cd /etc/init.d
update-rc.d ax25 defaults 95
  • NOTE according to Debian file location policy if the ax25-tools/ax25-apps are:
    • compiled from source, their config will be installed to /usr/local/etc/ax25
    • installed from a package, their config will be installed to /etc/ax25

AX.25 start-up & config scripts

startup script install

  • Scripts: ax25, ax25-up, ax25-down need to be copied/installed to these directories:
/etc/init.d/ax25
/usr/local/etc/ax25-up
/usr/local/etc/ax25-down
  • The /etc/init.d directory should ONLY contain scripts to start & stop services.
    • These services are normally started at boot time.
    • ax25-up & ax25-down are support scripts called by ax25 (read the scripts).
  • You can manually stop the ax.25 service as root:
/etc/init.d/ax25 stop
  • or start the ax.25 service as root:
/etc/init.d/ax25 start
  • or get the status of the ax.25 service:
/etc/init.d/ax25 status
  • You need to supply the complete /etc/init.d/ path because it won't be in your PATH environment.
echo $PATH
  • DO NOT put /etc/init.d/ in your path!
  • All 3 files are bash scripts (so read them) and you absolutely need to edit the ax25-up script to customize at least for your call sign and ax.25 port name.
  • Permissions on these scripts should look like this, please verify:
ls -al /etc/init.d/ax25
 
-rwxr-xr-x 1 root root 2533 Feb 24  2011 /etc/init.d/ax25
 
ls -al /usr/local/etc/ax25/ax25-*
 
-rwxr-xr-x 1 root root  1743 Feb 24  2011 /usr/local/etc/ax25/ax25-down
-rwxr-xr-x 1 root root  2758 Dec  1 16:32 /usr/local/etc/ax25/ax25-up
  • Make sure all these scripts are executable.
    • Look for the x in the ls -al response.
    • If the scripts are not executable then give them that permission as root.
chmod +x /etc/init.d/ax25
chmod +x /usr/local/etc/ax25/ax25-up
chmod +x /usr/local/etc/ax25/ax25-down

Linux AX.25 & TNC's

Note about KISS mode

Unlike the Windows programs RMS Express & Airmail, Linux AX.25 does not know about different TNCs and their command modes. The kissattach program assumes the TNC is in KISS mode. You can ensure that the TNC is in KISS mode by modifying the AX.25 startup script before kissattach is run. In the example described in this wiki that would be in the ax25-up script in /etc/ax25 or /usr/local/etc/ax25 directories.

A brief comparison of TNCs can be found here

Misc Notes

Is AX.25 Enabled in your kernel

netstat --ax25

Network Broadcast All ports

  • Note that bringing up another network interface, like AX.25 on Linux, causes any daemons that broadcast out ALL ports to broadcast out the new port as well.
    • Examples: Samba, DropBox, ntp
    • Depending on what is installed on your Linux machine you will have to go to each daemon's config to specify which ports they're allowed to broadcast on.

ntp broadcast check

  • NTP is implemented via UDP over port 123,
  • restrict ntp to using eth0 and not ax0 in /etc/ntp.conf
    • when using netstat -an you should not see any reference to the 44.128.0.0 net
interface listen eth0
interface ignore ax0
  • If you see ntp using the 44.128.0.0 net then check /etc/ntp.conf
$ netstat -an | grep 123

USB WiFi dies after kissattach

  • After running kissattach USB WiFi stops working
  • Edit file /etc/default/ifplugd as shown below
    • original lines commented out
#INTERFACES="all"
INTERFACES=wlan0
#HOTPLUG_INTERFACES="all"
HOTPLUG_INTERFACES=wlan0
plu/install_ax25.txt · Last modified: 2020/08/02 11:15 by gunn
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0