1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
4 <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
5 <TITLE>The DXSpider Installation Manual v1.49: Setting up the AX25 Utilities</TITLE>
6 <LINK HREF="installation-4.html" REL=next>
7 <LINK HREF="installation-2.html" REL=previous>
8 <LINK HREF="installation.html#toc3" REL=contents>
9 <link rel=stylesheet href="style.css" type="text/css" title="default stylesheet">
12 <A HREF="installation-4.html">Next</A>
13 <A HREF="installation-2.html">Previous</A>
14 <A HREF="installation.html#toc3">Contents</A>
16 <H2><A NAME="s3">3. Setting up the AX25 Utilities</A></H2>
18 <P>The aim of this section is not to fully cover the installation
19 and configuration of all the possible ax25 modules. I will
20 attempt to cover a simple installation and configure 2 serial
21 ports as if they had TNC's on them. I will also show what
22 additional configuration the DXSpider program requires.
24 <P>Please bear in mind that I am basing this section on a RedHat
25 7.1 distribution, if you are using SuSe or any other distibution
26 then your mileage may vary. I will be happy to make any changes
27 and additions if you email me any errors or distribution specific
30 <P>You would probably benefit from reading the
31 <A HREF="http://www.fokus.gmd.de/linux/HOWTO/html_single/AX25-HOWTO.html#AEN151">AX25-HOWTO</A> which is much more
32 comprehensive and an interesting configuration program is also available
34 <A HREF="http://1409.org/projects/index.html">ax25-config</A> which
35 may help you to configure things.
37 <P>The following files are extracts from the working files at GB7MBC and
38 are in daily use. However, there are many ways that you can configure the
39 ax25 utils, this is just the one I use, it does not mean it is necessarily
40 the best or for that matter, the right way!
42 <H2><A NAME="ss3.1">3.1 Getting Started</A>
45 <P>There are 2 things you need to do initially. You need to get the
46 3 files required for the ax25 installation and you need to make
47 some changes to the kernel configuration.
49 <P>The first thing is to get the versions of the ax25 utils that match
50 your kernel. You may also wish to get a node package of some kind.
51 There are 2 main node packages in use of which I shall keep to the
52 original by Tomi Manninen, OH2BNS as this is included in the ax25
53 rpms as standard. The other is
54 <A HREF="ftp://ftp.funet.fi/pub/ham/packet/linux/awznode/">AWZNode</A> by IZ5AWZ.
56 <P>For 2.4 kernels you need these files...
61 <A HREF="ftp://ftp.rpmfind.net/linux/redhat/7.1/en/powertools/i386/RedHat/RPMS/libax25-0.0.7-7.i386.rpm">libax25-0.0.7-7.i386.rpm</A></LI>
63 <A HREF="ftp://ftp.rpmfind.net/linux/redhat/7.1/en/powertools/i386/RedHat/RPMS/ax25-tools-0.0.6-13.i386.rpm">ax25-tools-0.0.6-13.i386.rpm</A></LI>
65 <A HREF="ftp://ftp.rpmfind.net/linux/redhat/7.1/en/powertools/i386/RedHat/RPMS/ax25-apps-0.0.4-9.i386.rpm">ax25-apps-0.0.4-9.i386.rpm</A></LI>
68 <H2><A NAME="ss3.2">3.2 The kernel</A>
71 <P>First you need to add Amateur Radio Support to your kernel. This is
72 a main menu item and should be easily found. Within this header you
73 will find lots of options. For our purposes you need to enable
74 Amateur Radio AX.25 Level 2 Protocol, NET/ROM and the Serial Port
75 KISS Driver. For the purposes of this document I will work under the
76 assumption that you include them in the kernel fully, ie not as modules.
77 If you need to look at compiling your kernel for ax25 more fully, I would
78 refer to the excellent
79 <A HREF="http://www.fokus.gmd.de/linux/HOWTO/html_single/AX25-HOWTO.html#AEN151">AX25-HOWTO</A><P>
80 <P>I should say at this stage that NET/ROM is not mandatory. If you do not use it
81 simply ignore any instruction concerning it.
83 <P>Now recompile your kernel in the normal way and reboot your system.
85 <H2><A NAME="ss3.3">3.3 Installing the RPM's</A>
88 <P>Now install the RPM's you downloaded, libax25 first, then ax25-tools,
93 rpm -ivh libax25-0.0.7-7.i386.rpm
94 rpm -ivh ax25-tool-0.0.6-13.i386.rpm
95 rpm -ivh ax25-apps-0.0.4-9.i386.rpm
99 <H2><A NAME="ss3.4">3.4 Configuration</A>
102 <P>You will find the configuration files in /etc/ax25. These consist of
113 <P>These are the main files. You will find other files but they do not
114 have any use unless you are wanting to use that particular protocol,
115 Rose or axip for example.
117 <P>NOTE:- before we start it is important to realise that every interface
118 requires a different SSID. You should be able to follow this in the
121 <H2><A NAME="ss3.5">3.5 axports</A>
124 <P>This file sets up the ax25 ports you want to use. An example is below
125 for a standard TNC2 ...
129 #portname callsign baudrate paclen window description
130 2m gb7mbc-2 19200 256 2 2m port on 144.900MHz
131 4m gb7mbc-4 19200 256 2 4m port on 70.325MHz
135 <P>Note that the portnames have to be unique.
137 <P>The file headings are as follows ...
140 portname - The name you will refer to the port by
141 callsign - The ax25 callsign you want to assign to the port
142 baudrate - The speed you communicate between TNC and computer
143 paclen - The maximum packet length for ax25 connections
144 window - The ax25 window parameter. This is like 'maxframe'
145 description - A textual description of the port
148 <H2><A NAME="ss3.6">3.6 nrports</A>
151 <P>This file sets up the netrom ports you want to use. An example is below
152 and includes a port for both cluster and node. You will see why we need
157 #portname callsign alias paclen description
158 netrom gb7mbc-8 BARE 236 Node Netrom Port
159 netrom2 gb7mbc-9 MBCDX 236 Cluster Netrom Port
163 <P>Note that the portnames have to be unique.
165 <P>The file headings are as follows ...
168 portname - The name you will refer to the port by
169 callsign - This is the callsign that NET/ROM traffic from this
171 alias - The NET/ROM alias this port will be assigned
172 paclen - The maximum size of NET/ROM frames transmitted
173 description - A textual description of the port
176 <H2><A NAME="ss3.7">3.7 nrbroadcast</A>
179 <P>This file sets up the netrom broadcast qualities. An example is below ...
183 #axport min_obs def_qual worst_qual verbose
188 <P>The file headings are as follows ...
191 axport - The port name in axports that you wish to broadcast
193 min_obs - The minimum obsolescence value for the port
194 def_qual - The default quality for the port
195 worst_qual - The worst quality for the port. Any routes under
196 this quality will be ignored
197 verbose - This flag determines whether you will only broadcast
198 your own node (0) or all known nodes (1)
201 <H2><A NAME="ss3.8">3.8 ax25d.conf</A>
204 <P>This file controls any incoming ax25 and NET/ROM connections and steers
205 them to the relevant program. There are lots of configuration options
206 you can set here, however they are well covered in the AX25-HOWTO. For
207 our purposes I will show a typical set of parameters. An example is
213 parameters 2 1 6 900 * 15 0
215 default * * * * * * - sysop /spider/src/client client %u ax25
218 parameters 2 1 6 900 * 15 0
220 default * * * * * * 0 root /usr/sbin/node node
223 parameters 2 1 6 900 * 15 0
225 default * * * * * * - sysop /spider/src/client client %u ax25
228 parameters 2 1 6 900 * 15 0
230 default * * * * * * 0 root /usr/sbin/node node
233 parameters 1 10 * * * 3 *
235 default * * * * * * - sysop /spider/src/client client %u ax25
238 parameters 1 10 * * * 3 *
240 default * * * * * * 0 root /usr/sbin/node node
244 <P>There are a few things to take note of here. Firstly, all ax25
245 sections are wrapped in [ ] and all NET/ROM sections are wrapped in
246 < >. Secondly you should be able to see that anyone who forgets to
247 set their callsign in a TNC and tries to connect with the standard
248 NOCALL set into their TNC will not connect, the 'L' means 'lockout'.
249 Lastly and importantly, notice the order of the sections. They are
250 all done in interface order.
252 <P>You should be able to see that the normal line for access to the
253 cluster is like this ..
257 default * * * * * * - sysop /spider/src/client client %u ax25
261 <P>however, if you wish your users to be able to use SSID's on their callsigns ..
265 default * * * * * * - sysop /spider/src/client client %s ax25
269 <P>For most purposes this is not desirable. The only time you probably will
270 need this is when you need to allow other cluster nodes that are using SSID's
271 in. In this case it would probably be better to use the first example and
272 then add a specific line for that node like this:
276 GB7DJK-2 * * * * * * - sysop /spider/src/client client gb7djk-2 ax25
277 default * * * * * * - sysop /spider/src/client client %u ax25
281 <H2><A NAME="ss3.9">3.9 node.conf</A>
284 <P>For those of you that wish to run the node, you need to set up the
285 node.conf file. There are a couple of additional files, node.perms is
286 very similar to the way ftp permissions are set up in NOS systems and
287 node.motd is the message anyone logging into the node will get.
288 The node.conf file sets all the parameters of the node as you would
289 expect. An example is below ...
293 # /etc/ax25/node.conf - LinuxNode configuration file
297 # Idle timeout (seconds).
301 # Timeout when gatewaying (seconds).
305 # Visible hostname. Will be shown at telnet login.
307 HostName gb7mbc.ampr.org
315 #LocalNet 44.139.8.48/32
317 # Command aliases. See node.conf(5) for the meaning of the uppercase
318 # letters in the name of the alias.
320 ##Alias CAllbook 'telnet %{2:44.17.0.53} 1235 %1 s'
321 #Alias CONVers 'telnet %{2:oh2ti} 3600 "/n %u %{1:139}\n/w *"'
322 #Alias CLuster 'c hkiclh'
323 Alias CONV "telnet lurpac 3600"
324 Alias BBS "c 70cm gb7crv"
325 Alias DXC "telnet localhost 9000"
326 Alias MUD "telnet homer 4000"
327 ##Alias TEMP "finger temp@mary.g6phf"
328 ##Alias TNOS "c ip1 gb7mbc-5"
329 ##Alias TUtor "telnet gb7mbc 3599"
335 # External commands. See node.conf(5) for the meaning of the uppercase
336 # letters in the name of the extcmd.
338 # Flags: 1 Run command through pipe
341 #ExtCmd TPM 3 nobody /usr/bin/finger finger tpm
342 #ExtCmd ECho 1 nobody /bin/echo echo \%U \%u \%S \%s \%P \%p \%R \%r \%T \%t \%\% \%0 \%{1:foobar} \%{2} \%3 \%4 \%5
346 NodeId "\nBARE:GB7MBC-1"
347 #NodeId \033[01;31m***\033[0m
349 # Netrom port name. This port is used for outgoing netrom connects.
357 # The escape character (CTRL-T)
361 # Resolve ip numbers to addresses?
368 #NodePrompt "%s@%h \%i> "
369 NodePrompt "\nBARE:GB7MBC-1 \%i > "
370 #NodePrompt "\a\033[36m%U\033[0m de \033[01;32m#LNODE\033[0m:\033[01;33mOH2BNS-10\033[0m> "
374 <P>This should be fairly obvious I hope.
376 <H2><A NAME="ss3.10">3.10 Getting it all running</A>
379 <P>Ok, now we have all the relevant files configured, the next step is to get
382 <P>The first thing to do is attach the TNC's. Your TNC's should be in KISS mode
383 and connected to the serial ports involved.
385 <P>You now use the 'kissattach' command to connect the TNC's to the system like this ...
389 kissattach /dev/ttyS0 2m 44.131.96.199
390 kissattach /dev/ttyS1 4m 44.131.96.199
394 <P>Assuming that 44.131.96.199 is your IP address. The devices ttyS0 and ttyS1 are com1 and
395 com2 respectively. Now we can set some parameters ...
399 kissparms -p 2m -t 150 -l 150 -s 50 -r 50
400 kissparms -p 4m -t 150 -l 150 -s 50 -r 50
404 <P>The command 'man kissparms' will give you the explanation of the switches.
406 <P>Now we need to attach the NET/ROM ports in the same way ...
415 <P>All of the above can be put in a file and called from /etc/rc.d/rc.local. Put all
416 the above commands in a file called rc.ax25 and put a line in rc.local to call it.
418 <P>Now you can start the daemons that set everything in motion ...
427 <P>All should now be running. All that remains is to get the node working for telnet
428 connections. If nothing else, this will allow you to connect to the node yourself
429 to check on connection status etc. There are 2 files that need to be edited.
431 <P>First edit /etc/services and add
435 node 3000/tcp #OH2BNS's Node Software
439 <P>Assuming you want it to run on port 3000
441 <P>Now cd /etc/xinetd.d and edit a new file called node. It should look like this ...
446 # unencrypted username/password pairs for authentication.
452 server = /usr/sbin/node
453 log_on_failure += USERID
459 <P>You now need to restart the xinetd daemon. First find out what the PID is
468 <P>You will get a reply something like this ...
472 root 592 0.0 0.1 2256 620 ? S Feb07 0:00 xinetd -stayalive -reuse -pidfile /var/run/xinetd.pid
476 <P>The PID or Process ID is 592 in this case so now we can issue the command ...
484 <P>All should now be operational and you should be able to log into the node by
485 using a telnet session to the relevant port, like so ...
489 telnet localhost 3000
493 <P>If that works, you are just about there. you should (assuming you have radios connected
494 to the TNC's) be able to connect out to other stations and receive incoming ax25 and
498 <A HREF="installation-4.html">Next</A>
499 <A HREF="installation-2.html">Previous</A>
500 <A HREF="installation.html#toc3">Contents</A>