home    builders  

Node Commands, "user"

Document is under construction! -- January 10, 2016

Some material co-opted from John Wiseman, G8BPQ.

Back to G8BPQ Commands Index

The linbpq node software which runs on the Raspberry PI can pass traffic through, or can serve as a command processor. When a station connects to the node the command processor delivers a prompt to the user, much like a Unix/Linux/MSDOS or CPM computer would. When a command is entered, the command processor interprets incoming commands and will either take action or will answer with a reply message, or it can take action and then answer with a reply message. Reply messages take the form of NODENAME:NODECALL-SSID} Answer

For example, if I connect to my own node via BPQtermTCP
*** Connected to switch
I can enter in a command of XYZ (an invalid command) and get back the answer
TADD:KA2DEW-2} Invalid command — Enter ? for command list

The list of valid commands includes commands that may only be handled after a password verification has taken place. There are some commands which have additional capability after password verification has been provided. Below is a complete list of commands. The table includes whether the command requires password or not, and what command group it is in. I will create a web page for each command group and explain the commands in that group including syntax and expected response.

"User" Commands -- no password required
Full command name Short description
? Requests list of commands
BYE Disconnect from this node.
CONNECT Connect from this node to some other station or node
INFO Requests text INFO file from node
L4T1 Requests the ISO-Level-4 Timeout #1 value. This is an init value and is always the same. Set globally for all nodes.
LINKS Requests information about current ax.25 sessions
MHEARD Monitor Heard -- Requests list of stations heard by the node on a particular port
NODES Requests a list of all nodes known by this node
PACLEN Reads the packet length limit set in the node. I don't know why. Hint, it's 236
PASSWORDRequests access to password protected commands.
PORTS Requests list of ports (radios) configured for the node
ROUTES Requests list of neighbor nodes for this node
STATS Requests file of statistics for this node.
USERS Requests list of stations connected into or through this node's command interpreter
Note: All commands may be entered in lower case. They are not case sensitive.

Common Commands for Operating Through the TARPN/G8BPQ Nodes

This document explains the commands available within the Node section of the G8BPQ switch, and an explanation of the responses.

First the result of inputting an invalid command:

NOTTS:G8BPQ-3} Invalid command - Enter ? for command list

Question Mark

Entering ? produces the following:
The list of commands returned by the ? command may include commands which connect a user to optional services. These commands, BBS, CHAT, HOST (for instance) are defined in the configuration of the node and will show only if those services are commanded to exist. The command name is defined in the configuration so it is possible to have a command HIT-ME or DIAG which is wholly defined by the user or club operating the node software.
Operator-defined commands, like BBS, CHAT, HOST (and your other application names) must be entered in full - all other commands can be abbreviated to the first character of the command.
Entering BBS (or your own application name) will connect you to the first free BBS (etc) port, or give an error message if none are available.

BYE command
Abbreviated B
This command tells the node to disconnect you. The disconnect is sent from this node back to the previous command processor or node. That command processor may further disconnect you. If you connected to this node using the C nodename S option, you will be reconnected back to the node you connected from. See
CONNECT command.
CONNECT command
Abbreviated C
The CONNECT command is used to connect you to another node, or to a normal AX.25 user. To connect to another node, enter C NODECALL or C NODEALIAS. The system will select the 'best' radio port and neighbour to to use to reach the required node using its ROUTES and NODES lists.
The format used to connect to another normal user depends on whether you have more than one radio port. The formats are:
C CALLIf you only have one port
p CALLWhere p is the port number,
if you have more than 1.

(You can use C 1 CALL if you only have 1 port - its just a waste of typing!)
If you miss out the port number where it is needed, you will get an error message, listing the available ports.
Normally you cannot override the automatic route selection when you connect to another node, but you can fool the system into thinking a node is a normal station by connecting to the alias, and adding an SSID. For example, if you want to connect to NOTTS:G8BPQ-3, you can force a Level 2 connect on a secified port by entering C P NOTTS-1

