=> [ Packet info ] [ Group info ] [ Network info ] [ Home page ]

Fourpak Packet Radio Group

XRouter User Commands

The following user commands are available on XRouter nodes:

@ ? Arp Bye CHat Connect Finger
Help Info IProutes Links MHeard Nodes Ports
PIng Routes Stats Telnet TTylink Users Version

Commands are not case-sensitive, and only the portion shown in UPPER- CASE is required.


@        Request sysop status

         Syntax:    @ [string]

         In order to gain access to sensitive commands, remote sysops
         must first complete a password challenge.  Firstly, the
         remote sysop enters "@" alone, and the system replies with a
         matrix consisting of 5 lines of 5 numbers thus:

               4 1 6 3 7
               3 5 2 6 3
               7 1 9 2 4
               2 7 1 4 6
               3 5 2 6 1

         The remote sysop must then choose ONE of the lines, and send
         the "@" command again, followed by the 5 characters from the
         password string which correspond to the 5 numbers on the
         chosen line.  There must be a space after the "@" but no
         spaces between the characters.

         If the challenge is correctly answered, the system replies 
         with "Ok", and the user has remote sysop status.

         If the user does not have a password registered in 
         PASSWORD.SYS, the response to this command will be "Bad 
         command".

         Note:  Console sysops already have full access and don't need 
         to use this command.



