trying again after broken pipe error
[spider.git] / html / adminmanual-1.html
index d9f0454ff089291efc6d45e346f311c0cca46cc6..b9691bbba910b1158564671fd368c1fdf26dbf39 100644 (file)
 <HTML>
 <HEAD>
  <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
- <TITLE>The DXSpider Installation and Administration Manual : Installation (Original version by Iain Phillips, G0RDI)</TITLE>
+ <TITLE>The DXSpider Administration Manual v1.47: Hop control</TITLE>
  <LINK HREF="adminmanual-2.html" REL=next>
 
  <LINK HREF="adminmanual.html#toc1" REL=contents>
+<link rel=stylesheet href="style.css" type="text/css" title="default stylesheet">
 </HEAD>
 <BODY>
 <A HREF="adminmanual-2.html">Next</A>
 Previous
 <A HREF="adminmanual.html#toc1">Contents</A>
 <HR>
-<H2><A NAME="s1">1. Installation (Original version by Iain Phillips, G0RDI)</A></H2>
+<H2><A NAME="s1">1. Hop control</A></H2>
 
-<P>Last modified: 18 June 2000 by Ian Maude, G0VGS
+<P>Starting with version 1.13 there is simple hop control available on a per
+node basis. Also it is possible to isolate a network completely so that you 
+get all the benefits of being on that network, but can't pass on information
+from it to any other networks you may be connected to (or vice versa).
 <P>
-<H2><A NAME="ss1.1">1.1 Introduction</A>
+<H2><A NAME="ss1.1">1.1 Basic hop control</A>
 </H2>
 
-<P>This section describes the installation of DX Spider v1.35 on a 
-<A HREF="http://www.redhat.com">RedHat</A> 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 
-<A HREF="http://www.dxcluster.org">DXSpider</A> website.
-<P>
-<P>I am assuming a general knowledge of Linux and its commands.  You should know how to use <EM>tar</EM> and how to edit files using your favourite editor.
-<P>
-<P>The crucial ingredient for all of this is 
-<A HREF="http://www.perl.org">Perl 5.004</A>.Now I know Perl 5.005 is out and this will almost certainly work with it, but 
-<A HREF="http://www.redhat.com">RedHat 5.1</A> comes with 5.004. <EM>Be Warned</EM>, earlier versions of 
-<A HREF="http://www.redhat.com">RedHat</A> <B>do not</B> come with 5.004 as standard, you need to 
-<A HREF="ftp://upgrade.redhat.com">upgrade</A><P>
-<P>In addition to the standard Red Hat distribution you will require the following 
-<A HREF="http://www.cpan.org/CPAN.html">CPAN</A> modules: -
-<P>
-<P>
-<UL>
-<LI>            MD5-1.7.tar.gz</LI>
-<LI>            Data-Dumper-2.10.tar.gz</LI>
-<LI>            FreezeThaw-0.3.tar.gz</LI>
-<LI>            MLDBM-2.00.ar.gz</LI>
-<LI>            TimeDate-1.8.tar.gz</LI>
-<LI>            IO-1.20.tar.tgz</LI>
-<LI>            Net-Telnet-3.01.tar.gz</LI>
-<LI>            Curses-1.02.tar.gz
-</LI>
-</UL>
-<P>
-<P>
-<P><EM>Do</EM> get the latest versions of these packages and install them but use the above list as the earliest versions usable.
-<P>
-<H2><A NAME="ss1.2">1.2 Preparation</A>
-</H2>
-
-<P>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.
-<P>
-<P>Login as root and create a user to run the cluster under.  <B><I>UNDER NO CIRCUMSTANCES USE ROOT AS THIS USER!</I></B>.  I am going to use the name <EM>sysop</EM>.  You can call it anything you wish.  Depending on your security requirements you may wish to use an existing user, however this is your own choice.
-<P>
+<P>In /spider/data you will find a file called hop_table.pl.  This is the file 
+that controls your hop count settings.  It has a set of default hops on the 
+various PC frames and also a set for each node you want to alter the hops for.  
+You may be happy with the default settings of course, but this powerful tool 
+can help to protect and improve the network.  The file will look something 
+like this ...
 <P>
 <BLOCKQUOTE><CODE>
 <PRE>