Connect with STAY
It is also possible to instruct the node to remain connected to the current node, when the connection to the next one is closed. This is achieved by adding an S (for STAY) after the connect command. For example, if I type

I get
NOTTS:G8BPQ-3} Connected to GB7YDX
If I then enter B, GB7YDX closes the connection, but instead of getting *** Disconnected, I get
Returned to Node NOTTS:G8BPQ-3} 
This is particularly useful if you are exploring a distant set of nodes, and don't want to have to reconnect over the whole path again and again.

INFO command
Abbreviated I
The INFO command sends your INFO text from the config file:
ADRO:KV7D-2} TARPN config 12-14-2014 #1 
Node op is Adriano, KV7D
Location is near i40 between Chapel Hill and HIllsborough NC
port 1 is 6m Vertex FTL-1011 -- 15 mile link to SNELL
port 2 is 2m Kenwood TK-760H -- 5 mile link to WILSON
port 3 is 70cm Kenwood TK-862G -- 6 mile link to SKIP
Commands: Conn Bye Info Nodes Routes Ports Users MHeard Stats

The INFO command response is set in the NODE configuration. Using the TARPN scripts the INFO command message is set with 8 separate lines of text. Convention dictates that the INFO message delivers unique details about the node, the location of the node, and a description of each of the radios (ports) on the node including who they talk to.
The TARPN config line starts with the standard node response of nodename:callsign and ends with the release date of the configuration being used at the node site. The last line shows the valid non-password commands available to a connected station. Note that CHAT, BBS and HOST are options which are shown for some nodes but not the one in this example. In this case those features are not enabled.

L4T1 Command
Returns the ISO-Level-4 Timeout #1 value, in seconds. This number isn't all that interesting but if it is set too small, things go badly.
The Level 4 timeout 1 value is how long a message is allowed to take to go from one command interpreter to the next. If you connect from your node to some distant node FRED, and then from FRED to CROWD, then the longest time it can take a message to go from your node to FRED is controlled by the L4T1 at your node. The longest time it can take to get a message from FRED to your node and from FRED to CROWD are controlled by FRED's L4T1. Usually this is set the same across all nodes in the network but it is controlled at each node in the boilerplate configuration.

LINKS command
Abbreviated L
The LINKS command lists the currently active AX.25 Sessions (Both user access and node-node links)
NOTTS:G8BPQ-3} Links:
G0GDR-1 G8BPQ-3 S=5 P=2 T=3 V=2

Sis the link state (see AX25 protocol spec, but the main ones are 2 (connecting) 4 (disconnecting) 5 (connected)).
Pis the port.
Tis the link type. 1=Uplink, 2=Downlink, 3=Node-Node link.
Vis the AX.25 Version (1 or 2).

MHEARD command
Abbreviated M
Monitor Heard List. This shows the callsigns heard on a specified port. Enter the command as M p where p is the port number. See PORTS command.
SNELL:W4RFQ-2} Heard List for Port 1
KA2DEW-7   00:00:00:00    
2KA2DE-7*  06:06:56:47    via KA2D-5,W2W4RF-1*,-6,V7D,2#W4RF-1*,-6,W4RFQ,2_KA2D-
Note that the MHEARD list will contain information recorded on scrambled packets. 6 days, 6 hours, 56 minutes ago, W4RFQ-2 port #1 heard KA2DEW-7 but the message got messed up enough hat all sorts of bizarre information was decoded.

