a simple KISS/AX.25 implementation with TAP interface
the detail of KISS protocol: see https://www.ax25.net/kiss.aspx
# kisstun
usage: kisstun -s [serial speed] -l [serial device] -t [tun device] -xs[callsign]
#
Note: no space required between -xs
and callsign
.
# ifconfig tap0 create
# ifconfig tap0 inet 192.168.200.1/24
# ifconfig tap0 mtu 255 up
# kisstun -s 9600 -l /dev/tty00 -t /dev/tap0 -xsN0CALL-2 &
You can use kisstun -p 8001 -l 192.168.100.1 -t /dev/tap0 -xsN0CALL-2 &
to use with Dire Wolf instead of TNC.
# ip tuntap add mode tap dev tap0
# ip addr add 192.168.200.2/24 dev tap0
# ip link set up mtu 255 dev tap0
# kisstun -s 9600 -l /dev/ttyS1 -t tap0 -xsN0CALL-8 &
Prepare /etc/ax25/axports, use "1" for port name in this example.
# /sbin/kissattach /dev/ttyS1 1
# /sbin/kissparms -c 1 -p 1
# ip addr add 192.168.200.2/24 dev ax0
Note: -x
options do not require space between options and their argument.
-s <speed>
- Work with serial port,
<speed>
bps. Suitable for hardware TNC. -p <port>
or-P <port>
- Work with TCP/IP, suitable for software TNC (e.g. Dire Wolf).
-p
works as a client, port number to connect.-P
works as a server, port number for accept (be careful for security). -l <serial device>
or-l <IP address>
- Target serial device (i.e.
/dev/ttyS1
) when use with-s
option. Accept/connect IP address (i.e.0.0.0.0
) when use with-p
or-P
option. -t <TAP device>
- TAP device name, i.e.
/dev/tap0
for *BSD users. Linux uses the name declared atip tuntap add mode tap dev
. -f
- (serial port only) Enable RTS/CTS hardware handshaking, default disable.
-xs<mycall>
- Operator callsign, mandatory.
-xb<broadcastcall>
- Callsign for broadcast packet, default
-xbQST
. -xo<octet>
- Emulated unicast MAC address for 0th octet, default
-xo0xfe
. -xn
- Accept source>source packet (it is observed when ARP is disabled on Linux), default reject.
-xq<loglevel>
- Set log level (
0
is quiet), default-xq255
. -xma
- Enable multicast packet, default disable.
-xmx
- Enable multicast address encoder, use with
-xma
. Default disable. If the encoder is enabled, destination 33:33:xx:xx:xx:xx packets will be converted to callsign started with,P
to,_
and vice versa. Destination 01:00:5e:xx:xx:xx packets will be`%X
to`%[
. Other multicast packets or the encoder is disabled, multicast packets are sent as broadcast. -xmi
- Enable all multicast IP address transaction. Default disable; multicast IP addresses (224.0.0.0/4 and FF00::/8) except FF02:0:0:0:0:1:FF00/104 (Solicited-Node Address) are blocked.
-x6
- Enable IPv6 transaction, default disable. Due to NDP (Neighbor Discovery Protocol) uses IPv6 multicast, using
-xma
option is recommended.
No plan to support digipeater.
MIT License
AX.25 Transport Layer Drivers for TCP/IP (KB2ICI, N2KBG 1995)
Thanks to SAGAMI-NET members that bring me to AX.25 network world.