-# adduser -m sysop
-</PRE>
-</CODE></BLOCKQUOTE>
-<P>
-<P>Now set a password for the user ...
-<P>
-<BLOCKQUOTE><CODE>
-<PRE>
-# passwd sysop
-# New UNIX password:
-# Retype new UNIX password:
-passwd: all authentication tokens updated successfully
-</PRE>
-</CODE></BLOCKQUOTE>
-<P>
-<H2><A NAME="ss1.3">1.3 Installing the software</A>
-</H2>
+# 
+# hop table construction
+# 
 
-<P>Now to unpack the DX Spider distribution, set symbolic links and group permissions.  Copy the tarball to /home/sysop and do the following.
-<P>
-<BLOCKQUOTE><CODE>
-<PRE>
-# cd ~sysop
-# tar xvfz spider-1.35.tar.gz
-# ln -s ~sysop/spider /spider
-# groupadd -g 251 spider       (or another number)
-</PRE>
-</CODE></BLOCKQUOTE>
-<P>If you do not have the command <EM>groupadd</EM> available to you simply add a line in /etc/group by hand.
-<P>
-<BLOCKQUOTE><CODE>
-<PRE>
-# vi /etc/group                (or your favorite editor)
-</PRE>
-</CODE></BLOCKQUOTE>
-<P>You also need to add some others to the group, including your own callsign (this will be used as an alias) and root.  The finished line in /etc/group should look something like this
-<P><CODE>spider:x:251:sysop,g0vgs,root</CODE>
-<P>
-<P>The next step is to set the permissions on the Spider directory tree and files ....
-<P>
-<BLOCKQUOTE><CODE>
-<PRE>
-# chown -R sysop.spider spider
-# find . -type d -exec chmod 2775 {} \;
-# find . -type f -exec chmod 775 {} \;
-</PRE>
-</CODE></BLOCKQUOTE>
-<P>
-<P>This last step allows various users of the group <EM>spider</EM> to have write access to all the directories.  This is not really needed just yet but will be useful when web interfaces start to appear.
-<P>
-<P>Finally, you need to fix the permissions on the ax25_call and netrom_call programs.  Check where they are with the <EM>locate</EM> command and alter the permissions with the <EM>chmod</EM> command like this ..
-<P>
-<BLOCKQUOTE><CODE>
-<PRE>
-# chown root ax25_call netrom_call
-# chmod 4775 ax25_call netrom_call
-</PRE>
-</CODE></BLOCKQUOTE>
-<P>
-<H2><A NAME="ss1.4">1.4 Setting callsigns etc</A>
-</H2>
+package DXProt;
 
-<P>Now login to your machine as the user you created earlier.  In my case that user is called <EM>sysop</EM>.  Once logged in, issue the following commands ....
-<P>
-<BLOCKQUOTE><CODE>
-<PRE>
-$ cd /spider
-$ mkdir local
-$ mkdir local_cmd
-$ cp perl/DXVars.pm local
-$ cd local
-$ vi DXVars.pm (or your favourite editor)
+# 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,
+                   },
+};
 </PRE>
 </CODE></BLOCKQUOTE>
 <P>
-<P>Using the distributed DXVars.pm as a a template, set your cluster callsign, sysop callsign and other user info to suit your own environment. Note that this a perl file which will be parsed and executed as part of the cluster. If you get it wrong then perl will complain when you start the cluster process.  It is important only to alter the text of any section.  Some of the lines look a little odd.  Take this line for example ....
-<P><CODE>$myemail = "ianmaude\@btinternet.com";</CODE>
-<P>
-<P>There appears to be an extra slash in there.  However this has to be there for the file to work so leave it in.
-<P>
-<P><B>PLEASE USE CAPITAL LETTERS FOR CALLSIGNS</B>
+<P>Each set of hops is contained within a pair of curly braces and contains a 
+series of PC frame types.  PC11 for example is a DX spot. The figures here 
+are not exhaustive but should give you a good idea of how the file works.
 <P>