[return to top]
? Obtain command list or syntax help Syntax: ? [cmd] If used without arguments, this command sends a list of the basic commands available to the user. If the argument is an asterisk (e.g. "? *") it lists all the available commands. Using the form "? cmd" shows the syntax for "cmd".
[return to top]
ARP Display Address Resolution Protocol table Syntax: ARP [ LIST ] The ARP command is used to display the Address Resolution Table, which is responsible for mapping IP addresses to callsigns. The LIST subcommand is available to everyone, and has the same effect as using ARP by itself. Other subcommands are available to sysops only (see sysop command section). The response may look like this: G8PZT:KIDDER} Host type Hw Address 44.131.74.131 AX25 GB7WV-12 44.131.90.6 AX25 GB7IPT-9 44.131.95.240 AX25 GB7GH 44.131.93.240 AX25 G4FPV 44.131.91.245 AX25 G8PZT 44.131.91.4 AX25 G8UZV 44.131.91.2 AX25 GB7PZT-5 44.131.91.66 AX25 G8BKL-5 44.131.136.10 AX25 G1LOA-10 44.131.138.10 AX25 GB7MIP-8 (End of list) <host> is the neighbour's IP address, <type> is either "ax25" or "ether" (Ethernet) and <hw_address> is the hardware address or callsign of the neighbour. In order for this command to have any meaning, the router must have an IP address and be connected to an IP-capable network.
[return to top]
BYE Disconnect from the router. This command forces a disconnection, and is useful when the user does not have easy access to a TNC's "command mode", or when the uplink is from another node with the "stay" option enabled. Disconnection of an uplink terminates all dependent sessions.
[return to top]
CHAT Connect to the chat server. Syntax: CH[AT] The CHAT command connects the user to the integral chat server, which has its own set of commands detailed in a separate section. [Chat server commands] The chat server may also be reached directly by telnetting to the router's TCP port 3600.
[return to top]
CONNECT -- Make an outgoing AX25 connection Syntax: C[ONNECT] [port] <call> [V[ia] digi[,digi...]] [S] The CONNECT command, which may be abbreviated to "C", instructs the router to make an outgoing (downlink) AX25 level 2 or 4 connection with another system. If the target is a known node (i.e. one which is in the nodes table) a port number is not required, and will be ignored if supplied. The router will attempt to make a level 4 connection with the target, using information from the routing tables. However, a level 2 connection with an immediately adjacent node may be forced by using the target's alias with an arbitrary SSID, specifying a port number if required (e.g. C 4 MLVN-1) If the target is not a known node, the router will attempt to make a level 2 connection. On multi-port systems, a port number must be specified. The "V" (via) parameter allows up to 7 digipeaters to be specified, e.g.: "C 3 G6YAK V G8NTU G8EPR" The "S" (stay) parameter, e.g. "C <nodecall> S" causes the uplink session to stay connected when the downlink session to the target node is terminated. See also: TELNET (nake TCP connections)
[return to top]
FINGER -- Display information about users. Syntax: FINGER <user | user@host | @host> If the command is of the form "FINGER <user>", the router searches the FINGER sub-directory for a text file which matches "user", and sends the contents of that file if it exists. The file may contain anything you like, and "user" may be a callsign, nickname or other form of hostname consisting of up to 8 legal DOS characters If the form "user@host" or "@host" is used, the router will attempt to resolve "host" into an IP address and establish a TCP/IP contact with the finger server on that host. Examples: FINGER g8pzt Info on local user g8pzt FINGER g8jvm@iptlfd Limitations: This feature is very rudimentary at present, requiring the user account files to be created by the sysop.
[return to top]
HELP Displays help for commands and other topics Syntax: H[ELP] [cmd | topic] If no arguments are given, a short text gives directions on how to access help. If the argument is a topic or a command name, the contents of the appropriate file in the HELP sub-directory are displayed. The argument "*" will list all the help topics available. Example: H PING will give help for the PING command. Limitations: The command or topic name must at present be given in full, thus "H NODES" is acceptable, but "H N" is not (unless you duplicate the NODES.HLP file to N.HLP). Future versions will search for the closest match. Note: The help available using the HELP command is intended to be of use to both sysops and users alike, and is kept brief in order to avoid wasting airtime. The MAN system gives more detailed information for sysops. The sysop may customise the help files, or add his/her own help topics to the HELP directory as required. The HELP directory is located beneath the router's working directory, and the files are simply plain text files with the .HLP extension. Files without the .HLP extension will not be listed or accessible. See also: ?, MAN, INFO
[return to top]
INFO Displays information about the node and other topics. Syntax: INFO [topic] If no arguments are given, the INFOMSG text is sent to the user. If the sysop has created other INFO topics, the user will then be prompted to enter "INFO *" to display the list of topics. If [topic] is specified, the contents of the appropriate .INF file, if it exists, are sent to the user. Example: I FOURPAK Displays fourpak.inf file. Note: The sysop may create INFO topics as required, and there is no need to restart in order to activate them. Each topic should be created as a plain text file with the .INF extension and should be placed in the INFO sub-directory located immediately under the router's working directory. Files without the .INF extension will not be listed or accessible. Limitations: Topic names must consist of a maximum of 8 legal DOS characters. See also: ?, HELP, MAN
[return to top]
IPROUTE -- Display IP routing table. Syntax: IPR[OUTE] The IPROUTE command, which may be abbreviated to IPR, displays the contents of the table responsible for routing of IP datagrams. This table is initialised from file IPROUTE.SYS when the router is started, and may contain other entries "learned" by the system, or entered by the sysop. It is not required in any way for normal AX25 and NETROM activities. For each route it displays the IP address, the subnet mask, the gateway address, the port and the mode (Datagram, VC or Netrom). The command "IP ROUTES" produces an identical result.
[return to top]
LINKS -- Displays the currently active level 2 sessions. This lists level 2 user up/downlinks and inter-node links. It is mainly of interest to sysops, and shows the callsigns being used at both ends of the link plus some other data, for example: G8PZT:KIDDER} Links: Remote Local Prt Sta Ver Try T3 Pac Max T/o Txq Rxq Asm G4FPV G8PZT 5 5 2 0 177 160 1 904 0 0 0 GB7PZT G8PZT 7 5 2 0 181 240 7 908 0 0 0 GB7GH G8PZT 9 5 2 0 176 120 1 903 3 1 0 (End of list) Remote and Local are the L2 callsigns in use at either end of the link. Prt - Port number Sta - Link state (2 = connecting, 4 = disconnecting, 5 = connected) Ver - AX25 version number Try - Retry count T3 - Current state of the LAPB T3 countdown Pac - Paclen Max - Maxframe T/o - Timeout Txq - No. of L2 frames queued for transmission Rxq - No. of L2 frames on receive queue Asm - No. of frame fragments awaiting reassembly Note: The exact format of this response may differ in future versions.
[return to top]
MHEARD -- List recently heard stations. Syntax: MH[EARD] <portnum> If the facility is enabled on the specified port, the MHEARD command lists the most recently heard stations on that port, along with the date / time of reception, and the number of frames heard. This is useful for users to discover who else the router can hear, to aid the search for suitable digipeaters, and to diagnose problems. Even on linking-only ports, where there is only usually one partner, it provides a useful indication when the frequency is being encroached, either by deliberate squatting, unauthorised attempts to link, or lift conditions. The command may be abbreviated to "MH". Example: MH 3 gives a heard list for port 3.... G8PZT:KIDDER} Heard list for port 3: Callsign Last-Date/Time Frames G1LOA-10 09/06 13:42 309 NODE G3TQG-2 * 09/06 13:19 599 GB7PZT-15 * 09/06 13:18 708 DY25 09/06 10:19 4 An asterisk (*) indicates a digipeated signal. The far right column indicates the reception of Netrom, IP and ARP frames. Note: For each port, the MH facility can be enabled / disabled and the maximum length of the list specified by appropriate entries in the .CFG file.
[return to top]
NODES -- Display contents of the Nodes table. Syntax: N[odes] [call | * | T] When used without arguments, this command lists all the NetRom nodes (but not KA nodes) known to the router, except those "hidden" nodes whose alias begins with the hash (#) character. If the argument is an asterisk (*), all nodes, including "hidden" nodes will be displayed. If the argument is a known node call or alias, the preferred route to the specified node, and up to two alternative routes will be displayed. Example: N MLVN The response looks like this: G8PZT:KIDDER} Routes to: MLVN:G4FPV RTT=28 FR=3538 Q=0 > 150 5 5 G4FPV 110 5 9 GB7GH 0 4 2 G1DKI-7 RTT stands for Round Trip Time and is a running average of the time taken to get a response from that node. FR indicates the number of level 3 frames sent to that node. Q is the number of Level 3 frames currently queued for that destination. A chevron ">" in the left-most column indicates the currently active route. The first number shows the overall path quality to the target node, the second is the "obsolescence count", and the third number is the port designator. The obsolescence count is a measure of how recently the route was heard about or used. It is usually reset to 5 upon hearing a nodes broadcast from the neighbour node, and decrements by one every time this node makes a node broadcast (typically once per hour). If it drops below 4 the route is considered to be obsolete. If the requested nodecall or alias is not in the table, an error message results. Entering N T will list the round trip times and frame counts for all nodes which have non-zero figures, producing a display like this: G8PZT:KIDDER} Nodes: WV12:GB7WV-12 RTT=20 FR=255 WV13:GB7WV-13 RTT=14 FR=26 Q=2 WV22:GB7WV-2 RTT=14 FR=31 Examples: N - List nodes except those beginning with # N * - List nodes including those beginning with # N MLVN - Display routes to MLVN node N T - List all nodes with non-zero RTT and FR counts
[return to top]
PING -- Send ICMP echo request(s). Syntax: PING <hostname | ipaddr> [length [interval]] Sends ICMP echo request(s) to the specified IP address or hostname for the purposes of route testing. An optional data portion of "length" bytes may be specified, and the echo request may optionally be repeated every "interval" seconds. If there is a reply it will be displayed. For repeating pings the system displays the number sent/rcvd, the average round trip time in milliseconds, and the success rate. The "wait for reply" process may be cancelled at any time by entering <CR> by itself. If you specify a hostname (e.g. gb7pzt.ampr.org) instead of a numeric IP address the request may take longer to action if the hostname isn't found in DOMAIN.SYS, because the name will have to be resolved by sending a DNS request. Examples: PING 44.131.91.2 Single ping of minimum size PING 44.131.91.2 50 Single ping with 50 bytes data PING gb7pzt Uses DNS to resolve host. PING 44.131.91.2 512 10 Ping 512 bytes every 10 secs The response for a single ping looks like this: G8PZT:KIDDER} PING: Pinging 44.131.91.2: hit <RETURN> to quit... 44.131.91.2: echo reply - rtt 495 msec And for a repeating ping it looks like this: G8PZT:KIDDER} PING: Target Interval Sent Rcvd % Ave Rtt 44.131.91.2 9955 1 1 100 880 44.131.91.2 9955 2 2 100 880 44.131.91.2 9955 3 3 100 880 Limitations: The ROUTER must have an IP address and have IP routing defined for this command to work. Unrealistic ping rates are prevented. Availability: The PING command is currently available to all users, but due to the potential for abuse the repeating ping option may be made sysop-only in future versions.
[return to top]
PORTS -- List the available ports. Syntax: P[ORTS] Displays the router's port numbers along with their brief descriptions as specified by the PORTID fields in the CFG file. The command may be abbreviated to "P".
[return to top]
ROUTES -- List neighbouring nodes which can be heard directly. Syntax: R[OUTES] [*] The ROUTES command, which may be abbreviated to "R", lists the immediately adjacent NetRom nodes, i.e. those who can be heard directly, providing those nodes are making NetRom nodes broadcasts. For each neighbour node the display shows the port number, the neighbour's callsign, the route quality, and the number of nodes accessible through that neighbour. A chevron (>) in the left-most column indicates a route which is in use, and an exclamation mark (!) in the right-most column indicates that the data has been "locked in" by the sysop. See example... If any argument is supplied, it will give additional information mainly of interest to sysops. The additional fields are the current MAXFRAME, FRACK and PACLEN settings, the number of information frames sent, the number of information frames re-sent, the retry rate, which is the ratio of the two preceding figures (or * if both are zero), and the time a nodes broadcast was last heard from the neighbour. Examples: If no arguments are supplied, the output looks like this: G8PZT:KIDDER} Routes: Port Callsign Qty Nod > 5 G4FPV 150 70! > 7 GB7PZT 250 1! > 8 GB7WV-12 100 32! > 9 GB7GH 150 104! 10 GB7CL 150 1! > 11 GB7IPT-7 150 3! 12 G1LOA-10 150 2! The R R form produces an output similar to this: G8PZT:KIDDER} Routes: Port Callsign Qty Nod Max Frack Pac Sent Resent Rty% Last Heard > 5 G4FPV 150 70! 5 7000 160 15550 1507 9% 09/06 13:46 > 7 GB7PZT 250 1! 7 5000 240 25387 4 0% 09/06 13:47 > 8 GB7WV-12 100 32! 1 4000 120 12170 3426 28% 09/06 13:35 > 9 GB7GH 150 104! 4 7000 120 7442 1335 17% 09/06 13:47 10 GB7CL 150 1! 3 7000 240 330 1 0% 09/06 13:23 > 11 GB7IPT-7 150 3! 2 7000 120 19401 2928 15% 09/06 13:47 12 G1LOA-10 150 2! 4 7000 120 10745 3379 31% 09/06 13:39
[return to top]
STATS -- Display router statistics. Syntax: S[TATS] [*] Displays information about the performance of the router, such as the uptime, the no. of packets routed, error rates etc. See elsewhere in this manual for a detailed explanation of the output. Entering S by itself will give a single page synopsis, whereas "S *" will produce the full stats. Note: On multi-port systems the display may wrap, and on busy systems some of the fields may run together. The exact format of the display is not yet finalised and the problems will be addressed in future versions. [return to top] TELNET -- Establish a TCP "connection". Syntax: TEL[NET] <hostname | ipaddress> [port] The TELNET command allows users to "connect" to other TCP/IP systems, using a "shell" account, i.e. the user does not need to be running TCP/IP as the router does all the TCP/IP <> AX25 translation. The optional <port> parameter specifies the desired service on the target host. If not supplied, the default is 23, i.e. the Telnet (remote login) port. Common port numbers are 21 (FTP), 23 (Rlogin), 25 (SMTP), and 87 (TTYLINK). Examples: TEL 44.131.90.6 21 - Connect to gb7ipt FTP. TEL gb7lgs.ampr.org - Remote login to gb7lgs TEL gb7pzt 25 - Connect to gb7pzt SMTP Limitations: This command will only work if the router has an IP address and IP routing has been defined. It should be obvious that the router also needs to be connected to an IP-capable network! Notes: Specifying target hosts by their IP addresses will often result in faster connection if the hostname is not in domain.sys, as it will not have to wait for DNS resolution. See also: PING [return to top] TTYLINK -- Chat directly to another TCP/IP station Syntax: TT[YLINK] <hostname | ipaddress> [port] The TTYLINK command allows users of any type (i.e. AX25, console, wire link, TCP/IP) to chat directly to TCP/IP users. This is similar to TELNET, except that the default port number is 87, which is reserved for keyboard to keyboard chat. Other port numbers may be specified. Examples: TTY 44.131.91.4 TTY g8pzt Limitations: In order for this command to work, the router must have an IP address and have IP routing defined. Note: If the target hostname is not known to the router, it will be more efficient to specify the target as an IP address, since this will not require DNS resolution. See also: TELNET [return to top] USERS Shows who is using the router. Syntax: U[SERS] The USERS command displays the circuits which originate or terminate at the router. "Through" connections are not shown. No arguments are required, and a typical response is as follows: G8PZT:KIDDER} Users: Session Start time S Uplink type/user 807 09/06 13:25 1 L4 (G8PZT@GB7PZT) <--> (G6YAK-1) L2 UPLINK is an incoming connection, and DOWNLINK is an outgoing connection. The type may be L2 (ax25 level 2), L4 (ax25 level 4), TCP (TCP/IP), CON (console i.e. sysop), or TTY (Teletype, i.e. an ASCII wire link). Established circuits are shown by <--> and circuits being set up are shown thus: <~~>. SESSION is a unique session number for the circuit. For TCP/IP connections the IP address and TCP port number are displayed in place of callsign - this may be subject to future review if I decide to make TCP users supply a callsign at login. Unlike the equivalent BPQ command, this does not show the version number - use the VERSION command for that, or buffer count (this system does not use fixed buffers). [return to top] VERSION Display software version. Syntax: V[ERSION] The VERSION command displays the router version, author and compilation date. You should quote the version number when reporting any bugs. [return to top]


=> [ Packet info ] [ Group info ] [ Network info ] [ Home page ]