NODES command
Abbreviated N
The NODES command lists all the other Nodes known to your node:
NOTTS:G8BPQ-3} Nodes:
BBSTST:G8BPQ-1     DV7:G4RFG-1        LRG7:G0GDR-1       G4RFG-2
BM2:G7AXC-2        BM7:G7AXC-7        DV2:G4RFG          DV6:G4RFG-3
BOB432:G8HBE-3     NEC21:G8VPQ-2      FPV7:G4FPV-7       SY4:G3UQH-4
WP4:G0KNR-4        LRG2:G0GDR-2       NEC22:G8VPQ-3      MM2:GB7MM-2
TFONET:G8TFO-8     NEC90:G8VPQ-9      NH:G0HWC           RP2:GB3RP-2
ADH2:G8ADH-2       SY7:GB7SY-7        HX2:GB7HX-2        WORC7:G8TIC-7
WV2:G1RLI-2        TEWKS3:G6CMG-3     WB7:G4DVM-7        BOB650:G8HBE-2
LED:GB7LED         SY8:G3UQH-8        VPQNET:G8VPQ-8     GH2:GB7GH-2
SY2:G3UQH-2        FPV:G4FPV-2        AP2:GB7AP-2        LX2:GB7LX-2
LX4:G6TNZ-1        LX7:GB7LX-7        RAYNET:GB7NRC      SF2:G8POT-2
#NICK:GB7LRG-7     NEC72:G8VPQ-7      WORC2:G8TIC-2      PQ2:GB3PQ
TEWKS4:G6CMG-4     BOB675:G8HBE-4     FPV71:G4FPV-8      TEWKS9:G6CMG-9
TICNET:G8TIC-8     BRX:G4AKZ          SC4:G4AJJ-4        CD2:G6ANN-1
DROIT2:G8TFO-2     MK6:G4WIM          MV2:G2AFD-2        SERVER:GB7AAA-9
ERA24:G0DXX        WP1:GB7WP-1        WP2:GB7WP-2        WP7:GB7WP-7
MK2:G4WIM-2        MK23:G4WIM-7       LNXBBS:GB7LNX-2    TVB:G6TVB
#GATE0:G6CMG-5     #GATE1:G6CMG-6     WORC22:G8TIC-1     VPQ90:G8VPQ-10
By entering N NODECALL (or N NODEALIAS), you can list the routes that the system will use to access that node:
n gb7ydx
NOTTS:G8BPQ-3} Routes to: DXYORK:GB7YDX RTT=7 FR=17  B 2
> 87 4 5 GB7YS
   0 4 7 G8BPQ-8
   0 4 6 G4FIS-2

The bits after the callsign are only shown if some frames have been send to that node. RTT stands for Round Trip Time, and is a rolling average of the time taken to get a response from that node (in seconds). FR means Frames, the number of info frames sent to the node. The B, if present, indicates the target is a BPQ node, and the number following the B is the number of hops to the target.

Up to 3 possible routes to the node are listed. The first number displayed is the 'quality' - the relative desirability of using this route rather than another. The second is the Obsolesance Count, an indication of how long it is since the system was last told about ( or successfully used) this route. The number starts at a value set in the config file (typically 5) and is decremented each time a 'NODES' broadcast is sent (typically evey hour). The 3rd number is the port. A > indicates the currently active route.

The Round Trip Times and frame counts for all nodes with a non-zero count can be displayed by entering N T

