-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathstartax25_dw
78 lines (65 loc) · 2.3 KB
/
startax25_dw
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#!/bin/bash
# Script for connecting my Local Digipeater DB0HFT running Xnet
#
# after connecting DB0HFT with axcall i can get my Hamnet IP
# with command 'getip'
#
# Change MY_CALL below to your Callsign, same as in axports
# Change MY_IP to the IP you got from the Digipeater
MY_CALL=MYCALL-1
MY_IP=44.149.140.55
DW_CFG=/etc/ax25/direwolf.conf
case "$1" in
start)
echo "Starting Direwolf"
direwolf -t 0 -c ${DW_CFG} -p &
#Check if Direwolf is running
sleep 5
if [ -z "`ps ax | grep -v grep | grep direwolf`" ]; then
echo -e "\nERROR: Direwolf was not started"
exit 1
fi
echo "Adding KISS Connection on PTY port /tmp/kisstnc"
mkiss -s 19200 -x 1 /tmp/kisstnc > /tmp/unix98
#This creates a PTS interface like "/dev/pts/3"
export PTS0=`more /tmp/unix98 | grep -w /dev | cut -b -11`
echo "PTS0 device: $PTS0"
kissattach $PTS0 ax0 > /tmp/ax25-config.tmp
awk '/device/ { print $7 }' /tmp/ax25-config.tmp > /tmp/ax25-config1-tmp
read Device < /tmp/ax25-config1-tmp
#/bin/echo 1 >/proc/sys/net/ax25/ax0/ip_default_mode
#kissparms -p DJ1AN-1 -t 300 -l 30 -s 20 -r 80 -f n
# experimental Parameters, maybe only for direct Links?
#echo 7 >/proc/sys/net/ax25/ax0/standard_window_size
#echo 100 >/proc/sys/net/ax25/ax0/t1_timeout
#echo 30 >/proc/sys/net/ax25/ax0/t2_timeout
#echo 30000 >/proc/sys/net/ax25/ax0/t3_timeout
#echo 30 >/proc/sys/net/ax25/ax0/maximum_retry_count
# https://thomask.sdf.org/blog/2017/08/06/improving-arp-performance-on-slow-ax-25-links.html
#echo 5000 > /proc/sys/net/ipv4/neigh/ax0/retrans_time_ms
#echo 1200000 > /proc/sys/net/ipv4/neigh/ax0/base_reachable_time_ms
axparms -route add ax0 db0hft -ipmode vc
axparms --setcall ax0 ${MY_CALL}
ip address add ${MY_IP}/32 dev ax0
arp -H ax25 -i ax0 -s 44.149.140.50 db0hft
ip route add 44.149.140.50 dev ax0
ip route add 44.130.0.0/16 via 44.149.140.50
ip route add 44.148.0.0/15 via 44.149.140.50
ip route add 44.224.0.0/15 via 44.149.140.50
#Blocks outgoing Multicast on AX Device
iptables -A OUTPUT -s ${MY_IP}/32 -d 224.0.0.0/4 -j REJECT
;;
stop)
killall -TERM mkiss
killall -TERM kissattach
killall -TERM direwolf
arp -d 44.149.140.50
iptables -D OUTPUT -s ${MY_IP}/32 -d 224.0.0.0/4 -j REJECT
exit 0
;;
*)
echo "Usage: startax25_dw {start|stop}"
exit 0
;;
esac
exit 0