X-Git-Url: http://gb7djk.dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;ds=sidebyside;f=html%2Fconnect.html;h=ecfedd1cd1ab65abd212a817e8807a8493001f1f;hb=27544983f094f740369af17b345d78cd4ed662f9;hp=b5a067b0147ee62226c3b152f1e6ef1c84846504;hpb=bd23bedbdb72ae107893f94c7eabcfe18867fb41;p=spider.git diff --git a/html/connect.html b/html/connect.html index b5a067b0..ecfedd1c 100644 --- a/html/connect.html +++ b/html/connect.html @@ -2,76 +2,131 @@ Connecting to other Clusters + + + + - -

Connecting to other Clusters

- -
-
Dirk Koopman G1TLH
+ + +
+

Connecting to other Clusters

+
+
+ + +
Dirk Koopman G1TLH

- - -Last modified: Sun Dec 13 22:31:33 GMT 1998 + + +Last modified: Sun Sep 2 20:31:56 BST 2001

At the moment, anybody can connect inwards at any time from outside, either by ax25 or by telnet (assuming you have followed the instructions in installation instructions. However, in order to connect outwards, you will need to create connect scripts. - +

Connect scripts live in the /spider/connect directory and are simple ascii scripts that are written using a normal editor. There are a couple of examples in the issue directory. - -

Here are a couple of basic types, first a telnet connection:- + +

Here are a few of basic types, first a telnet connection where the + client is set up in the passwd file thus:- +

+    gb7djk:x:1372:1291::/home/gb7djk:/usr/bin/perl /spider/perl/client.pl gb7djk telnet
+	
+ and the connect script would be:-
     timeout 15
     # this is a comment
     connect telnet dirkl.tobit.co.uk
     'login' 'gb7djk'
     'word' 'gb7djk'
-    client /usr/bin/perl /spider/perl/client.pl gb7djk-1 telnet
+    client gb7djk telnet
 	
-

and an ax25 example:- +

For a connect that requires a login and execution of the programs + from a normal shell, do:- + +

+    timeout 15
+    connect telnet dirkl.tobit.co.uk
+    'login' 'gb7djk'
+    'word' 'gb7djk'
+    '\$' 'cd /spider/perl'
+    # set the line to prevent echoing, leaving this out will
+    # confuse whole networks for hours!
+    '\$' 'stty -echo raw'
+    # tell GB7DJK that you are GB7DJK-1
+    '\$' '/spider/src/client gb7djk-1 telnet'
+    # tell GB7DJK-1 that it is connected to GB7DJK
+    # you can leave this out if you call this script 'gb7djk'
+    client gb7djk telnet
+	
+ +

a ax25 example:-

     timeout 60
     abort (Busy|Sorry|Fail)
     # don't forget to chmod 4775 netrom_call!
-    connect ax25 /usr/sbin/netrom_call bbs gb7djk g1tlh
-    'Connect' ''
-    'Connect' 'c np7'
-    'Connect' 'c gb7dxm'
+    connect ax25 /usr/sbin/netrom_call bbs gb7djk-0 g1tlh-0
+    'Connected' ''
+    'Connected' 'c np7'
+    'linked to' 'c gb7dxm'
     'Connect' ''
-    client /usr/bin/perl /spider/perl/client.pl gb7dxm ax25
 	
-

A connection is started manually by typing in connect on a sysop enabled + The -0 ssid is important if you want it to work reliably. Obviously if you are + using a different ssid then you would use that. + +

A AGW Engine example would be very similar and look like this:- +

+    timeout 60
+    abort (Busy|Sorry|Fail)
+    connect agw 2 g1tlh
+    '*** Connected' ''
+    '*** Connect' 'c np7'
+    'linked to' 'c gb7dxm'
+    'Connect' ''
+	
+ +

A connection is started manually by typing in connect <scriptname> on a sysop enabled client.pl session. For example:-

     G1TLH de GB7DJK 13-Dec-1998 2041Z > connect gb7djk-1
     connection to GB7DJK-1 started
     G1TLH de GB7DJK 13-Dec-1998 2043Z > 
+	
+ +

Consider the following specific example, it is located in the file /spider/connect/gb7djk-1 :-

+ +
+    timeout 15
+    connect telnet dirkl.tobit.co.uk
+    'login' 'gb7djk'
+    'ssword' 'gb7djk'
     
- -

You can watch the progress of the connection (if you have the standard debugging enabled) on the + +

You can watch the progress of the connection (if you have connect + debugging enabled [set/debug connect]) on the cluster.pl screen and you should see something like this:-

     <- 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
+    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"
+    received "login: "
+    sent "gb7djk"
     CHAT "word" -> "gb7djk"
     received "gb7djk
  
     "
-    received "Password: "
-    sent "gb7djk"
+    received "Password: "
+    sent "gb7djk"
     Connected to GB7DJK-1, starting normal protocol
     <- O GB7DJK-1 telnet
     -> B GB7DJK-1 0
@@ -81,33 +136,107 @@ Last modified: Sun Dec 13 22:31:33 GMT 1998
     <- 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
-    
+ + +

I have coloured the commands in an attempt to make it clear as to what goes on, where and why. + These coloured lines are miscellaneous commands, the things + that are this colour are the strings I am looking for (what I am "expecting") + and the things that are this colour + are the commands I am going to make when I see the "expect" strings in the input.

+ +

The script starts by setting the timeout to 15 seconds, then starts + the connection. It is important to note that, in the case of + an ax25 connection (usually) this will be the callsign of the first hop along the + route that you are going to take to the destination, so this will be typically the callsign + of your local node.

+ +

You will notice that the script waits until it sees the left hand string + of the pair and only then does it send the, + string on the right + hand side. This is called a State Machine.

+ +

A state machine "walks" through a conversation (in this case) looking + for "states" (in this case particular strings) and then performs some + "action" (usually some kind of connect command for the type of system + you are trying to navigate). When one "state" "fires" (detects the string + are looking for), it sends the command associated with that state and then + moves onto the next "state", in our case: the next line.

+ +

PLEASE NOTE: the colouration in the above example is for illustrative purposes + only, the debug output is all one colour.

+ +

The connect scripts consist of lines which start with the + following keywords or symbols:- -

The connect scripts consist of lines which start with the following keywords or symbols:-

-
-
$Id
+ + +

 

+

+


+ + Copyright © 1998 by Dirk Koopman G1TLH. All Rights Reserved
+
+ $Id$