n t
NOTTS:G8BPQ-3} Nodes:
G1FYS              RTT=22  FR=5     B 
#LDS:G3WNR-3       RTT=17  FR=39    B 
AP21:GB7AP-2       RTT=90  FR=866
AYTON:G4HRM        RTT=76  FR=18    B 
BADBBS:GB7BAD      RTT=40  FR=2576  B 2
BEDS:G1ZPU         RTT=283 FR=1     B 4
BFD41:G4GIR-4      RTT=31  FR=593
BOSTON:G4LPL       RTT=28  FR=1606  B 2
COV22:G3ZFR-3      RTT=29  FR=14
DXYORK:GB7YDX      RTT=7   FR=17    B 
HALFAX:G6KZJ       RTT=30  FR=306   B 2
HF:G4JLB-8         RTT=32  FR=99    B 4
LADY61:G7EQM-8     RTT=68  FR=1754  B 1
NEC:G8VPQ          RTT=113 FR=127   B 
NN22:G8AMG-2       RTT=30  FR=2047
NN41:G8AMG-4       RTT=19  FR=250
NN72:G8AMG-7       RTT=19  FR=301
NOTBBS:GB7NOT      RTT=34  FR=5659  B 1
OAK:G0LTN-1        RTT=76  FR=1309  B 3
PBORO:G1ARV-8      RTT=26  FR=230   B 2
RP:GB7RP           RTT=41  FR=1396  B 
RUTBBS:GB7RUT      RTT=10  FR=10683 B 1
RUTLND:G4FIS-2     RTT=7   FR=16468 B 1
SHEF:GB7YS         RTT=15  FR=11547 B 1
TLH2:G1TLH-2       RTT=36  FR=5245  B 
WN:G7HPM           RTT=52  FR=2281  B 4
XOWPMS:G1XOW-2     RTT=38  FR=58    B 
YORK:G1FTA         RTT=37  FR=363   B 3
YORKS:GB7YW        RTT=20  FR=117   B

PACLEN Command
Returns Maximum Packet Length value which is always 236.

PASSWORD command
This command is used to attain permission to inquire about and make changes to operational parameters for the packet node. In practice, this should not be necessary as the node operational parameters are all set in the boilerplate data delivered via the Internet as customized through the node.ini file created by the TARPN CONFIG process. This command enables a person knowing the node's sysop password to reconfigure the parameters.

Note that the parameters and commands described in this section make temporary changes only and all such changes will be lost the next time the node software recycles or reboots.
To obtain password permission, start by typing the PASSWORD command.

The node will respond with one of two answers. If you are connected into the node via port 32 (tarpn tx or BPQtermTCP), then you will immediately be granted password access to the node:
At this point you can query or modify parameters on the node.

If you are connected into the node via TARPN HOST, or over the radio from another node, then you will be prompted with a series of numbers:

c nathan
TADD:KA2DEW-2} Connected to NATHAN:KM4DVE-2
North Raleigh 
NATHAN:KM4DVE-2} I for commands
NATHAN:KM4DVE-2} 24 8 4 19 15
The numbers refer to the sysop password set during TARPN CONFIG.
For this node, the password is

To answer the password, type the word password, followed by a space, and then the letters specified by the codes. 24 means the 24th letter in the password.
So, for this sequence I need to type
password ka2e3
At which point the node will say:

The password and the data are supposed to be case insensitive. Use lower case for both.

PORTS command
The PORTS command lists available ports. The descriptions come directly from the configuration file, and should give at least the frequency and baud rate used.
NOTTS:G8BPQ-3} Ports:
  1 144.650 MHz 1200 Baud (PC120)
  2 432.675 MHz 1200 Baud (DRSI)
  3 Experimental NET/ROM Link

ROUTES command
Abbreviated R
The ROUTES command lists the stations which this node can hear.
NOTTS:G8BPQ-3} Routes:
  4 GB7YS     0   0! 
  1 G4FIS-2  14   0! 
  3 G3SDC-8  35   0! 
> 6 G4FIS-2 150  58!  
  3 G0INA-1  90   0!  
  2 G8BPQ-5 250   0!
  4 G1EQT-8  50   0!  
> 4 G0INA-3 120  48!  
> 5 GB7YS   150  93! 
  3 G7JGX-3  25   0!  
> 4 G4IRX-3  50   9! 
  7 G8BPQ-8 250 105  
  4 G7EQM-8  10   1 

ROUTES command result details:

Consider this result:   > 4 G0INA-3 120  48!
> This field can be blank or have a chevron. > means the link is in use.
4 port number, defines which radio the route is over. See PORTS command.
G0INA–3Callsign and SSID of neighbor
120 Quality multipler, used to limit distribution of neighbor's node data
48 Number of nodes whose best route is over this neighbor
! Can be blank or exclamation. If blank, this neighbor was heard over the air and was not specified by the admin. If ! then this neighbor is locked in and will show on this list regardless of whether it is actually on the air.