-<P>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 whilst the cluster is running!
+<P>You can alter this file at any time, including whilst the cluster is running.  
+If you alter the file during runtime, the command <EM>load/hops</EM> will 
+bring your changes into effect.
 <P>
-<P>Save the new file and change directory to ../perl ....
-<P>
-<BLOCKQUOTE><CODE>
-<PRE>
-$ cd ../perl
-</PRE>
-</CODE></BLOCKQUOTE>
-<P>
-<P>Now type the following command which creates the basic user file with you as the sysop.
-<P>
-<BLOCKQUOTE><CODE>
-<PRE>
-$ create_sysop.pl
-</PRE>
-</CODE></BLOCKQUOTE>
-<P>
-<H2><A NAME="ss1.5">1.5 Starting up for the first time</A>
+<H2><A NAME="ss1.2">1.2 Isolating networks</A>
 </H2>
 
-<P>We can now bring spider up for the first time and see if all is well or not!  It should look something like this ...
-<P>
-<BLOCKQUOTE><CODE>
-<PRE>
-$ cluster.pl
-DXSpider DX Cluster Version 1.35
-Copyright (c) 1998 Dirk Koopman G1TLH
-loading prefixes ...
-loading band data ...
-loading user file system ...
-starting listener ...
-reading existing message headers
-reading cron jobs
-orft we jolly well go ...
-</PRE>
-</CODE></BLOCKQUOTE>
-<P>
-<P>If all is well then login on another term or console as <EM>sysop</EM> and cd to /spider/perl.  Now issue the following command ...
-<P>
-<BLOCKQUOTE><CODE>
-<PRE>
-$ client.pl
-</PRE>
-</CODE></BLOCKQUOTE>
-<P>
-<P>This should log you into the cluster as the sysop under the alias callsign we set earlier.  In this case the callsign is G0VGS.  The cluster callsign is set in the DXVars.pm file in /spider/local.  In this case we will assume that this was set as GB7MBC.  You should therefore see this when you login ....
-<P>
-<BLOCKQUOTE><CODE>
-<PRE>
-G0VGS de GB7MBC 19-Nov-1999 2150Z >
-</PRE>
-</CODE></BLOCKQUOTE>
-<P>If you do, congratulations!  If not, look over the instructions again, you have probably missed something out.  You can shut spider down again with the command ....
+<P>It is possible to isolate networks from each other on a "gateway" node using the
+<EM>set/isolate &lt;node_call&gt;</EM> command.
+<P>
+<P>The effect of this is to partition an isolated network completely from another 
+nodes connected to your node. Your node will appear on and otherwise behave 
+normally on every network to which you are connected, but data from an isolated 
+network will not cross onto any other network or vice versa. However all the 
+spot, announce and WWV traffic and personal messages will still be handled 
+locally (because you are a real node on all connected networks), that is locally
+connected users will appear on all networks and will be able to access and 
+receive information from all networks transparently.  All routed messages will 
+be sent as normal, so if a user on one network knows that you are a gateway for 
+another network, he can still still send a talk/announce etc message via your 
+node and it will be routed across.
+<P>
+<P>The only limitation currently is that non-private messages cannot be passed down 
+isolated links regardless of whether they are generated locally. This will change 
+when the bulletin routing facility is added.
+<P>
+<P>If you use isolate on a node connection you will continue to receive all 
+information from the isolated partner, however you will not pass any information 
+back to the isolated node.  There are times when you would like to forward only 
+spots across a link (maybe during a contest for example).  To do this, isolate 
+the node in the normal way and put in a filter in the /spider/filter/spots 
+directory to override the isolate.  This filter can be very simple and consists 
+of just one line ....
 <P>
 <BLOCKQUOTE><CODE>
 <PRE>
-shutdown
+$in = [
+        [ 1, 0, 'd', 0, 3]      # The last figure (3) is the hop count
+];
 </PRE>
 </CODE></BLOCKQUOTE>
 <P>
-<P>and both the cluster and the client should return to Linux prompts.
+<P>There is a lot more on filtering in the next section.
 <P>
 <HR>
 <A HREF="adminmanual-2.html">Next</A>