======Section 1 - General Commands====== ==== ACL ==== ACL(1) XROUTER REFERENCE MANUAL 23/10/2023 **COMMAND** ACL -- IP Access Control List commands **SYNOPSIS** AC[l] D[eny] [protocol] AC[l] L[og] [0-3] AC[l] M[ove] AC[l] P[ermit] [protocol] AC[l] R[emove] AC[l] V[iew] **DESCRIPTION** The ACL command allows XRouter's IP Access Control List to be viewed and edited on the fly without having to edit and reload IPROUTE.SYS. The Access Control List specifies which IP addresses are allowed to send datagrams to, receive datagrams from, and route datagrams through XRouter's TCP/IP stack. It is a "packet filter", which operates on "rules". A DENY rule denies access to a specified destination from a specified source, whilst a PERMIT rule allows access. Both types of rule can work on single addresses or whole subnets. Rules can be added using the ACL commands, either at the command line or in IPROUTE.SYS. If the Access Control List contains no rules, the default action is "permit", i.e. no filtering is performed. This is unsatisfatory, but was necessary to maintain backward compatability. If one or more rules are present, the default action is "deny", i.e. datagrams are ignored unless they match a "permit" rule. Rules are applied in the order in which they appear in the table. There is currently no mechanism to save a modified ACL back to the IPROUTE.SYS file, as the ACL command is intended only for on-the-fly changes. The syntax for each sub-command can be revealed by typing that sub-command without any arguments. **OPTIONS** Typing ACL without any arguments reveals the subcommands as follows: D[eny] Add a "deny" rule to the TCP/IP filter list P[ermit] Add a "permit" rule to the TCP/IP filter list M[ove] Moves a rule up or down in the list R[emove] Remove a TCP/IP filter rule V[iew] View TCP/IP filter rules L[og] Display/change ACL logging state The PERMIT and DENY sub-commands APPEND filter rules to the IP Access Control List. The and arguments each have the form: [/mask][:port] is the source or destination IP address. [mask] is an optional subnet mask, espressed EITHER as the number of bits (0-32) of the IP address to match from left to right, OR as a dotted quad. [port] is an optional TCP or UDP port number. Omitting this or setting it to 0 implies "any port". [protocol] if present, restricts the rule to a single protocol. This is the number of the higher level protocol carried in the IP datagram, for example TCP is 6 and UDP is 17. Omitting this field, or setting it to 0 implies "any protocol". The combination 0.0.0.0/32 is a special case matching any of XRouter's IP addresses. The VIEW subcommand displays all the rules. Each rule has a number, which can be used by the REMOVE subcommand. The REMOVE subcommand removes a rule. After removal, the remaining rules are renumbered. The LOG subcommand displays or sets the ACL logging level. The only levels so far defined are: Level Actions ------------------------------------------- 0 No ACL logging 1 Log denial events 2 Display denial events on IDS window 3 Log and display denial events Typing ACL LOG without any arguments displays the current log level. If ACL logging is enabled, ACL events go into the main daily log. Be aware that in some cases this might generate a lot of logging, and in other cases virtually nothing. It depends on how strict your rules are, what your IP routing table is like, how open your system is to the outside world, and how much it is attacked. Logging defaults off, but the ACL LOG command may be used in IPROUTE.SYS to set it on at bootup if desired. **EXAMPLES** Allow LAN sources to access any destination: acl permit 192.168.0.0/16 0.0.0.0/0 Allow XRouter to access any destination: acl permit 0.0.0.0/32 0.0.0.0/0 Prevent non-LAN sources from accessing our TCP port 513: acl deny 0.0.0.0/0 192.168.0.245:513 6 **AVAILABILITY** The ACL command is only available to sysops. **SEE ALSO** IPROUTE.SYS(8) -- IP Routing File. IDS(9) -- Intrusion Detection System. ACCESS.SYS(8) -- Telnet Access Control File. AXSCTRL(9) -- TCP/IP Access Control. ---- ==== AMSG ==== AMSG(1) XROUTER REFERENCE MANUAL 19/10/2023 **COMMAND** AMSG -- Enter APRS Messaging mode. **SYNOPSIS** AM[sg] **DESCRIPTION** The AMSG command switches the user's session into APRS messaging mode, enabling him to exchange messages and bulletins with APRS and UI-View users. The argument specifies the radio port upon which traffic will be sent and received. e.g. "AM 13" will use port 13. Within messaging mode, all commands begin with a forward slash (/), and anything else is treated as message text for transmission. The commands are as follows: /A[nnouncements] Show announcements /B[ulletins] Show bulletins /C[ancel] [#] List / cancel unacked message(s) /D[irects] Show directly heard stations /H[elp] [cmd] Display command help /Monitor [on|off] Query / set traffic Monitor mode /Q[uit] Quit (exit) /T[arget] [call] Query / set target for msg /U[iview] [on|off] Query / set UI-View mode /V[ia] [digis] Query / set digipeater path /X Exit Only the first letter of each command needs to be supplied. A few are worthy of further explanation.... The /D command shows a list of all the stations heard directly, i.e. not via digipeaters or 3rd party networks. Before any type of message or query can be sent, the user must specify a "target" address, using "/T [call]". For messages, the target is a callsign. For bulletins the target should be BLN#*, where "#" represents a single digit, and "*" represents the bulletin category of up to 5 characters. Announcements use the same format as bulletins, except that "#" represents a non-digit. Attempting to send a message without first defining a target will result in an error response. The target remains in force until a new target is specified. The current target can be displayed by entering "/T" alone, or cleared by entering an invalid target, e.g. "/T .". Outgoing messages and bulletins are re-transmitted at intervals until either an acknowledgement is received, or too many retries have taken place. Bulletins are re-transmitted every 20 minutes for 4 hours, whilst announcements are re- transmitted every hour for 4 days. Messages are initially re- transmitted after 10 seconds, then the interval doubles with each re-send. When the interval exceeds approximately 1.5 hours, the message is expired and re-transmission ceases. The "cancel" command allows the re-transmission of outgoing messages and bulletins to be cancelled at any time before expiry. The /M (Monitor) command allows other APRS and UI-View message traffic on the channel to be watched. The default is "off". Entering /M by itself shows the current state. The /U (Ui-View mode) command sets the type of outgoing message to be used. The default is "off", which means that all outgoing messages will be in APRS format. If turned "on", outgoing messages will be in "UI-View" format. In either mode, both types of message can be received. UI-View messages will display with a tilde (~) between the message and its ID, whereas APRS-format messages will display with a curly opening bracket ({) if a message ID was supplied. In UI-View mode, "\" will send a UIVIEW message whose text portion contains a single byte of value , e.g. "\254" sends a PING request. /Q (quit) and /X (exit) are identical in function, exiting message mode and returning the user to XRouter's main command prompt. The /V (via) command sets the digipeater path for outgoing messages, or if used by itself displays the currently set path. The path defaults to the port APRSPATH specified in XROUTER.CFG. In APRS mode, the destination call is fixed at APZ###, where ### is the 3 digit Xrouter version number, whereas in UI-View mode the destination call is set by the /Target command. The /H (help) command is used to display help for the messaging commands. If no argument is supplied, a very brief (low bandwidth) command resume is displayed. If the help files are installed, "/H *" will list the help available, and "/H " can be used to obtain more detailed help for , e.g. "/H /V". Note that the leading slash of the argument is ignored, so "/H V" is equally valid. **NOTES** If Xrouter receives an APRS message whose target address is a user currently logged into the APRS messaging shell, the message is delivered to the user and, if there was a message ID, an acknowledgement is sent. Each re-send of the message is acknowledged, because a re-send probably indicates that the sender didn't receive the previous ack. If the same message is received twice within 30 seconds, the second copy is ignored. This helps to eliminate duplicates received via different digipeater routes. Expired messages are retained for 1 day before being deleted. During this interval they will be reactivated if a "?APRSM" query is received from the target station. Outgoing bulletins and announcements are not retained after expiry. Incoming bulletins are retained for 4 hours after last received, and incoming announcements are retained for 4 days after last received. The APRS spec limits the maximum message length to 67 characters. Because a message ID of up to 6 characters is appended to the message, XRouter splits messages longer than 61 characters into separate messages no longer than 61 characters (excluding ID) each. All APRS facilities are an ongoing experiment and may be liable to change as development continues. The so-called "APRS Protocol Reference" is rather fuzzy in places! **AVAILABILITY** All users, but guests can't send messages. ---- ==== ANSI ==== ANSI(1) XROUTER REFERENCE MANUAL 21/10/2023 **COMMAND** ANSI -- Enquire/set ANSI colour mode **SYNOPSIS** AN[si] [on | off] **DESCRIPTION** The ANSI command switches ANSI colour mode on/off, and reports the current mode. To use ANSI colour, you need an ANSI-capable terminal, such as XRouter, PuTTY, Windows Telnet or Linux Telnet. By default, sessions on the XRouter console are in colour, i.e. ANSI is ON. You can type ANSI OFF to view in glorious monochrome. If your session is in colour, and you perform a NetRom connect to another XRouter (version 502 or later), that connection will also be in colour. **EXAMPLES** ANSI Reports current on / off state. ANSI ON Turn colour on. **AVAILABILITY** The ANSI command is available to all users. ---- ==== APPLMASK ==== APPLMASK(1) XROUTER REFERENCE MANUAL 4/9/2023 **COMMAND** APPLMASK -- Display / Set Application Connectivity Mask. **SYNOPSIS** APP[lmask] [0-255] **DESCRIPTION** The APPLMASK command displays and controls which applications are connectable at AX25 L2 on the specified port. It has a similar function to the APPLMASK directive, used in XROUTER.CFG, but facilitiates runtime changes. In this context, "applications" refers to programs which use XRouter to provide their connectivity with the outside world. In order to be directly connectable on a particular port, the application must have an APPLCALL, an APPLALIAS or both, and the corresponding bit in that port's APPLMASK must be set. APPLMASK specifies which applications are directly connectable on a given port. The default is 255, which allows all applications. The value is made up by adding together the desired selection from the following numbers: 1 - Enable Application 1 2 - Enable Application 2 4 - Enable Application 3 8 - Enable Application 4 16 - Enable Application 5 32 - Enable Application 6 64 - Enable Application 7 128 - Enable Application 8 For example, if a port's definition contains "APPLMASK=9", it will only allow direct connections to applications 1 and 4 on that port, providing those applications have either an APPLCALL or an APPLALIAS. **AVAILABILITY** The APPLMASK command is only available to sysops. **SEE ALSO** APPLMASK(7) -- APPLMASK Directive APPLS(9) -- Application Support. XROUTER.CFG(8) -- Main Configuration File. ---- ==== ARP ==== ARP(1) XROUTER REFERENCE MANUAL 21/10/2023 **COMMAND** ARP -- Display / Edit the ARP table. **SYNOPSIS** ARP A[dd] ARP C[md] [0-255] ARP D[rop] ARP F[lush] ARP L[ist] ARP M[axq] [0-32767] ARP LE[arn] [ON | OFF] ARP P[ublish] ARP T[imeout] [secs] ARP W[ait] [secs] **DESCRIPTION** The ARP command is used to display and edit the Address Resolution Table, which maps IP addresses to hardware ones. is an IP address in dotted quad form. is hardware type, i.e. "ax25" "netrom" or "ether". is the hardware address (callsign / ethernet addr). ARP by itself, lists the table. ARP ADD is used to add an entry to the table. ARP CMD specifies the functionality of the ARP command. ARP DROP is used to delete an entry from the table. ARP FLUSH flushes temporary entries from the table. ARP LEARN controls arp learning. ARP LIST lists the table. ARP MAXQ limits no. of datagrams queued pending resolution. ARP PUBLISH adds an ARP proxy entry for a hidden system. ARP TIMEOUT specifies max life of a dynamic entry (secs). ARP WAIT specifies how many secs to wait for an ARP reply. **EXAMPLES** ARP ADD 44.131.91.2 ax25 gb7pzt-5 Add ax25 entry ARP DROP 44.131.91.7 ax25 Delete ax25 entry ARP PUB 44.131.91.127 ax25 g8pzt Publish 91.127 ARP TIMEOUT 30 Set 30 sec lifetime ARP LEARN 2 ON Enable learn on port 2 ARP LIST List the table ARP List the table **MORE INFO** ARP PUBLISH is used when a host is "hidden" on a network which is only accessible via XRouter, and allows XRouter to respond to ARP requests for the hidden system, by returning its own hardware address. The argument for "ARP CMD" is the sum of the desired options from the following list:: 1 = Command is available to secure sysops 2 = Command is available to non-secure sysops 4 = Command is available to users 8 = Private addresses visible to secure sysops 16 = Private addresses visible to non-secure sysops 32 = Private addresses visible to all users The default is 9 (secure sysops only). A "secure sysop" is at the console, or on a private LAN. A "non-secure sysop" is one using a public RF network. ARP LEARN controls whether or not XRouter "learns" ARP info from passing ARP traffic. The default is for learning to be ON, but it may be enabled/disabled using ARP LEARN DEFAULT [on | off]. Regardless of the default setting, learning can be enabled or disabled for any port, using ARP LEARN [on | off]. if not refreshed, learned entries persist for the interval specified by TIMEOUT, usually 15 minutes. ARP FLUSH removes temporary entries, i.e. those pending resolution. The default lifetime for these entries is specified by ARP WAIT (default 30 secs). ARP MAXQ [0-32767] is used to limit the nunber of datagrams which may be queued pending resolution. The default is 100. If the address fails to resolve, the queued datagrams are dropped. **AVAILABILITY** The availability of the command is controlled by "ARP CMD", which is detailed above. **FILES** ARP commands to be executed at boot-up are usually placed in IPROUTE.SYS, but they may also be used in BOOTCMDS.SYS. **NOTES** In order for this command to have any meaning, XRouter must have an IP address and be connected to an IP-capable network. You cannot add hardware address types for which there is no compatible interface, e.g. an attempt to add an Ethernet address on a system with no Ethernet interfaces will fail. The defaults are as follows: TIMEOUT=900 secs. WAIT=30 secs, MAXQ-100, CMD=9 **SEE ALSO** ARP(9) -- Address Resolution Protocol ---- ==== AXROUTES ==== AXROUTES(1) XROUTER REFERENCE MANUAL 19/10/2023 **COMMAND** AXROUTES -- Display AX25 level 2 circuits **SYNOPSIS** AX[routes] [ | | X ] **DESCRIPTION** The AX[routes] command displays information about current and recently active ax25 level 2 connections. It allows the sysop to monitor the performance of the links between XRouter and its users or peers. Entries are purged 24 hours after they were last active, unless they are "locked" (indicated by "!" after the callsign), i.e. in use by level 3. The display shows the the port number and the remote callsign, with a chevron ">" in the leftmost column if the link is currently active. "M", "Pac" and "F" are the Maxframe, Paclen and Frack last used on that link. They may be the same as the port or global defaults, or they may have been dynamically modified by XRouter to suit the link conditions "RTT" is the Round Trip Time in seconds, i.e. the average time from sending a packet to receiving an acknowledgement for that packet. This is dependent on many variables, such as the packet size, how good the radio link is, the data rate, the amount of queued data, the TXdelay and Resptime intervals at each end etc... "Sent" is the total no. of L2 frames sent to that station. "Resent" is the number of frames which had to be retried. "RTY%" is the ratio of these expressed as a percentage. "Rcvd" is the total no. of L2 frames received from that station. "Lost" is the number which were lost and had to be re-sent from the other end. "Rol" is "Rate Of Loss", which is effectively the retry rate which would be seen by the other station. Finally, Date/Time shows when the station was last heard. **OPTIONS** AX[routes] by itself lists all the L2 routes. AX[routes] lists only the routes to . AX[routes] lists only the routes on that port. AX[routes] X shows sent/rcvd bytes and throughput. **AVAILABILITY** Sysop-only **NOTE** This facility was intended for the author's benefit only. It is likely to change or disappear altogether in future versions. If you find it useful, let the author know. **SEE ALSO** LINKS(1) -- Display currently active level 2 links ROUTES(1) -- Display links with adjacent nodes ---- ==== BCAST ==== BCAST(1) XROUTER REFERENCE MANUAL 4/9/2023 **COMMAND** BCAST -- Trigger a "nodes" broadcast. **SYNOPSIS** BC[ast] **DESCRIPTION** The BC[ast] command triggers an immediate NetRom "nodes" broadcast on the specified port, speeding up the process of neighbour discovery after a system restart. If a broadcast is triggered with this command, the next "scheduled" broadcast is re-scheduled, to take place after another NODESINTERVAL. Although this command was intended for test purposes only, it can also be used in CRONTAB.SYS for scheduling nodes broadcasts at specific times, overriding the automatic scheduler. This could for example be used to stagger the broadcasts to reduce loading on a radio PSU for example. **AVAILABILITY** Sysop-only. **NOTE** This COMMAND should not be confused with the DIRECTIVE of the same name, used in XROUTER.CFG, which has a different purpose altogether. **SEE ALSO** BCPOLL(1) -- Request a nodes broadcast. BCAST(9) -- UI Broadcasting NODESINT(1) -- NODESINTERVAL command CRONTAB.SYS(8) -- Events control file XROUTER.CFG(8) -- Main Configuration File. ---- ==== BCPOLL ==== BCPOLL(1) XROUTER REFERENCE MANUAL 19/10/2023 **COMMAND** BCPOLL -- Request "nodes" broadcasts from neighbours. **SYNOPSIS** BCP[oll] **DESCRIPTION** The BCP[oll] command requests a NetRom "nodes" broadcast from all neighbours on the specified port. This can speed up the process of neighbour discovery after a system restart. Upon receipt of this command, XRouter sends out a short packet addressed to "NODES". Most types of neighbour node should recognise this packet, and begin broadcasting their nodes list. The responses may not be immediate. Nodes wait a random interval up to 30 seconds before broadcasting, to avoid RF collisons. **AVAILABILITY** Sysop-only. **SEE ALSO** BCAST(1) -- Trigger a nodes broadcast. ---- ==== BELL ==== BELL(1) XROUTER REFERENCE MANUAL 4/9/2023 **COMMAND** BELL -- Display / Set bell times. **SYNOPSIS** BE[ll] [h,h h-h] **AVAILABILITY** Sysop-only. **DESCRIPTION** The BELL command is used to display and set the hours during which the console bells will sound. These are the two tone connection (low->high) and disconnection (high->low) bells, the 4 tone (Star Trek doorbell) sysop paging sound, and the various bells associated with sysop chat. Console sounds normally use the PC speaker, but Raspberry Pi's and modern laptops don't have speakers. In such cases, a sound device can be used instead (see AUDIO(9)). **OPTIONS** When used without arguments, the current times are displayed. To set the bell times, the times may be supplied either as a series of single hours, or in one or more ranges of times e.g. "8-22", or as combinations of the two. **EXAMPLES** BELL 12 - Bells only between 12:00 and 12:59 BELL 0-4, 12-23 - Allow bells between midday and 4am next day. **CAVEATS** Whatever the BELL setting, the console may still bleep if the sysop tries to exceed a line length or delete back beyond the start of a line. **NOTES** The default bell times are 08:00 to 22:59 inclusive. The BELL command may be used in BOOTCMDS.SYS to override this Alternatively the BELL= directive can be used in XROUTER.CFG, like so... # Acceptable bell hours, format n,n,n-n n etc BELL=0-5,11-23 **SEE ALSO** AUDIODEVICE(7) -- Specify audio device name AUDIO(9) -- About audio in XRouter ---- ==== BLEVEL ==== BLEVEL(1) XROUTER REFERENCE MANUAL 4/9/2023 **COMMAND** BLEVEL -- Netrom Budlist de-rate level. **SYNOPSIS** BL[evel] [0-255] **DESCRIPTION** The BLEVEL command displays or sets the L3 "budlist level". This is the leakage level 0-255 for L3EXCLUDE. The default is 0 (allow no packets). This allows trafic from "troublesome" users to be "choked" to a greater or lesser degree. This has been found to be more effective than an outright ban, which usually results in more aggressive attacking. The miscreant simply assumes that the network is slow, and he doesn't get to do much. A BLEVEL of 0 blocks all NetRom L3 packets from the stations budlisted by L3EXCLUDE. At the other extreme, 255 allows all packets. The allow-rate is BLEVEL/256, so for example a BLEVEL of 64 would allow roughly 1 in 4 packets through. **AVAILABILITY** Sysop-only. **NOTE** A directive of the same name can be used in XROUTER.CFG. **SEE ALSO** BLEVEL(7) -- L3 Budlist de-rate level directive. L3EXCLUDE(7) -- Level 3 Exclusion List. XROUTER.CFG(8) -- Main Configuration File. ---- ==== BLOG ==== BLOG(1) XROUTER REFERENCE MANUAL 7/9/2023 **COMMAND** BLOG -- Access Sysop's Blog(s) **SYNOPSIS** BL[og] [nodecall | nodealias] **DESCRIPTION** The BLOG command connects the user either to the sysop's blog either at this node, or on another XRouter. The blog is a text-only, packet radio version of an Internet "web log". It is a space for sysops to post "articles", which other people can "like" or reply to. Unlike the "wall", only SYSOPS can create original articles. These have no size restrictions, and may contain paragraphs and markup. Anyone may add comments to an existing article. Comments are not restricted in size. Blog articles are not forwarded to other packet systems, but may optionally be published to an MQTT broker. The blog may also be operated via the sysop's web interface, via MQTT, and via REST. The BLOGFLAGS directive enables or disables the blog, and controls whether the sysop is notified (via the PMS) of new likes and replies. It also controls whether articles and replies are published to the MQTT broker. **OPTIONS** If no argument is supplied to the BLOG command, the user is connected to the local blog. If the argument is the nodecall or alias of another XRouter, which is in the nodes table, the user is connected to the blog of that node instead. After connecting to the blog, the available commands are as follows: B[ye] Returns you to the node (same as Q[uit]). C[reate] Begins creation of a blog article (sysop-only). Text is entered in the same manner as for a PMS, and is terminated by "/EX" on a new line. D[elete] Deletes an article or reply. H[elp] Displays a help summary. LIK[e] [n] (shortcut "K") is used to "like" either the article you've just read, or article number "n". L[ist] Displays or re-displays the header information of up to 5 articles at a time. Headers are displayed in reverse chronological order, i.e. the most recent at the top. N[ewer] Displays up to 5 newer (more recent) articles. O[lder] Displays up to 5 older (less recent) articles. Q[uit] Returns you to the node (same as B[ye]. R[ead] n Reads article number "n". Or you can omit the 'R' and use the number alone. REP[ly] [n] (shortcut "Y") begins a reply to the article you've just read, or to article number "n". V[iew] [n] View replies to current article, or article "n". **EXAMPLES** BLOG -- Connect to the PMS on this node. BLOG G8PZT -- Connect to the PMS on G8PZT node. **AVAILABILITY** All users. **PHILOSOPHY** A blog on Packet Radio might sound like a crazy idea, but is it any crazier than a packet bulletin board? Even though there are many Internet forums, people still run packet bulletin boards! There are millions of blogs on the Internet, but can you remember all the URL's? Will they still be there tomorrow? Are they riddled with cookies, trojans and clickbait? Are they easy to use? Shouldn't packet blogs be hosted on PACKET? In order to survive, Packet Radio needs CONTENT. There's no point having a network if that network has nothing to do. The purpose of a network is to move DATA. A blog is just another form of data. It gives people a reason to use the network. The Sysop's blog is just another tool in the communications toolbox. Hopefully some sysops may contribute their thoughts, and others will find them interesting and thought provoking, but you don't have to use it. **SEE ALSO** BLOGFLAGS(7) -- Options For Sysop's Blog. MQTT-BLOG(9) -- MQTT Interface to Blog. MQTT-SRV(9) -- MQTT Server / Broker PMS(1) -- Personal Message System. REST-BLOG(9) -- REST Interface to Blog. WALL(1) -- Message Wall / Guestbook. XROUTER.CFG(8) -- Main Configuration File. ---- ==== BYE ==== BYE(1) XROUTER REFERENCE MANUAL 16/10/2023 **COMMAND** BYE -- Disconnect from the router. **SYNOPSIS** B[ye] **DESCRIPTION** The BYE command causes XRouter to terminate the uplink. It is particularly useful when a user cannot terminate the connection locally, e.g. if there's no easy access to their TNC's "command mode", or when the uplink is from another node with the "stay" option enabled. The disconnection occurs only after all outstanding data has been sent to the user. Disconnectiing the uplink terminates all dependent sessions. **AVAILABILITY** All users. **SEE ALSO** QUIT(1) -- Disconnect from the router ---- ==== CAPTURE ==== CAPTURE(1) XROUTER REFERENCE MANUAL 16/10/2023 **COMMAND** CAPTURE -- Enable / disable tracing to disk file. **SYNOPSIS** CAP[TURE] [on | off] **DESCRIPTION** The CAPTURE command is used to enable or disable the capture to disk file of incoming and outgoing traffic. When capture is enabled, anything which is displayed in the central window of an XRouter console is also written to disk. This includes session activity and TRACE'd data. Whereas the screen display is filtered to prevent it being garbled by binary data, the capture is pure binary, so it is useful for diagnostics. The optional argument may be "ON" or "OFF". If no argument is supplied, the current setting is reported. This command overrides the (toggle capture) key. There is a seperate capture file for each XRouter "console", named CAPTURnn.TXT where nn represents the console number (01 to 05). Capture is fully independent on each console, and consoles may be captured concurrently. Switching between consoles, or scrolling consoles back, does not affect the capture. **EXAMPLE** CAP ON - Enables capture. **AVAILABILITY** Cconsole and remote sysops only. **FILES** The CAPTUREnn.TXT files are created in the XRouter working directory. Although they have the extension ".TXT" to enable them to be easily opened with Notepad, they may sometimes contain characters which Notepad can't display. **SEE ALSO** MONITOR(1) -- Controls protocol tracing ---- ==== CFLAGS ==== CFLAGS(1) XROUTER REFERENCE MANUAL 4/9/2023 **COMMAND** CFLAGS -- Display / Change Connection Control Flags. **SYNOPSIS** CF[lags] [0-31] **AVAILABILITY** Sysop-only. **DESCRIPTION** CFLAGS is a port configuration command, whose primary function is to control whether or not AX25 level 2 uplinking and/or downlinking is allowed on the port. A typical use may be to prevent users from uplinking and downlinking on APRS-only ports. It also allows the sysop to control whether or not L3RTT frames are generated on inter-node links, and whether or not AX25 level 2 fragmentation is allowed on the port. A directive of the same name can be used in PORT config blocks within XROUTER.CFG. **OPTIONS** Add together the decimal values of the desired options from this list: Bit Dec Function --------------------------------------------------------- 0 1 - Allow incoming connections (uplinks). 1 2 - Allow outgoing connections (downlinks). 2 4 - Applications may downlink unconditionally. 3 8 - Suppress L3RTT generation. 4 16 - Allow L2 fragmentation. The default value is 3, i.e. unconditional use of the port. Irrespective of the setting of CFLAGS, the Sysop can always downlink. Bit 2 allows applications to downlink unconditionally, i.e. even if users are prevented from downlinking. Bit 3 was provided to keep the Luddites happy, but its use is strongly deprecated. Setting this flag prevents L3RTT frames from being originated by the port if it is carrying an inter-node link. It will not prevent XRouter from trying to hold inter-node links open, as that is too much of a retrograde step! This bit is not set by default. Note that L3RTT may also be suppressed if a route's MAXTT is 65535. Bit 4 allows AX25 layer 2 fragmentation if it is set. This is required if Forward Error Correction (FEC) is in use, to allow big L3 frames to be sent. **EXAMPLES** CFLAGS 4 - Display current value for port 4 CF 4 5 - Only sysops and apps can downlink on port 4. **SEE ALSO** CFLAGS(7) -- Set connection control flags. L2FRAG(9) -- AX25 Layer 2 Fragmentation. L3RTT(9) -- Layer 3 Round Trip Time. FEC(1) -- Forward Error Correction. XROUTER.CFG(8) -- Main Configuration File. ---- ==== CHATCMD2 ==== CHATCMD2(1) XROUTER REFERENCE MANUAL 23/1/2013 **CHAT SERVER COMMANDS (M-Z)** ========================== **The following commands are available within the chat server only.** /? /ALERT /ANSI /BELL /BYE /CHANNEL /ECHO /EXIT /HEADERLN /HELP /JOIN /KEEPALIV /KM /KNOWN /LEAVE /LINKS /MSG /NAME /NODES /PERSONAL /PORTS /QTH /QUIT /RECENT /RM /STAMP /TOPIC /USER /VERBOSE /VERSION /WHO **CHAT SERVER COMMANDS IN DETAIL - continued** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /MSG --- Send a short message to a channel or a single user. Syntax: /M[sg] The /Msg command is used to send a short message (70 chars max.) to any specified channel or single user. You may for example use this command to direct a message to a channel you are monitoring, but not actually logged to. If you direct a message to a specific user, he may be on this or any other chat server. The private nature of the message will be indicated to the recipient by asterisks around the sender's call, e.g. <*g8pzt@kdchat*> (Paula): Meet me on channel 69. If the target user's server is specified in the command, and the user isn't currently logged on, the message will be stored until he logs on. e.g. "/M g6yak@kdrcht Give me a shout on 'KD when you read this.." Examples: /M 32 Hello People /M g6yak Meet me on channel 69 /M g6yak@kdrcht See u on KD later The first form sends "Hello People" to all the users of channel 32, and the second form sends a private msg to g6yak only. Providing G6YAK is logged on to any chat server, the message will find him. The third form sends a private message to G6YAK on the KDRCHT server. If G6YAK is not currently logged on, the message will be stored for him. Note: As with all things Packet, the term "private" is relative, as nothing is truly private when it is broadcast! /NAME -- Set name. Syntax: /N[ame] [channel] The /NAME command sets the user's name, which will be displayed on the user list and prefixed to everything he sends to others. Users are not allowed to join any channels until they have supplied a name (12 chars max), so it acts as a "log on" command. The name need be supplied only at the initial logon, and may be changed as the user wishes. On the first use of this command, the user may optionally specify a channel to join instead of the default (channel 0). TCP/IP users must first use the /USER command (see below) to enter their callsign. Examples: /N Paula Set name to "Paula" /N Paula 23 Set name and join channel 23 /NODES - Display RoundTable nodes Syntax: /NO[des] The /NODES command displays a detailed list of the known RoundTable / BPQchat nodes. This command currently duplicates the function of the /K command. The display includes the node call and alias, plus the software version used at that node. /PERSONAL - Display / change personal description. Syntax: /P[ersonal] [text | @] The /PERSONAL command is used to display or change the user's personal description. This is a short text of up to 32 characters, which is displayed on the user list. It may typically contain the user's home town and "brag" information. If the user logs onto any "public" channels (i.e. those above channel 255), this information will appear on the user lists of all other chat servers. If used without arguments, the /PERSONAL command displays the user's current text. If the argument is "@", the existing text is removed. Examples: /P - Displays current text /P Kidderminster, sysop - Set new text. /P @ - Clear previous text. /QTH --- Display / set QTH. Syntax: /Q[th] [your-qth] The /QTH command is used to set your QTH. QTH is not currently required by the XRchat system, but is mandatory if you log in to room 101 (RoundTable/BPQ chat). Examples: /Q - Displays current QTH. /Q Weston Super Mare - Sets new QTH. Note: QTH may include spaces, and can be up to 64 characters. /QUIT -- Exit the chat server. Syntax: /QU[it] The /QUIT command, which may be shortened to /Q, disconnects the user from the chat server, and informs everyone that he's left. There is no need for the user to /leave any logged channels before issuing this command. If the user accessed the server via the router's CHAT command, he will be returned to the router's main command prompt, otherwise he will be completely disconnected. The /BYE and /EXIT commands also perform this function. /RECENT - Display Recent Messages Syntax: /R[ecent] [channel] The /RECENT command displays the last 10 messages received in the last 24 hours. Examples: /RECENT - Show recent messages from all channels /RE 1234 - Recent messages from channel 1234 The purpose of this command is to display messages that you might have missed while you weren't connected, allowing you to conduct non-real-time conversations. Messages currently expire after 24 hours. /RM ---- ReadMail Syntax: /RM The /RM (ReadMail) command is used to read any personal messages that were left for the user while he was offline. If someone sends a certain type of personal chat message to a user while he isn't logged in, that message is stored on the chat server, and he is notified when he next logs in. He may then use the /RM command to read the messages. Messages are not deleted after they are read. The /KM (KillMail) is used to delete unwanted messages. /STAMP - Controls timestamping of message texts. Syntax: /S[TAMP] [on | off] With stamp ON (default) each mesage is timestamped in the following style, designed to be readable both by humans and by client software: [1234] 09:35 {21:33} (Peter): Hello folks The first field is the channel number. This may seem pointless, but you will soon appreciate it if you are logged to more than one channel! The second field is the chatserver's timestamp, i.e. the local time the message was received at, and redistributed by, the server. This is useful if you are away from the screen for a while, or are logging the activity to disk. The third field is the originating server's timestamp, i.e. the local time at which the message was entered into the system. With servers linked across different timezones, the two timestamps may differ by up to 12 hours. Personally I find it useful to know what the other user's local time is, because it helps put their comments into perspective. The timestamps can also highlight propagation delays. The fourth field consists of the sender's callsign and the "alias" of the originating server. Users may (and often do) log onto more than one server, often at the same time. The fifth field is the user's name. Those who are used to chatting on the Ping-Pong system seem to be unable to cope with anything which is different, so with STAMP OFF the header information is abbreviated in the Ping-Pong style as follows: : Test /TOPIC - Display / Change channel topic. Syntax: /T[opic] [channel] [text | @] Every channel has an optional topic, and the /TOPIC command can be used to display the existing topic or change it. The topic can be up to 12 characters, and is displayed on the /Who list. Examples: /T - Show current ch. topic /T 32 - Show channel 32 topic /T 32 TCP/IP discussion - Set topic for ch. 32 /T @ - Clear topic. /USER -- TCP/IP logon. Syntax: /U[ser] [name] The /USER command is available only to TCP/IP users. It sets the user's callsign (and optionally his name), which will be displayed on the user list and prefixed to everything he sends to others. The user will not be able to join the conference without supplying both callsign (9 chars max) and name (12 chars max), but if the name is omitted from this command he may enter it in the normal way with the /Name command. Examples: /U g8pzt - Set callsign to "g8pzt". /U g8pzt Paula - Set callsign and name. /USERS - Display RoundTable/BPQChat users. Syntax: /U[sers] The /USERS command is available only when logged to the RoundTable/BPQChat channel (room 101). It displays all the users currently logged into the RoundTable/BPQ chat network. For each user, the callsign, name and QTH are displayed, together with the alias of the server where they are logged in. /VERBOSE - Enable / disable Verbose alerts Syntax: /VERB[ose] [on | off] Controls whether or not the user gets advised of things happening on other channels. e.g. if sysop is monitoring channel 1234 with verbose on, she would be advised whenever anyone logs on or off any channel. This is primarily of use to GUI clients, allowing them to build and maintain their own lists of who's on what channel. /VERSION - Display chat server version. Syntax: /V[ersion] The /VERSION command displays the chat server version, author and compilation date. Please quote it if reporting bugs. /WHO --- List channels and users. Syntax: /W[ho] [*] The /WHO command lists who is logged onto the chat server, and what channels they are on. If no arguments are supplied, the active channels are listed, along with the callsigns of their users. If an asterisk is supplied as the argument, each user is displayed in more detail. The display would typically show the user's callsign, name, personal text and logon date/time. Examples: /W Lists channels & users in brief format /W * Lists users in detail **SEE ALSO** CHAT(1) -- Start a chat session CHATCMDS(1) -- Chat server commands A-M ---- ==== CHATCMDS ==== CHATCMDS(1) XROUTER REFERENCE MANUAL 23/1/2013 **CHAT SERVER COMMANDS (A-L)** ========================== **The following commands are available within the chat server only.** /? /ALERT /ANSI /BELL /BYE /CHANNEL /ECHO /EXIT /HEADERLN /HELP /JOIN /KEEPALIV /KM /KNOWN /LEAVE /LINKS /MSG /NAME /NODES /PERSONAL /PORTS /QTH /QUIT /RECENT /RM /STAMP /TOPIC /USER /VERBOSE /VERSION /WHO **CHAT SERVER COMMANDS IN DETAIL** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /? ----- Display commands / syntax help. Syntax: /? [cmd] When used without arguments, the /? command lists the available commands. The syntax for any of the commands thus listed may be shown by specifying the command as an argument to the /? command. Examples: /? List available commands. /? /who Display syntax for the /WHO command. /ALERT - Enable / Disable channel join/leave alerts Syntax: /A[lert] [ON | OFF] Examples: /A Reports current on / off state. /ALERT ON Turns alerts on. If ALERT is ON, the server sends you a notification every time someone joins or leaves the channel (room) you are in. This is the default setting. /ANSI -- Enable / Disable ANSI colour Syntax: /A[nsi] [on | off] The /ANSI command is used to enable or disable the use of ANSI colour. In order to make use of this feature, callers must be using an ansi-compatible terminal. When enabled, each user's messages are shown in a different colour making it easier to follow threads of conversation. Typing /ANSI by itself displays the current setting. /BELL -- Display / Set activity bell Syntax: /BE[ll] [0-3] The /BELL command controls which events are signalled by an audible warning. The warning consists of a bell character (ascii 7) within the text. In order to use this feature, your terminal software must respond to bell characters. Arguments to the /BELL command are as follows: 0 No bells (default setting) 1 Informative messages from chat server only 2 Text entered by other chatters only 3 All events. /BYE --- Exit the chat server. Syntax: /B[ye] The /BYE command, which may be shortened to /B, disconnects the user from the chat server, and informs everyone that he's left. There is no need for the user to /leave any logged channels before issuing this command. If the user accessed the server via the router's CHAT command, he will be returned to the router's main command prompt, otherwise he will be completely disconnected. The /EXIT and /QUIT commands also perform this function. /CHANNEL - Display / Change logged channel(s). Syntax: /C[hannel] [number] | DEFAULT [number] The /CHANNEL command displays / changes the channel(s) the user is logged to. When no argument is supplied, the logged channel(s) is / are displayed. If a valid numeric argument is supplied, the user is logged to the specified channel. Examples: /C Displays your current channel(s) /C 22 Change to channel 22 /C default 1234 Default to channel 1234. When a new channel is selected, the user remains logged to any previous channels, (so he can "monitor" several channels at once) but any subsequent text he sends will go to the new channel (unless targeted otherwise). Channels 1 to 255 (except 101) are "local" to this server. Channel 101 links with RoundTable/BPQchat, if enabled. Channels 256 to 32767 may be linked to other Xrouter chat servers. If a connection with the "Tampa Ping-Pong converse" system has been enabled, channels 0 to -32767 correspond to channels 0 to 32767 on Ping-Pong, otherwise they can be used as local channels. The default channel at log-on is 1000. You may check or change this using the "/channel default" form of this command. The /JOIN command has a similar function, and /LEAVE is used to de-select unwanted channels. /ECHO -- Control host echo Syntax: /EC[ho] The /ECHO command toggles host echo on and off. The default setting is ON, i.e. the user receives a copy of any text he sends to the channel. Although host echo slightly increases bandwidth usage, it helps to put the user's text into temporal context amongst the other channel texts, especially when there is latency on the links. The user can more easily spot mistakes such as an incorrectly entered name or callsign. /EXIT -- Exit the chat server. Syntax: /E[xit] The /EXIT command, which may be shortened to /E, disconnects the user from the chat server, and informs everyone that he's left. There is no need for the user to /leave any logged channels before issuing this command. If the user accessed the server via the router's CHAT command, he will be returned to the router's main command prompt, otherwise he will be completely disconnected. The /BYE and /QUIT commands also perform this function. /HEADERLN Controls display format Syntax: /HEA[derln] [on | off] The /HEADERLN command controls whether or not the "header" and text of messages are displayed on the same line. If the setting is OFF (default), the header and text are displayed on the same line. This leads to a more compact display, especially when the texts are short. If the setting is ON, headers and text are displayed on separate lines. /HELP -- Obtain help. Syntax: /HELP [topic] When used without arguments, the /HELP command gives brief instruction on how to access various levels of help. If a topic is specified, detailed help for that topic (if available) is displayed. The topic may be a command name, or any other chat server related topic. A list of the available help topics can be obtained by specifying "*" as a topic. Examples: /H Display general instructions. /H * List available help topics. /H /who Display help for /WHO command. Note: When using /H to display help for a command, the leading slash for that command may be omitted. Thus "/H /who" and "/H who" are equally permissible. /JOIN -- Join (log onto) a channel. Syntax: /J[oin] The /JOIN command logs the user to a channel, and performs a similar function to the /CHANNEL command. When a new channel is selected, the user remains logged to any previous channels, (so he can "monitor" several channels at once) but any subsequent text he sends will go to the new channel (unless targeted otherwise). (Unwanted channels may be de-selected using the complementary /LEAVE command.) Example: /J 22 Join channel 22 See /CHANNELS for a description of the channels. /KEEPALIVE - Enables / disables link "keep alive" messages. Syntax: /KE[epalive] [ON | OFF] Examples: /K Reports current on / off state. /KE ON Turns keepalives on. There is no time-out on connections with XRchat, BUT if you are connected for long periods with no activity, some part of the link you are using may time out. For example, a NAT entry may time out, or an inter-node link may disconnect. Keep alive messages are intended to keep such links open, by sending a short text every 10 minutes. If you are monitoring for long periods, the keepalives may become irritating, so don't enable them unless you need them. /KM ---- Kill Mail Syntax: /KM The /KM (KillMail) command is used to delete personal messages after you have finished with them. If someone sends you a certain type of personal chat message while you are not logged in, that message is stored at your server, and you will be notified when you next log in. You may then use the /RM command to read the messages, and the /KM command to delete them afterwards. /KNOWN - Known Nodes Syntax: /K[nown] The /KNOWN command, which may be shortened to /K, is used to display a detailed list of the known RoundTable nodes. The display includes the node call and alias, plus the software version used at that node. /LEAVE - Leave (log off) a channel. Syntax: /L[eave] The /LEAVE command logs the user off the specified channel. When a user joins a channel, he remains logged to any previous channels, so this command allows him to de-select unwanted channels. Example: /L 22 - Leave channel 22 /LINKS - Display / Change peer links Syntax: /LI[nks] [*] /LI[nks] ADD /LI[nks] ADD : /LI[nks] DROP The /LINKS command shows the status of the links with other chat servers, and allows sysops to add and drop links without rebooting Xrouter. "/LI[nks]" by itself displays a list of the links with users and other severs. The fields are as follows: Callsign - Callsign of user or peer server. Type - Connection type (L2, L4, TCP etc). Connected - Date / time when connection started. Last-heard - Date / time when last data rcvd. Sent - No. of messages sent to this peer. Unsent - No. of messages dropped due to congested link. Rcvd - No. of messages received from this peer. Lost - No. of messages not rcvd due to link congestion. Sta - Connection state (1=opening, 2=open, 3=closing) TXE - Indicates TX empty, i.e. nothing queued. "/LI[nks] *" additionally displays a list of the defined chat links, whether they are currently connected or not. "/LI ADD" adds a peer server to the list, and has two forms, one for NetRom links and one for TCP/IP links. In the Netrom case, is the netrom callsign (not alias) of the peer server, and it must exist in Xrouter's nodes table otherwise the link will not be opened. If you have trouble with peers dropping in and out of the nodes table, create a "locked" node entry. In order to define a link with a RoundTable/BPQ chat server the callsign must be prefixed with a '+' e.g. "+XE1FH-11". The link will not be allowed unless both callsign and alias are in the nodes table. In the TCP/IP case, is the server ID of a Tampa Ping-Pong server, is its IP address, and is the TCP port number of the server. Examples: /LI ADD +G1SSL-11 /LI DROP G8NTU-8 /LI ADD brmcht 80.195.22.37:3601 **SEE ALSO** CHAT(1) -- Start a chat session CHATCMD2(1) -- Chat Commands in detail (M-Z) ---- ==== CHAT ==== CHAT(1) XROUTER REFERENCE MANUAL 24/9/2023 **COMMAND** CHAT -- Connect to Chat Server. **SYNOPSIS** CH[at] [nodecall] **AVAILABILITY** Available to all users except guests. **DESCRIPTION** CHAT used by itself connects you to the integral chat server, allowing you to conduct conferences with one or more other users. The "CHAT nodecall" form of the command connects you instead to the chat server on another XRouter, providing that [nodecall] is in our nodes table. The chat server has its own set of commands, which are detailed separately in the CHATCMDS manual entry. There are 65536 separate channels (or "rooms") of which the first 256 (*except room 101) are local to this system, and the remainder may be linked to other systems, allowing widely separated users to chat. (*Room 101 links to RoundTable/BPQ chat, if any RoundTable links have been defined) In addition to the "positive" channel numbers, there are another 32768 channels numbered 0 to -32767. These correspond to channels 0 to 32767 on the "Tampa Ping Pong" system. **NOTES** The chat server may also be reached by connecting to its own callsign, either directly or through the Netrom network, or by telnetting to TCP port 3600 (or whatever it has been relocated to), or by connecting to NetRomX service number 2. Sysops have a "always-on" chat window for chatting amongst themselves, and there is a "chat monitor" window for keeping an eye on chat activity. **SEE ALSO** CHATCMDS(1) -- Chat server commands. CHAT-SRV(9) -- About the chat server. CHAT-SVC(9) -- NetRomX Chat Service. ---- ==== CMD ==== CMD(1) XROUTER REFERENCE MANUAL 5/9/2023 **COMMAND** COMMAND -- CMD. **SYNOPSIS** CM[d] [args] **AVAILABILITY** Sysop-only. **DESCRIPTION** The CMD command is used to add or delete "command aliases", i.e. sysop-defined commands that translate to a simple command sequence. This would typically be used to add a "BBS" command which maps to "C 1 VK1BTR-13". There is no limit to the number of command aliases which may be defined. **OPTIONS** "CMD ADD [args]" adds a new command specified by . The "CMD DROP " removes from the command list. **EXAMPLES** cmd add kidder c 1 kdrnod-1 - Adds new command KIDDER cmd drop kidder - Removes command KIDDER ---- ==== CONNECT ==== CONNECT(1) XROUTER REFERENCE MANUAL 4/9/2023 **COMMAND** CONNECT -- Make an outgoing AX25 connection **SYNOPSIS** C[onnect] [port] [V(ia) digi[,digi...]] [svcnum] [S] **DESCRIPTION** The CONNECT command, which may be abbreviated to "C", instructs XRouter 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 NetRom level 4 connection with the target, using information from the routing tables. To override the above mechanism and "force" a level 2 connection with an immediately adjacent node, either of the following methods can be used: (a) by appending an arbitrary SSID to the target's ALIAS and specifying a port number if required, e.g. "C 4 MLVN-1". (b) by prefixing the target call with an exclamation mark, and specifying a port if required, e.g. "C 4 !G4FPV". If the target is NOT a known node, XRouter 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 S" causes the uplink session to stay connected when the downlink session to the target node is terminated. The [svcnum] parameter specifies the "service number" on the target system. This is only understood by XRouter nodes at present. It causes a "NetRomX" (XRouter extended netrom) connection to one of 65535 possible "services" hosted by the target system. The service numbers are "standard", like the "well known" port numbers in TCP and UDP. For example, service 0 is always the node's command line, service 1 is always an "information server", service 2 is always a PMS, service 8 is always a chat server, and so on. See the SERVICES manual page for a full list. **EXAMPLES** C GLOS - Level 4 connect to GLOS:GB7GH node C 4 MLVN-1 - Forced level 2 connect to MLVN:G4FPV node C 3 G6YAK - Level 2 connect to non-node G6YAK on port 3 C KIDDER 8 - L4 connect to service 8 (chat) on KIDDER node C G8PZT 1 S - L4 connect to service 1, then stay connected **LIMITATIONS** If more than 7 digipeaters are specified, only the first 7 will be used. **AVAILABILITY** This command is available to everyone, with the exception of "guest" users, i.e. those who have accessed XRouter via the public internet without supplying a password. **SEE ALSO** CX(1) -- Connect using Extended Ax25 SERVICES(9) -- Standard Service Numbers TELNET(1) -- Initiate a TELNET downlink TTYLINK(1) -- Initiate a TTYLINK downlink ---- ==== CQ ==== CQ(1) XROUTER REFERENCE MANUAL 8/5/2024 **NAME** CQ -- Send a CQ Message. **SYNOPSIS** CQ [v[ia] digi,digi...] [text] **DESCRIPTION** The CQ command can only be used in LISTEN mode. It sends a "CQ" message (Unnumbered Information frame) onto the channel being LISTENed to. Optional text and digipeater path may be supplied. The message is sent only once, but the command may be repated at suitable intervals. **OPTIONS** The digipeater list, if included, must not include spaces, but there should be space between the V[ia] and the list. **EXAMPLES** CQ CQ Parks on the air CQ v g8pzt,m0wof Gloucester Docks **AVAILABILITY** All users. **SEE ALSO** LISTEN - Invoke Listen mode. ---- ==== CTEXT ==== CTEXT(1) XROUTER REFERENCE MANUAL 4/9/2023 **COMMAND** CTEXT -- Display or Set Port "Connect Text". **SYNOPSIS** CT[ext] [cmd [text]] **OPTIONS** CTEXT - Displays current text CTEXT ADD - Appends a line of text CTEXT CLEAR - Clears the whole ctext CTEXT LOAD - Loads ctext from CTTEXTn.SYS CTEXT NEW - Replaces existing Ctext CTEXT SAVE - Saves ctext to CTEXTn.SYS **DESCRIPTION** The CTEXT command displays or sets the "connect text" for the specified PORT. This is a single or multi-line text that can be sent to a caller when they connect to the port. The companion command CTFLAGS controls which callers receive the text. If a port-specific CTEXT exists, it overrides the global CTEXT, on that port only. Connect texts are usually configured using CTEXT directives in XROUTER.CFG. The CTEXT *command* allows the texts to be changed "on the fly". Upon bootup, if a port CTEXT is not specified in XROUTER.CFG, XRouter looks for the file CTEXTn.SYS, whcre n is the port number. If the file is found, the contents are loaded. Otherwise the global ctext (if any) is inherited by the port. If the contents of CTEXTn.SYS is changed during runtime, they can be reloaded into memory using the LOAD sub-command. Or if the text is changed using the CTEXT command, it can be stored for the future, using the SAVE sub-command. The CLEAR subcommand erases any text stored in memory. Single line ctexts can be added with either NEW or ADD. The former clears any existing text. The latter is OK if there is no existing text. If specifies a filename, the contents of that file are read "live" every time someone connects, so this is ideal for "dynamic" ctexts. This may be of use in EMCOMM scenarios. That file could for instance be updated by another program, such as an extreme weather detector. If the filename starts with the 5 characters "CTEXT", e.g. "ctext-news", that file will be read from the current directory. If it is a fully qualified path starting with "." or "/", there are no restrictions on where the file resides, so long as XRouter is allowed to access it. For example, using the CTEXT command: CTEXT 5 new /etc/weather/latest.txt CTEXT 6 new ctext-news.txt **AVAILABILITY** Sysop-only. **NOTE** There is also a DIRECTIVE of the same name, used in XROUTER.CFG, which has a diffferent syntax. **SEE ALSO** CTEXT(7) -- Set "Connect Text". CTFLAGS(1) -- Display / Set Connection Text Control Flags. CTFLAGS(7) -- Connection Text Control Flags. XROUTER.CFG(8) -- Main Configuration File. ---- ==== CTFLAGS ==== CTFLAGS(1) XROUTER REFERENCE MANUAL 4/9/2023 **COMMAND** CTFLAGS -- Display / Set Connection Text Control Flags. **SYNOPSIS** CTF[lags] [value] **DESCRIPTION** The CTFLAGS command controls which callers are sent a "connect text" (CTEXT) when they connect to XRouter. specifies the number of the PORT to which the setting applies. Port 0 displays/sets the GLOBAL value, i.e. the one which is used for all ports without a specific override. [value] is the sum of the desired options from the following list (options 4 and 8 apply to global ctflags only): 1 - Send CTEXT upon connection to NODEALIAS / PORTALIAS. 2 - Send CTEXT upon connection to NODECALL / PORTCALL. 4 - Send CTEXT to NetRom L4 callers. 8 - Sent CTEXT to TELNET caller. The default value is 9 (Alias and Telnet only). Setting a value of 0 disables CTEXT entirely. **AVAILABILITY** Sysop-only. **NOTE** There is a DIRECTIVE of the same name, used in XROUTER.CFG. **SEE ALSO** CTEXT(1) -- Display / Set "Connect Text" CTEXT(7) -- Connect Text configuration directive CTFLAGS(7) -- Ctext control flags directive XROUTER.CFG(8) -- Main Configuration File. ---- ==== CTRL ==== CTRL(1) XROUTER REFERENCE MANUAL 5/9/2023 **COMMAND** CTRL -- Read / Write remote hardware control port. **SYNOPSIS** Syntax: CTRL [0-255] **AVAILABILITY** Sysop-only. **DESCRIPTION** The CTRL command reads from and writes to the CTRL port defined in the CFG file (e.g. CTRL=0378 to use LPT1). This is used for controlling external hardware devices via logic, and reading status from them, for example transmitter bank switching or temperature alarm monitoring. **OPTIONS** "CTRL" by itself reads the port, and "CTRL " writes it. The read value is the bitwise OR of last written value and external levels, so a bit must be written to 0 in order to use it as an input. If written to 1, a bit will always return 1. **EXAMPLE** CTRL 127 - Write a 1 to bit 7 of ctrl port. **WARNING** This page applies only to the DOS version! LPT ports are a thing of the past, so this will be repurposed to use other hardware, such as GPIO pins. ---- ==== CX ==== CX(1) XROUTER REFERENCE MANUAL 2/1/2024 **COMMAND** CX -- Make Outgoing AX25L2 Connection Using Modulo-128 **SYNOPSIS** CX [port] [V(ia) digi[,digi...]] [S] **DESCRIPTION** The CX (Connect eXtended) command instructs XRouter to make an outgoing (downlink) AX25 level 2 connection with another system. It is very similar to the normal "CONNECT" command, except that it ignores NetRom, and attempts layer 2 connections using "Extended AX25" (EAX25). If the target system is not capable of, or does not wish to use EAX25, it will answer with and XRouter will revert to regular AX25. **OPTIONS** On multi-port systems, a port number must be specified before the target callsign. 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. "CX S" causes the uplink session to stay connected when the downlink session to the target station is terminated. **EXAMPLES** CX 4 MLVN-1 - Forced level 2 connect to MLVN:G4FPV node CX 3 G6YAK - Level 2 connect to G6YAK on port 3 **LIMITATIONS** If more than 7 digipeaters are specified, only the first 7 will be used. **AVAILABILITY** This command is available to everyone, with the exception of "guest" users, i.e. those who have accessed XRouter via the public internet without supplying a password. **SEE ALSO** CONNECT(1) -- Connect to Another System. MOD128(9) -- AX25 Modulo-128 (Extended AX25) ---- ==== DATE ==== DATE(1) XROUTER REFERENCE MANUAL 6/9/2023 **COMMAND** DATE -- Enquire / set system date **SYNOPSIS** DATE [dd/mm/yy[yy]] **DESCRIPTION** If no argument is supplied, the existing system date is shown. If the argument is a valid date of form dd/mm/yy or dd/mm/yyyy the system date is set to the new value. **EXAMPLE** DATE 24/2/99 **AVAILABILITY** The DATE command is available only to sysops. **SEE ALSO** TIME(1) -- Show time at any XRouter / Set time here. ---- ==== DHCP ==== DHCP(1) XROUTER REFERENCE MANUAL 21/10/2023 **COMMAND** DHCP -- Display DHCP-obtained IP configuration parameters. **SYNOPSIS** DHCP [bind | release | trace n] **AVAILABILITY** Sysop-only **DESCRIPTION** For ports on which the DHCP Dynamic Host Configuration Protocol) client is enabled, the DHCP command displays the IP configuration parameters which have been obtained via DHCP. Parameters displayed include: IP address, DHCP server address, gateway IP address, primary DNS address, lease expiry time, and DHCP state. States are as follows: INIT - Initial state, no IP address yet. SELECTING - Awaiting offers from sever(s) REQUESTING - Client requests chosen address BOUND - Lease obtained, OK to use. RENEWING - Requesting lease renewal. REBINDING - No response, locating new server **OPTIONS** When the only argument is a port number, the DHCP settings for that port are displayed. The BIND option isn't curently implemented, as the client automatically binds. The RELEASE option forces the client to release the current configuration. The TRACE option displays or sets the DHCP trace flags. Use a non-zero value to enable tracing, or zero to disable it. Tracing is enabled by default. **EXAMPLES** DHCP 3 - Display DHCP settings for port 3 DHCP 3 RELEASE - Relinquish port 3 lease. DHCP 3 TRACE 0 - Disable DHCP tracing on port 3 **FILES** DHCP is enabled by including the "DHCP=1" directive in the relevant PORT block within XROUTER.CFG. **CAVEATS** The use of dynamic IP addressing for XRouter is strongly deprecated, as so many of its servers and protocols require "port forwarding", which is difficult when the IP address keeps changing! ---- ==== DIAL ==== DIAL(1) XROUTER REFERENCE MANUAL 17/10/2023 **COMMAND** DIAL -- Dial a PSTN connection. **SYNOPSIS** DIA[l]