The DXSpider Installation and Administration Manual
Ian Maude, G0VGS, (ianmaude@btinternet.com)
- Version 1.33 (Revision 3) February 2001
+ Version 1.34 (Revision 1.01) April 2001
A reference for SysOps of the DXSpider DXCluster program.
______________________________________________________________________
- 1. Installation (Original version by Iain Phillips, G0RDI)
+ 1. Installation (Original version by Iain Philipps, G0RDI)
1.1 Introduction
1.2 Preparation
1.3 Installing the software
1.4 Setting callsigns etc
1.5 Starting up for the first time
+ 1.6 The Client program
- 2. The Client program
+ 2. Quick installation guide
3. Configuration
______________________________________________________________________
- 1\b1.\b. I\bIn\bns\bst\bta\bal\bll\bla\bat\bti\bio\bon\bn (\b(O\bOr\bri\big\bgi\bin\bna\bal\bl v\bve\ber\brs\bsi\bio\bon\bn b\bby\by I\bIa\bai\bin\bn P\bPh\bhi\bil\bll\bli\bip\bps\bs,\b, G\bG0\b0R\bRD\bDI\bI)\b)
+ 1\b1.\b. I\bIn\bns\bst\bta\bal\bll\bla\bat\bti\bio\bon\bn (\b(O\bOr\bri\big\bgi\bin\bna\bal\bl v\bve\ber\brs\bsi\bio\bon\bn b\bby\by I\bIa\bai\bin\bn P\bPh\bhi\bil\bli\bip\bpp\bps\bs,\b, G\bG0\b0R\bRD\bDI\bI)\b)
1\b1.\b.1\b1.\b. I\bIn\bnt\btr\bro\bod\bdu\buc\bct\bti\bio\bon\bn
- This section describes the installation of DX Spider v1.35 on a RedHat
- Linux Distribution. I do not intend to try and cover the installation
- of Linux or the setup of the AX25 utilities. If you need help on this
- then read Iains original HOWTO on the DXSpider website.
+ This section describes the installation of DX Spider v1.46 on a RedHat
+ Linux Distribution. Wherever possible I will try to include
+ differences for other distributions. I do not intend to try and cover
+ the installation of Linux or the setup of the AX25 utilities. If you
+ need help on this then read Iains original installation guide that
+ comes with the Spider distribution.
I am assuming a general knowledge of Linux and its commands. You
editor.
- The crucial ingredient for all of this is Perl 5.004. Now I know Perl
- 5.005 is out and this will almost certainly work with it, but RedHat
- 5.1 comes with 5.004. _\bB_\be _\bW_\ba_\br_\bn_\be_\bd, earlier versions of RedHat d\bdo\bo n\bno\bot\bt
- come with 5.004 as standard, you need to upgrade
+ The crucial ingredient for all of this is Perl. Earlier versions of
+ Spider required perl 5.004, however it is now _\bS_\bT_\bR_\bO_\bN_\bG_\bL_\bY recommended
+ that you use at least version 5.005_03 as this is the version being
+ used in the development of Spider.
In addition to the standard Red Hat distribution you will require the
- following CPAN modules: -
+ following modules from http://www.cpan.org/CPAN.html ...
+\bo Data-Dumper-2.10.tar.gz
- +\bo FreezeThaw-0.3.tar.gz
-
- +\bo MLDBM-2.00.tar.gz
-
+\bo TimeDate-1.08.tar.gz
+\bo IO-1.20.tar.gz
+\bo Net-Telnet-3.02.tar.gz
+
+\bo Curses-1.05.tar.gz
+\bo Time-HiRes-01.20.tar.gz
I will assume that you have already downloaded the latest tarball of
the DXSpider software and are ready to install it. I am assuming
- version 1.35 for this section but of course you would use the latest
+ version 1.46 for this section but of course you would use the latest
version.
# cd ~sysop
- # tar xvfz spider-1.35.tar.gz
+ # tar xvfz spider-1.46.tar.gz
# ln -s ~sysop/spider /spider
# groupadd -g 251 spider (or another number)
P\bPL\bLE\bEA\bAS\bSE\bE U\bUS\bSE\bE C\bCA\bAP\bPI\bIT\bTA\bAL\bL L\bLE\bET\bTT\bTE\bER\bRS\bS F\bFO\bOR\bR C\bCA\bAL\bLL\bLS\bSI\bIG\bGN\bNS\bS
- DON'T alter the DXVars.pm (or any other file) in /spider/perl, they
- are overwritten with every release. Any files or commands you place in
- /spider/local or /spider/local_cmd will automagically be used in
- preference to the ones in /spider/perl EVEN while the cluster is
- running!
+ DON'T alter any file in /spider/perl, they are overwritten with every
+ release. Any files or commands you place in /spider/local or
+ /spider/local_cmd will automagically be used in preference to the ones
+ in /spider/perl EVEN while the cluster is running!
Save the new file and change directory to ../perl ....
- $ create_sysop.pl
+ $ ./create_sysop.pl
- $ cluster.pl
- DXSpider DX Cluster Version 1.35
+ $ ./cluster.pl
+ DXSpider DX Cluster Version 1.46
Copyright (c) 1998 Dirk Koopman G1TLH
loading prefixes ...
loading band data ...
If all is well then login on another term or console as _\bs_\by_\bs_\bo_\bp and cd
- to /spider/perl. Now issue the following command ...
- $ client.pl
+ to /spider/src. Now issue the following command ...
+
+ $ ./client
and both the cluster and the client should return to Linux prompts.
- 2\b2.\b. T\bTh\bhe\be C\bCl\bli\bie\ben\bnt\bt p\bpr\bro\bog\bgr\bra\bam\bm
+ 1\b1.\b.6\b6.\b. T\bTh\bhe\be C\bCl\bli\bie\ben\bnt\bt p\bpr\bro\bog\bgr\bra\bam\bm
In earlier versions of Spider, all the processes were Perl scripts.
This was fine but with a lot of users your computer memory would soon
small C program called _\bc_\bl_\bi_\be_\bn_\bt. Leave it in this directory.
+
+ 2\b2.\b. Q\bQu\bui\bic\bck\bk i\bin\bns\bst\bta\bal\bll\bla\bat\bti\bio\bon\bn g\bgu\bui\bid\bde\be
+
+ This section is designed for experienced Spider sysops who want to
+ install Spider from scratch. It is simply a check list of things that
+ need to be done without any explanations. The name in brackets at the
+ end of each line is the user that should be doing that process.
+
+
+ +\bo Login as root
+
+ +\bo Get the additional CPAN modules and install them (root)
+
+ +\bo Create the "sysop" user and set a password (root)
+
+ +\bo Put the Spider tarball in sysop and untar it (root)
+
+ +\bo ln -s sysop/spider /spider (root)
+
+ +\bo groupadd -g 251 spider (root)
+
+ +\bo Add any more users you need to the group entry in /etc/group (root)
+
+ +\bo Set the permissions on the spider tree (root)
+
+ +\bo Fix permissions on ax25_call and netrom_call (root)
+
+ +\bo Login as the sysop user
+
+ +\bo cd to /spider (sysop)
+
+ +\bo mkdir local (sysop)
+
+ +\bo mkdir local_cmd (sysop)
+
+ +\bo cp perl/DXVars.pm.issue local/DXVars.pm (sysop)
+
+ +\bo cd to /spider/local and edit DXVars to set your details (sysop)
+
+ +\bo cd ../perl (sysop)
+
+ +\bo ./create_sysop.pl (sysop)
+
+ +\bo ./cluster.pl (sysop)
+
+ Spider should now be running and you should be able to login using the
+ client program.
+
+
+ +\bo Login as root
+
+ +\bo Enter the correct line in ax25d.conf (root)
+
+ +\bo Enter the correct line in /etc/services (root)
+
+ +\bo Enter the correct line in /etc/inetd.conf (root)
+
+ +\bo killall -HUP inetd (root)
+
+ Spider should now be able to accept logins via telnet, netrom and
+ ax25.
+
+
+ +\bo Login as sysop
+
+ +\bo Start the cluster (sysop)
+
+ +\bo set/node and type for links (sysop)
+
+ +\bo Write any connect scripts (sysop)
+
+ +\bo Edit /spider/crontab as required (sysop)
+
+ +\bo Edit any other files as necessary (sysop)
+
+ +\bo Set filters, hops and forwarding files (sysop)
+
+ +\bo Login as root
+
+ +\bo Enter the correct line in /etc/inittab (root)
+
+
3\b3.\b. C\bCo\bon\bnf\bfi\big\bgu\bur\bra\bat\bti\bio\bon\bn
+
+
+
3\b3.\b.1\b1.\b. A\bAl\bll\blo\bow\bwi\bin\bng\bg a\bax\bx2\b25\b5 c\bco\bon\bnn\bne\bec\bct\bts\bs f\bfr\bro\bom\bm u\bus\bse\ber\brs\bs
As stated previously, the aim of this document is not to tell you how
+ or, if you wish your users to be able to use SSID's on their callsigns
+ ..
+
+
+
+ default * * * * * * - sysop /spider/src/client client %s ax25
+
- Now login as _\bs_\by_\bs_\bo_\bp and cd spider/perl. You can test that spider is
+ Now login as _\bs_\by_\bs_\bo_\bp and cd spider/src. You can test that spider is
accepting telnet logins by issuing the following command ....
- client.pl login telnet
+ ./client login telnet
You should now get the login prompt and be able to login as before.
-
-
3\b3.\b.3\b3.\b. S\bSe\bet\btt\bti\bin\bng\bg u\bup\bp n\bno\bod\bde\be c\bco\bon\bnn\bne\bec\bct\bts\bs
In order to allow cluster node connections, spider needs to know that
Start up the cluster as you did before and login as the sysop with
- client.pl. The cluster node I am wanting to make a connection to is
+ client. The cluster node I am wanting to make a connection to is
GB7BAA but you would obviously use whatever callsign you required. At
the prompt type ...
-
The case does not matter as long as you have a version of DXSpider
later than 1.33. Earlier versions required the callsign to be in
upper case.
That is now set, it is as simple as that. To prove it, login on yet
- another console as sysop and issue the command ...
+ another console as sysop, cd to spider/src and issue the command ...
- client.pl gb7baa (using the callsign you set as a node)
+ ./client gb7baa (using the callsign you set as a node)
- client.pl gb7baa
+ ./client gb7baa
PC38^GB7MBC^~
+
+
+
If the callsign you just set up as a cluster node is for an incoming
connect, this is all that needs to be done. If the connection is to
be outgoing then a connection script needs to be written.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
# All lines starting with a # are ignored, as are completely
blank lines.
-
-
- timeout 60
- abort (Busy|Sorry|Fail)
- # don't forget to chmod 4775 netrom_call!
- connect ax25 /usr/sbin/netrom_call bbs gb7djk g1tlh
- # you can leave this out if you call the script 'gb7dxm'
- client gb7dxm ax25
+ timeout 60
+ abort (Busy|Sorry|Fail)
+ # don't forget to chmod 4775 netrom_call!
+ connect ax25 /usr/sbin/netrom_call bbs gb7djk g1tlh
+ # you can leave this out if you call the script 'gb7dxm'
+ client gb7dxm ax25
client gb7djk telnet
-
-
-
Both these examples assume that everything is set up properly at the
other end. You will find other examples in the /spider/examples
directory.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- <- D G1TLH connect gb7djk-1
- -> D G1TLH connection to GB7DJK-1 started
- -> D G1TLH G1TLH de GB7DJK 13-Dec-1998 2046Z >
- timeout set to 15
- CONNECT sort: telnet command: dirkl.tobit.co.uk
- CHAT "login" -> "gb7djk"
- received "
- Red Hat Linux release 5.1 (Manhattan)
- Kernel 2.0.35 on an i586
- "
- received "login: "
- sent "gb7djk"
- CHAT "word" -> "gb7djk"
- received "gb7djk"
- received "Password: "
- sent "gb7djk"
- Connected to GB7DJK-1, starting normal protocol
- <- O GB7DJK-1 telnet
- -> B GB7DJK-1 0
- GB7DJK-1 channel func state 0 -> init
- <- D GB7DJK-1
- <- D GB7DJK-1 Last login: Sun Dec 13 17:59:56 from dirk1
- <- D GB7DJK-1 PC38^GB7DJK-1^~
- <- D GB7DJK-1 PC18^ 1 nodes, 0 local / 1 total users Max users 0 Uptime
- 0 00:00^5447^~
- etc
+ <- D G1TLH connect gb7djk-1
+ -> D G1TLH connection to GB7DJK-1 started
+ -> D G1TLH G1TLH de GB7DJK 13-Dec-1998 2046Z >
+ timeout set to 15
+ CONNECT sort: telnet command: dirkl.tobit.co.uk
+ CHAT "login" -> "gb7djk"
+ received "
+ Red Hat Linux release 5.1 (Manhattan)
+ Kernel 2.0.35 on an i586
+ "
+ received "login: "
+ sent "gb7djk"
+ CHAT "word" -> "gb7djk"
+ received "gb7djk"
+ received "Password: "
+ sent "gb7djk"
+ Connected to GB7DJK-1, starting normal protocol
+ <- O GB7DJK-1 telnet
+ -> B GB7DJK-1 0
+ GB7DJK-1 channel func state 0 -> init
+ <- D GB7DJK-1
+ <- D GB7DJK-1 Last login: Sun Dec 13 17:59:56 from dirk1
+ <- D GB7DJK-1 PC38^GB7DJK-1^~
+ <- D GB7DJK-1 PC18^ 1 nodes, 0 local / 1 total users Max users 0 Uptime
+ 0 00:00^5447^~
+ etc
avoid this use the following line ...
-
-
-
-
-
-
In a script, this might look like ...
- This line works fine for RedHat and SuSE distributions. The line
- required for Slackware distributions is slightly different. My thanks
- to Aurelio, PA3EZL for this information.
+
+ This line works fine for RedHat distributions. It is also fine for
+ SuSE up to 7.0. From Suse 7.1 you need to add runlevels 2 and 5 like
+ this ...
+
+
+
+ DX:235:respawn:/bin/su -c "/usr/bin/perl -w /spider/perl/cluster.pl" sysop >/dev/tty7
+
+
+
+
+
+ The line required for Slackware distributions is slightly different.
+ My thanks to Aurelio, PA3EZL for this information.
- # check every 10 minutes to see if gb7xxx is connected and if not
- # start a connect job going
- 0,10,20,30,40,50 * * * * start_connect('gb7xxx') if !connected('gb7xxx')
+
+
+ # check every 10 minutes to see if gb7xxx is connected and if not
+ # start a connect job going
+
+ 0,10,20,30,40,50 * * * * start_connect('gb7xxx') if !connected('gb7xxx')
- #
- # hop table construction
- #
- package DXProt;
- # default hopcount to use
- $def_hopcount = 5;
- # some variable hop counts based on message type
- %hopcount =
- (
- 11 => 10,
- 16 => 10,
- 17 => 10,
- 19 => 10,
- 21 => 10,
- );
- # the per node hop control thingy
- %nodehops =
- GB7ADX => { 11 => 8,
- 12 => 8,
- 16 => 8,
- 17 => 8,
- 19 => 8,
- 21 => 8,
- },
- GB7UDX => { 11 => 8,
- 12 => 8,
- 16 => 8,
- 17 => 8,
- 19 => 8,
- 21 => 8,
- },
- GB7BAA => {
- 11 => 5,
- 12 => 8,
- 16 => 8,
- 17 => 8,
- 19 => 8,
- 21 => 8,
- },
- };
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ #
+ # hop table construction
+ #
+
+ package DXProt;
+
+ # default hopcount to use
+ $def_hopcount = 5;
+
+ # some variable hop counts based on message type
+ %hopcount =
+ (
+ 11 => 10,
+ 16 => 10,
+ 17 => 10,
+ 19 => 10,
+ 21 => 10,
+ );
+
+
+ # the per node hop control thingy
+
+
+ %nodehops =
+
+ GB7ADX => { 11 => 8,
+ 12 => 8,
+ 16 => 8,
+ 17 => 8,
+ 19 => 8,
+ 21 => 8,
+ },
+
+ GB7UDX => { 11 => 8,
+ 12 => 8,
+ 16 => 8,
+ 17 => 8,
+ 19 => 8,
+ 21 => 8,
+ },
+ GB7BAA => {
+ 11 => 5,
+ 12 => 8,
+ 16 => 8,
+ 17 => 8,
+ 19 => 8,
+ 21 => 8,
+ },
+ };
will bring your changes into effect.
+
5\b5.\b.2\b2.\b. I\bIs\bso\bol\bla\bat\bti\bin\bng\bg n\bne\bet\btw\bwo\bor\brk\bks\bs
It is possible to isolate networks from each other on a "gateway" node
+
+
+
+
+
0 = frequency
1 = call
2 = date in unix format
directly or nested under directories. One use for this would be to
store DX bulletins such as the OPDX bulletins. These can be listed
and read by the user. To keep things tidy, make a directory under
- /spider/packclus called _\bb_\bu_\bl_\bl_\be_\bt_\bi_\bn_\bs. Now copy any OPDX or similar
+ /spider/packclus called _\bb_\bu_\bl_\bl_\be_\bt_\bi_\bn. Now copy any OPDX or similar
bulletins into it. These can be listed by the user in the same way as
- above using the _\bs_\bh_\bo_\bw_\b/_\bf_\bi_\bl_\be_\bs command with an extension for the bulletins
+ above using the _\bs_\bh_\bo_\bw_\b/_\bf_\bi_\bl_\be_\bs command with an extension for the bulletin
directory you have just created, like this ....
- show/files bulletins
+ show/files bulletin
sh/files
- bulletins DIR 20-Dec-1999 1715Z news 1602 14-Dec-1999 1330Z
+ bulletin DIR 20-Dec-1999 1715Z news 1602 14-Dec-1999 1330Z
You can see that in the files area (basically the packclus directory)
- there is a file called _\bn_\be_\bw_\bs and a directory called _\bb_\bu_\bl_\bl_\be_\bt_\bi_\bn_\bs. You can
+ there is a file called _\bn_\be_\bw_\bs and a directory called _\bb_\bu_\bl_\bl_\be_\bt_\bi_\bn. You can
also see that dates they were created. In the case of the file _\bn_\be_\bw_\bs,
you can also see the time it was last modified, a good clue as to
whether the file has been updated since you last read it. To read the
- To look what is in the bulletins directory you issue the command ....
+ To look what is in the bulletin directory you issue the command ....
- show/files bulletins
+ show/files bulletin
opdx390 21381 29-Nov-1999 1621Z opdx390.1 1670 29-Nov-1999 1621Z
opdx390.2 2193 29-Nov-1999 1621Z opdx391 25045 29-Nov-1999 1621Z
opdx392 35969 29-Nov-1999 1621Z opdx393 15023 29-Nov-1999 1621Z
- type bulletins/opdx391
+ type bulletin/opdx391
Ohio/Penn DX Bulletin No. 391
The Ohio/Penn Dx PacketCluster
DX Bulletin No. 391
In later versions of Spider a simple console program is provided for
the sysop. This has a type ahead buffer with line editing facilities
and colour for spots, announces etc. To use this program, simply use
- console.pl instead of client.pl.
+ console.pl instead of client.
To edit the colours, copy /spider/perl/Console.pl to /spider/local and
1\b13\b3.\b.1\b10\b02\b2.\b. s\bsh\bho\bow\bw/\b/b\bba\bad\bds\bsp\bpo\bot\btt\bte\ber\br (\b(1\b1)\b)
- s\bsh\bho\bow\bw/\b/b\bba\bad\bds\bsp\bpo\bot\btt\bte\ber\brShow all the bad spotters in the system
+ s\bsh\bho\bow\bw/\b/b\bba\bad\bds\bsp\bpo\bot\btt\bte\ber\br Show all the bad spotters in the system
Display all the bad spotter's callsigns in the system, see