Additional information may be obtained by entering r r

r r
NOTTS:G8BPQ-3} Routes:
  4 GB7YS     0    0!      8     0   0%  0  0  18:52
  1 G4FIS-2  14    0!      0     0   *   0  0  00:00
  3 G3SDC-8  35    0!      0     0   *   0  0  00:00
> 6 G4FIS-2 150   58!  57022  1333   2%  0  0  21:55  0
  3 G0INA-1  90    0!      0     0   *   0  0  00:00
  2 G8BPQ-5 250    0!      0     0   *   0  0  00:00
  4 G1EQT-8  50    0!      0     0   *   0  0  17:13
> 4 G0INA-3 120   48!  19305   819   4%  0  0  21:40  0
> 5 GB7YS   150   93!  27017  6229  23%  0  0  21:44  0
  3 G7JGX-3  25    0!      0     0   *   0  0  00:00
> 4 G4IRX-3  50    9!   2025    42   2%  0  0  22:09  0
  7 G8BPQ-8 250  105     592     0   0%  0  0  22:02
  4 G7EQM-8  10    1    3077   219   7%  0  0  21:37
The first 5 fields are the same as in the standard R command:

Consider this result:   > 4 G0INA-3 120   48!  19305   819   4%  0  0  21:40  0
> This field can be blank or have a chevron. > means the link is in use.
4 port number, defines which radio the route is over. See PORTS command.
G0INA–3Callsign and SSID of neighbor
120 Quality multipler, used to limit distribution of neighbor's node data
48 Number of nodes whose best route is over this neighbor
! Can be blank or exclamation. If blank, this neighbor was heard over the air and was not specified by the admin. If ! then this neighbor is locked in and will show on this list regardless of whether it is actually on the air.
19305 Info frames sent
819 Info frames retransmitted
4% Retry Rate - the ratio of the above 2, as a percentage(or * if both are zero)
0 Non-standard maxframe (from config file)
0 Non-standard frack ( ditto )
21:40 Time the last NODES broadcast was heard from this node.
0 The last figure is only present if there is an active link. It is the number of frames queued to be sent. Up to and including version 4.05e, this only counts frames queued above the link level - there may be up to another 8 queued at link level. With version 4.05f and above it includes all frames queued.

The retry rate gives a good indication of how well the link is running. Dedicated links should normally be well below 10%. A shared link will normally have a higher rate, but anything above say 25% is likely to cause significant delays. Another indication of a poor link is a high number of frames queued - any nonzero value of 4.05e or below, or above 8 for later versions which persists for more that a minute or so is likely to be causing problems.

STATS command
The STATS command displays a number of counters.
Uptime (Days Hours Mins)     15:04:00
Semaphore Get-Rel/Clashes           1   527486
Buffers:Max/Cur/Min/Out/Wait      844      841      831        0        0
Known Nodes/Max Nodes               7      200
L4 Connects Sent/Rxed              20        0
L4 Frames TX/RX/Resent/Reseq      245      702        8        0
L3 Frames Relayed                2598
                  Port 01  Port 02  Port 03  Port 32  
L2 Frames Digied        0        0        0        0
L2 Frames Heard     15991     9568       46        0
L2 Frames Rxed      12138     7241       43       92
L2 Frames Sent      20429    12914     4828      100
L2 Timeouts          2449      656       52        0
REJ Frames Rxed         0        0        0        0
RX out of Seq           0        0        0        0
L2 Resequenced          0        0        0        0
Undrun/Poll T/o         0        0        0        0
RX Overruns             0        0        0        0
RX CRC Errors           1        0        0        0
FRMRs Sent              0        0        0        0
FRMRs Received          1        0        0        0
Frames abandoned        0        0        0        0
Link Active %       0   0    0   0    0   0    0   0
Uptime (Days Hours Mins)Shows how long ago the node started. In the above example it was 15 days ago
Semaphore Get-Rel/Clashes
Buffers:Max/Cur/Min/Out/WaitCount of buffers, used for packet frame handling.
Max is how many there is room for in system memory.
Cur is how any there are available when this STATS command was processed.
Min is how many there were when the node was most loaded.
Out is how many times a request for a buffer by the software was rejected because there were none available
Wait ?? Undefined in the documentation
Known Nodes/Max NodesKnown Nodes is how many nodes this node knows about right now.
Max Nodes     is how many nodes the system was configured to have room for.
L4 Connects Sent/Rxed
L4 Frames TX/RX/Resent/ReseqThe L4 frames resent count is the number retransmitted because an ACK wasnt received within the L4 timeout period. The Reseq count is the number of frames received out of sequence, but subsequently used because the missing frame(s) eventually arrived.
L3 Frames Relayed
Port 01  Port 02  Port 03  Port 32Column headers for each port.
There is a set of level 2 counters for each port.
Note that port 32 is automatically created to permit TARPN TX operation and refers to traffic through that interface.
L2 Frames DigiedFrames using the legacy digipeater interface to relay through a port or across the node. Deprecated.
L2 Frames Heard
L2 Frames Rxed
L2 Frames Sent
L2 Timeouts
REJ Frames RxedA large number in the 'REJ received' field may indicate that your Maxframe is too high. Similarly a large number in 'RX out of sequence' may indicate the the station talking to you has too large a maxframe.
L2 Resequenced
Undrun/Poll T/oUnderuns indicate a similar problem in responding to TX interrupts, but only apply to HDLC cards. As you cant get a TX underrun on an async port, this field is also used to count timeouts on a polled KISS system.
RX OverrunsRX Overruns indicate characters lost because the software didn't process the interrupts fast enough. If you are running KISS ports, and you get a lot (ie a significant percentage of L2 frames heard), try reducing the speed of the link from the PC to the TNC. If you are using an HDLC card (DRSI or PC120), particularly at high speed, then there isnt much you can do except buy a faster machine. (But I would like to hear from anyone having problems running at 9600 baud or above - I may be able to speed up the routines a bit).
RX CRC Errors .
FRMRs Sent .
FRMRs Received .
Frames abandonedFrames abandoned counts the number of frames discarded because they have been waiting to be sent (for DCD to clear) for more than 60 secs. If a lot occur, then either your squelch is a bit dodgy, or the channel is VERY busy. Only used for HDLC cards.
Link Active %Link Active shows two values for each port. The first is the % of time in the last minute that your station was transmitting, and the second the % the channel was active (sum of Transmitting and DCD active). Only maintained for HDLC ports. Note that of you are using SOFTDCD, then the indicated % active may be an overestimate.
If you have more than 7 ports the display starts to look a bit untidy, so there are now two options on the STATS command:
S S requests just the system and L3/4 stats
n requests just the port stats, starting with port n, for a maximum of 7 ports. So if you have 10 ports, S 1 requests the first 7, and S 8 requests 8,9 and 10.

USERS command
The USERS command lists the stations currently using the node.
NOTTS:G8BPQ-3} G8BPQ Network System V3.21 (95)
Host3(NOTTS:G8BPQ-3)              <-->  Circuit(LRG7:G0GDR-1 G8BPQ-1)
Uplink(G9XXX)                     <~~>  Downlink(G9YYY)		

Host is an internal (Normally BBS Port) Circuit is a link from/to another node. Uplink is a connection from a normal Ax.25 station. Downlink is a connection to a normal user.

The <--> indicates an active session. <~~> indicates a session being set up.

The Number on the end of the header line is the number of free buffers.

© Tadd Torborg, 2014, 2015 -- all rights reserved