XRPi Home

Documentation Index
Alphabetic Index

XRPi Documentation - Configuration

XROUTER.CFG - Example

The following is a copy of the (extremely verbose) example XROUTER.CFG file which is provided in XRPi's MISC directory.


# XROUTER.CFG - Main Configuration file for XRPi / XRLin v501c
#
# XRPi reads this file only at bootup.
#
# !!! This is a non-functional EXAMPLE configuration only !!!
# It is intended to illustrate all the options and typical
# settings, and MUST be edited to your requirements.
#
# You will need to replace MyCall, MyAlias, MyTown, MyLocation etc.
# with your own details, then configure the INTERFACEs and PORTs to
# suit your hardware. You may remove anything you don't require, but
# it is recommended that you keep an intact copy of this file for
# future reference.
#
# Keywords can be in almost any order, but interfaces MUST be
# defined before ports.
#
# Note some timings are in milliseconds, some are seconds.
#
# Lines must not exceed 255 characters in length.
# Blank lines are allowed.
# Comment lines MUST begin with a semicolon ';' or hash '#' in
# the leftmost column. The recommended convention is to use '#' for
# section headings and reference material, and ';' for disabling
# keywords and making your own notes. 
#


######################################################################
#                    Station Identification                          #
######################################################################
#
#	Node callsign:
#	Up to 6 chars plus optional SSID between 1 and 15.
#	This is the callsign used for all L3/4 operations, and the
#	default for L2 operations on each port.

NODECALL=MyNodeCallsign

#	Node alias:
#	Up to 6 alphanumeric characters, with no SSID.
#	Aliases beginning with "#" are not displayed in node lists,
#	and are used for "linking only" nodes with no user access.
#	You should preferably choose an alias which is geographically
#	relevant beyond your own local area, for example BRSTOL,
#	LEEDS, or BRUM are good, because users can recognise them in
#	node tables, whereas GAB1 and WBA are bad - where on earth
#	are they?

NODEALIAS=MyNodeAlias

#	Callsign for console operations.  You can set this independently
#	of NODECALL or you may set them the same.  You may at any time
#	override this callsign using the "linked as" command.

CONSOLECALL=MyCallsign

#	Chat Server Identity:
#	Note - the chat server is an integral part of the system and
#	cannot be disabled.  You may prevent it from being directly
#	connectible (if you wish to deprive users of facilities) by
#	setting CHATCALL and CHATALIAS the same as NODECALL and
#	NODEALIAS, but it will still be available to all users via
#	the "chat" command.
#
#	Chat server callsign. This may be the same as the nodecall, but
#	must use a different SSID, preferably -8.

CHATCALL=MyNodeCallsign-8

#	Alias for chat server (6 chars max).  It is suggested that
#	this should end with "CHT" and begin with something
#	geographically relevant, e.g. BHMCHT for Birmingham, LDSCHT for
#	Leeds etc., so it can be easily identified in node tables.

CHATALIAS=MyChatAlias

#	Chat server quality to broadcast.
#	This can be used to limit the NetRom visibility of your server
#	to a sensible geographical area, and discourage chat server
#	"dxing". Default is 255, i.e. chat server is visible over same
#	distance as nodecall. The value is only meaningful if BOTH
#	CHATCALL and CHATALIAS are defined, otherwise nothing is
#	broadcast. You must allow your chat server to be visible as a
#	netrom node if you wish to link it with other servers.

CHATQUAL=150

#	Callsign and alias of the integral Personal Mailbox (PMS):
#	If you define NEITHER of these, the PMS will only be
#	accessible using the "PMS" command. If you define BOTH, and
#	you set a suitable PMSQUAL, the PMS will be visible as a
#	NetRom node.
#
#	The callsign may be the same as NODECALL, or it may be
#	different (e.g. your own callsign). If you use the NODECALL,
#	you must use a different SSID. A long standing convention is
#	to use -2 as the SSID for personal mail systems.

PMSCALL=MyNodeCallsign-2

#	The PMS alias should preferably include "PMS" to identify it
#	as a PMS in nodes tables (i.e. if PMSQUAL is non-zero).

PMSALIAS=MyPmsAlias

#   PMS quality to include in Netrom nodes broadcast (0-255).
#   The default is 0, i.e. no broadcast. You may only use a
#	non-zero value if both PMSCALL and PMSALIAS are defined.
#	The use of a non-zero value is deprecated unless you are using
#	the PMS to provide a public maildrop / BBS.

;PMSQUAL=50

#	Callsign for APRS IGATE (optional).
#	This callsign is used by the Igate to identify itself in
#	beacons and third party messages.  If omitted, it defaults to
#	the Nodecall. If you are not using the IGATE function, you do
#	not need this parameter.

;APRSCALL=MyAprsCallsign


######################################################################
#                      Station Location                              #
######################################################################

#
# 	QTH specifies (in words) where the node is located.

QTH=MyTown, MyRegion, MyCountry

#
#	LOCATOR is your 6 or 8 character Maidenhead QTH locator,
#	e.g. "IO82VJ"

LOCATOR=CCnnCC


######################################################################
#                     Texts and Beacons                              #
######################################################################


#	"Connection text", sent to anyone connecting to the nodealias.
#	(CTFLAGS controls which callers receive the text.)
#	Please keep the text brief but informative.
#	The end of text is marked by a line beginning with ***

CTEXT
MyTown AX25/IP Router
Type ? for list of commands.
***

#	CTFLAGS controls which connects receive CTEXT.
#	Add together the following numbers:
#
#	   1       Send ctext if connect is to Node/port alias
#	   2       Send ctext if call is to Node/port call
#	   4       Send ctext on L4 connects.
#	   8       Send ctext to TCP (TELNET) callers.
#
#	Default is 9 (Alias and TCP only).

; CTFLAGS=1

#	The INFOTEXT is the response to the 'I' command. This should
#	give as much useful information as possible. Imagine yourself
#	as a user who has reached your node from afar, and provide the
#	sort of information that you would like to know.
	The end of text is marked by a line beginning with ***

INFOTEXT

XRPi Packet Router, MyTown, UK, IO99ZE
Sysop: Roger G9DUM @ GB7PZT (g9dum@hotmail.com)
To connect to the Dummy BBS, use the command: C GB7DUM
AMPR IP address: 44.128.128.128
Comments/reports/queries to: G9DUM
Website: www.g9dum.com/node
***

#	The IDTEXT is a one-line beacon, broadcast every IDINTERVAL.
#	If your APRS-format static position code is included, starting
#	within the first 40 characters, you will be visible on APRS
#	maps and the MHeard function will record distances to heard
#	stations. The format is "!ddmm.mmN/dddmm.mmE" where dd
#	represents degrees of latitude or longitude and mm.mm
#	represents minutes to two decimal places. "N" and "E" may be
#	replaced by "S" and "W" as appropriate.
#
#	It is highly recommended that you include your position, but
#	if you don't know your position, or you don't wish to use
#	this facility please delete the position code rather tha
#	transmit invalid information.

IDTEXT
!5824.22N/00515.00W MyTown Router (DUMMY), 44.128.128.128, Chat=MYNODE-8/DUMCHT
***

######################################################################
#                     TCP/IP Parameters                              #
######################################################################

#	Core IP address for amprnet (44-net) IP routing.
#	If you don't already have one, you may obtain one from your
#	local amprnet IP co-ordinator.
#	If you don't wish to route IP, comment this out or set it to
#	0.0.0.0.
#	This IP address is "inherited" by all ports, but you may
#	optionally specify an additional address in each PORT block.

;IPADDRESS=44.128.0.1

#	Host name for TCP (optional).  If you omit this, it defaults
#	to "NODEALIAS:NODECALL".

;HOSTNAME=g8pzt.ampr.org

#	IP address(es) of "upstream" Domain Name Server(s).
#	This is only required if you don't wish to use Linux's resolver.
#	You may specify more than one DNS by including more than one
#	DNS directive. If you don't specify any servers, domain
#	resolution will use the services provided by Linux. If
#	there is no connectivity to a suitable DNS, resolution will
#	use DOMAIN.SYS only.

;DNS=62.31.176.115

#	IPTTL overrides the default "Time To Live" (TTL) of 255.  This
#	is the maximum number of hops an IP datagram can make before
#	it is killed.  A low value ensures that datagrams stuck in
#	"routing loops" will die quickly, but be aware that internet
#	routed packets may easily make 20 or 30 hops, so don't set it
#	too low.  Ignore this if you haven't enabled IP routing.

; IPTTL=100

#	Max entries in domain cache (default 10)
#	This is a hang-over from the days when the XRouter program and
#	all its data had to fit into 640kb DOS memory! You may set it
#	much larger on XRPi, although a very large cache is probably
#	counter-productive. Set it large enough to accommodate all the
#	hostnames used by your AX*P links.

DCACHE=20

#	Maximum no. of entries in Address Resolution Protocol (ARP)
#	table (default 20).

;MAXARP=20

#	Maximum simultaneous TCP connections.

;MAXTCP=25

#	UDP port for IP over UDP encapsulation (default=94)
#	Use this to reassign the port if another application is using
#	port 94.

;IPUDPPORT=95

#	Enable IPIP (protocol 94) via Linux IP stack (default=0)
#	You only need this if you want to receive IPIP encapsulated
#	datagrams from other systems via the Linux stack. IPIP via
#	XRPi's own stack is not affected by this directive.

;IPIP=1

#	Enable IPENCAP (protocol 4) via Linux IP stack (default=0)
#	You only need this if you want to receive IPENCAP encapsulated
#	datagrams from other systems via the Linux stack. IPIP via
#	XRPi's own stack is not affected by this directive.

;IPENCAP=1

######################################################################
#                      TCP Service Ports                             #
######################################################################
#
#	By default, all services are enabled on XRPi's own TCP/IP stack
#	(see STACKS manual entry).
#
#	If you are NOT using an EXTERNAL interface for connectivity with
#	the outside, these services are also enabled on the Linux stack.
#
#	But if you ARE using the EXTERNAL interface for that purpose,
#	these services will NOT be available via the Linux stack unless
#	you explicitly enable them. 
#
#	You may reassign or disable services using the following
#	directives (e.g. if you already have a service using that port
#	on the Linux stack). A setting of 0 disables a service. It
#	is unlikely that you would need to reassign or disable any
#	services that use XRPi's own stack, as they do not interfere
#	with Linux.
#
#	If you supply a single argument, that value is used as follows:
#
#	- If you are using the EXTERNAL interface, the argument applies
#	  only to the XRPi stack.
#
#	- If you are not using the EXTERNAL interface, the argument
#	  applies to BOTH stacks. 
#
#	If you supply TWO arguments, the first always applies to
#	XRPi's stack and the second to the Linux stack.  You may
#	supply different numbers for each stack, or disable one and
#	not the other.  The numbers must be separated by whitespace,
#	NOT commas. See TCP-PORTS manual entry for more information.
#
######################################################################

#	ECHO Server Port (default=7)
#	This server echoes anything it receives back to the sender,
#	which is useful for testing.

ECHOPORT=7 0

#	DISCARD Server Port (default=9)
#	This is a "sink" server that dumps anything that is sent to
#	it, which is useful for testing.

DISCARDPORT=9 0

#	FTP Server Port (default=21)
#	File Transfer Protocol server, for use by sysops.

FTPPORT=21 21

#	Telnet Server Port (default=23)
#	Allows users to connect to XRPi using a Telnet client.

TELNETPORT=23 23

#	Finger Server Port (default=79)
#	Serves files from the FINGER directory.

FINGERPORT=79 79

#	HTTP Server Port (default=80)
#	Serves files from the HTTP directory, and runs basic commands.

HTTPPORT=80 80

#	TTYLINK Server Port (default=87)
#	This is basically another Telnet server.	

TTYLINKPORT=87 87

#	RLogin (Remote Login) Port (default=513)
#	This is a telnet server for sysop access only.	

RLOGINPORT=513 513

#	SOCKS Proxy Port (default=1080)
#	Circuit level proxy, allowing applications to work through a
#	firewall. Was used in DOS version when it was used as an
#	Internet Connection Sharing router / firewall. Probably not of
#	much use in Linux version.

SOCKSPORT=0

#	APRS Server Port (default=1448)
#	This server is for use by APRS clients such as UI-View. It
#	serves any APRS data sent or received by RF ports and Igate.

APRSPORT=1448 1448

#	Telnet Proxy Server Port (default=2323).
#	Allows a TCP/IP application to make a full BINARY (as opposed
#	to TELNET) connection to an AX25 or NetRom destination.

TELPROXYPORT=2323 2323

#	Chat Server Port (default=3600)
#	Allows Telnet connections to XRPi's chat server.

CHATPORT=3600 3600

#	AGW Emulation Port (default=8000)
#	For use by applications that are designed to use AGW Packet
#	Engine.

AGWPORT=8000 8000

#	Remote Application Server Port (default=9000)
#	There are currently no publicly available RHP applications, so
#	you may disable this.
	
RHPPORT=0


######################################################################
#                    Consoles and display                            #
######################################################################
#
#	You may have up to 5 "virtual" consoles, upon which the sysop
#	may conduct independent sessions.  Consoles are selected by
#	using Alt-1 through alt-5, or the left and right arrow keys.
#	Setting this to 0 disables all console activity.

NUMCONSOLES=3

#	Console Colour Settings:
#
#	Note the default colours have been chosen for their relative
#	luminances and contrast, and you may find certain combinations
#	are not legible. Permissible colour names are:
#
#	Dark: BLACK, NAVY, GREEN, CYAN, RED, MAGENTA, ORANGE, SILVER
#	Light: GREY, BLUE, LIME, TURQUOISE, PINK, CERISE, YELLOW, WHITE
#
#
#	Default Settings:
#	The following directives specify the colours used for the
#	CONSOLES. They may be overridden on a console-by-console
#	basis if you want each comsole to look different for instance.

#	Top status bar background colour (default = CYAN)
#	It is recommended that you avoid SILVER here, otherwise the
#	status bar will be inditinguishable from the menu bar above.

;TopWinBgColor=CYAN

#	Top status bar text colour (default = WHITE)

;TopWinTxtColor=WHITE

#	Main window background colour (default = BLACK)

;MidWinBgColor=BLACK

#	Main window text colour (default = WHITE)
#	This is the colour used to send command responses to you.

;MidWinTxtColor=WHITE

#	Command line background colour (default = NAVY)

;CmdWinBgColor=NAVY

#	Command line text colour (default = YELLOW)

;CmdWinTxtColor=YELLOW

#	Bottom menu bar background colour (default = CYAN)

;BotWinBgColor=CYAN

#	Bottom menu bar text colour (default = WHITE)

;BotWinTxtColor=WHITE

#	Colour for outgoing (transmitted) data (default = PINK)

;TxColor=PINK

#	Colour for incoming (received) data (default = LIME)

;RxColor=LIME

#	Colour used for echoing Sysop's commands to main window.
#	(default = YELLOW)

;EchoColor=YELLOW

#	Monitor Mask:
#	Specifies the protocols which are traced (by default) when
#	tracing is enabled by <F2> or "MON ON". This can be
#	overridden in a CONSOLE definition block, or changed at run
#	time using the MMASK command or the <F4> key. The default
#	is 3f8.
#	The argument is a HEX number between 0000h and FFFFh, 
#	which is calculated by adding together the desired values from 
#	this table:

             0001 - Incoming frames          0100 - ICMP
             0002 - Outgoing frames          0200 - TCP
             0004 - AX25 layer 2             0400 - KISS
             0008 - AX25 info frames         0800 - SLIP
             0010 - AX25 layer 3             1000 - PASSALL
             0020 - AX25 layer 4             2000 - Hex Dump
             0040 - IP frames
             0080 - ARP frames

;MMASK=3f8

#	Monitor Ports:
#	Specifies which port(s) are monitored (by default) when
#	tracing is enabled by <F2> or "MON ON". This can be overridden
#	in a CONSOLE definition block, or changed at run time using
#	the MPORT command or the <F3> key. The default action is to
#	monitor all ports.
#	The argument is either the words "ALL" or "NONE", or a list of
#	single port numbers or ranges thereof, without any spaces.

;MPORTS=1,3-5,8,11-15

#	Console Overrides
#	=================
#	The default console settings above may be overridden on a
#	per-console basis by using an optional CONSOLE definition
#	block as shown in the gaudy example below.  Only those values
#	which differ from the globals defined above need be specified. 
#	Alternatively you may omit the globals and fully specify each
#	console. Consoles are numbered from 1 to 5.

;CONSOLE=3
;	TOPWINBGCOLOR=SILVER
;	MIDWINBGCOLOR=NAVY
;	MIDWINTXTCOLOR=WHITE
;	CMDWINBGCOLOR=GREEN
;	BOTWINBGCOLOR=SILVER
;	CONSOLECALL=G8PZT-4
;	TXCOLOR=PINK
;	RXCOLOR=LIME
;	MMASK=1f	; AX25/Netrom only
;	MPORTS=1-2	; Monitor ports 1 and 2 only
;ENDCONSOLE


#	Acceptable bell hours, format n,n,n-n n etc. (default 8-22)
#	Set the hours during which the console bells may 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 bells use the PC speaker, not the soundcard.
#	(Not working in XRPi)

;BELL=0-5,11-23


######################################################################
#                      Chat Server Parameters                        #
######################################################################

#	List of chat servers to which our server will link. 
#	Unilateral links are not allowed - each partner in this list
#	must place your CHATCALL in their CHATLINKS list.
#
#	Don't link with distant servers - if the links are too slow
#	your users will get poor service.
#
#	XRchat links may use TCP/IP or NetRom. NetRom is the norm.
#	For NetRom links, you must supply the *callsigns* not the
#	aliases, and you may only use partners who exist in your
#	NetRom nodes table.
#
#	For TCP/IP links, the IP address and TCP "port" number must
#	be specified, along with the CHATALIAS or server ID of the
#	peer server. e.g. CHATLINKS=67.69.96.23:3600 KDRCHT
#
#	XRchat servers may also be interconnected with
#	RoundTable/BPQchat, and with "Ping-Pong Converse" servers.
#
#	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.
#
#	Links with Tampa Ping Pong Converse servers use TCP/IP as
#	outlined above. The only difference between an XRchat TCP link
#	and a TPP link is that in the latter the peer ID is prefixed
#	with an asterisk, e.g: CHATLINKS=80.195.22.37:3601 *brmcht
#
#	You may specify several servers on one line, separating them
#	with commas. Don't include any spaces! Or you may specify each
#	server on a separate line. Or any combination of the two.
#	You may disable all outgoing and incoming chat linking by
#	omitting this directive.

;CHATLINKS=G9XOT-8,G7DTY-8,+G8PCG-8
;CHATLINKS=80.195.22.37:3601 *brmcht

#	Chat Server Activity Logging level:
#	Add together the values corresponding to the desired options
#	from this table:
#
#		1	Local user connect / disconnect event
#		2	Remote user connect / disconnect event
#		4	Peer server connect / disconnect event
#		8	Local channels 1-255 join / leave events
#		16	Public channel join / leave events
#		32  Log channel notifications
#		64	Log the text of conversations
#		128	Use a single logfile, instead of daily ones
#

; CHATLOG=127

######################################################################
#                    Miscellaneous Parameters                        #
######################################################################


#	IGATE controls whether or not the APRS Packet<>internet gateway
#	is started at boot-up. A zero value (default) doesn't start the
#	igate (but it can be started anytime using "start igate"), and
#	a non-zero value starts it immediately.
#	Leave this commented out, or set to zero if you aren't running
#	a gateway.

;IGATE=1

#	Optional flags to control the DX heard display (default=0)
#	Add together:
#
#	Bit Value
#	 0    0 - Record directly heard stations only
#	 0    1 - Record digipeated and direct stations
#	 1    2 - Enable logging of DX exceeding specified distance.
#	 2    4 - Log frame contents of qualifying DX.
#
#	If logging is enabled Bits 3 - 14 specify the minimum
#	distance which will be logged, from 4Km to 32764Km in 8Km
#	steps, e.g. DXFLAGS=502 enables DX logging, with a threshold
#	of 500Km. If logging is not enabled, bits 3-14 are ignored.
#
#	If DX logging is enabled, any received APRS positions which
#	exceed the threshold distance are logged to LOG\DXLOG.TXT.

; DXFLAGS=102


#	Enable_linked controls who may use the "*** LINKED AS"
#	command.  The default is "N", and the possible values are:
#
#		Y       Command is unrestricted.
#		A       Only applications may use the command.
#		N       No-one may use the command.

; ENABLE_LINKED=A


#	Usage Log:
#	Setting LOG=1 will log all connects, disconnects, user-entered
#	commands and chat server activity. LOG=0 disables this
#	function. Can be overridden by LOG command at the command line.

LOG=0


#	Overall limit on no. of concurrent sessions per user, across
#	all ports.  You might like to restrict "troublesome" users
#	this way! Max setting = default = 255

; SESSLIMIT=255


MAXSESSIONS=30

#	UITRACE and UIFLOOD are two special addresses for APRS use,
#	that are suffixed with pseudo-SSID's, e.g. "TRACE4-4" and
#	"WIDE2-2". These addresses can digipeat several times.
#	The first digit specifies the maximum number of hops, and the
#	second is the hop counter, which is decremented each time the
#	frame is digipeated.
#
#	These two addresses behave slightly differently however. When
#	a frame is digipeated on the address specified by UITRACE,
#	each digipeater inserts its own callsign in the digipeater
#	list and decrements the "SSID". Frames digipeated on the
#	UIFLOOD address have their SSIDs decremented, but the digi
#	doesn't insert its own callsign. 
#
#	For the sake of consistency with UI-View, UITRACE defaults
#	to "TRACE", giving TRACEn-n digipeating, and UIFLOOD
#	defaults to WIDE, giving WIDEn-n digipeating.
#
#	However, according to the APRS "New N-n Paradigm", RELAY,
#	TRACE and WIDE are deprecated, UITRACE should be set to
#	"WIDE", and UIFLOOD should be set to a "state" code (e.g.
#	"GBR" for the UK).
#
#	Not everyone agrees with the "New N-n Paradigm, so the choice
#	of which features to enable is left to your discretion.

;UITRACE=WIDE
;UIFLOOD=GBR

######################################################################
#                     NetRom Layer 4 Parameters                      #
######################################################################
#
#	(Don't adjust these unless you *really* understand all the
#	implications.)
#
#	No. of seconds between L4 retries and L4 connect/disconnect
#	attempts.

L4TIMEOUT=90

#	No. of seconds to delay a L4 ack in case further frames arrive.
#	10 secs is probably OK on normal AX25 links, but is excessive
#	on wire links.  However, XRPi will attempt to adjust this
#	value to cope with prevailing conditions.

L4DELAY=10

#	No. of unacked L4 frames allowed before we stop to await an
#	ack.

L4WINDOW=4

#	No. of L4 connect/disconnect or retransmission attempts before
#	link is abandoned.

L4RETRIES=3

#
#	Max no. of simultaneous L4 circuits.

MAXCIRCUITS=25


######################################################################
#                     NetRom Layer 3 Parameters                      #
######################################################################

#
#	Obsolescence counter initial value

OBSINIT=5

#
#	Obsolescence counter minimum to broadcast

OBSMIN=3

#	Minutes between nodes broadcasts (0 = disable broadcasts).
#	This value is inherited by all ports, but may be overridden on
#	a per-port basis by including NODESINTERVAL within a PORT
#	configuration block.

NODESINTERVAL=60

#	Maximum L3 hops (Time To Live).
#	This specifies a limit to the number of nodes a L3 packet may
#	traverse before it is dumped, and is used to prevent packets
#	from looping forever in routing loops.

L3TTL=25

#	If HIDENODES is set to 1, nodes whose alias begins with "#" 
#	are not displayed by the normal N command. However, whatever
#	the setting here, they can always be displayed using "N *".

HIDENODES=1

#	Minimum quality to add to node table.  This is the global
#	value, inherited by all ports unless overridden by a MINQUAL
#	directive with a PORT block. If not specified, default is 10.

MINQUAL=10

#	Max no. of nodes to include in table (default=200).
#	If you have a large nodes table, the output from the "N"
#	command may be too much for an RF channel to handle. On the
#	other hand, if the table size is to small for the number of
#	nodes, nodes will keep disappearing from the table as their
#	slots are reallocated to "fresher" entries.
#	You should decide what table size is appropriate for your
#	circumstances, set a MAXNODES large enough to accommodate the
#	expected nodes, and use QUALITY and MINQUAL to control the no.
#	of nodes in the table.

MAXNODES=250

#	By default, the plain "N" command displays nodes in ALIAS
#	order. Although the "N C" command can be used to display nodes
#	in CALLSIGN order, some sysops prefer this to be the default.
#	Setting SORTBYCALL to 1 forces the "N" command to display the
#	nodes in callsign order.

SORTBYCALL=0

#	Quality adjustment by callsign.
#	This allows you to de-rate the NetRom quality of a node or
#	group of nodes based on the NetRom callsign, instead of the
#	route on which they were received. Thus you can change the
#	relative qualities to favour your local nodes, or (more
#	likely) those which share your language.
#	This feature is experimental, and should only be used if the
#	need arises. Note that this only works on netrom "quality", as
#	nodes which are learned via INP3 have no quality to de-rate.
#	The "default" argument sets the default value which is used
#	to de-rate all nodes not matched by any other QUALADJUST
#	statement.  The normal NetRom de-rate algorithm is used, so
#	255 gives no de-rate and 0 gives full de-rate (i.e. to block
#	a callsign or group of callsigns). If there are no
#	QUALADJUST statements the default is 255.

;QUALADJUST=default 180
;QUALADJUST=G* 255
;QUALADJUST=M* 255
;QUALADJUST=2* 255

#
#	Maximum simultaneous neighbour node routes.

MAXROUTES=35


#	MAXTT defines the maximum accepted "trip time" (transit time)
#	for new nodes table entries received via INP3 unicasts from
#	neighbours.  Node information with trip times that exceed this
#	figure are not accepted into the nodes table. This value is
#	inherited by all PORTS, and all ROUTES learned via those
#	ports unless overridden by a MAXTT entry in the PORT or ROUTE.
#	The default value is 60000 (600 seconds).

;MAXTT=5000

#	MAXHOPS defines the maximum accepted "hop count" for new nodes
#	table entries received via INP3 unicasts from neighbours.
#	Node information with hop counts that exceed this figure are
#	not accepted into the nodes table. This value is inherited by
#	all PORTS, and all ROUTES learned via those ports unless
#	overridden by a MAXHOPS entry in the PORT or ROUTE definition.
#	The default value is 30 hops.

;MAXHOPS=2


#	List of callsigns from whom L3 traffic will not be accepted.
#	It should be used only in exceptional circumstances.
#	Callsigns should be seperated by commas.  Comment this out if
#	not required.

;L3EXCLUDE=N3UOO-5

#	Disruption level (0-255).
#	This allows you to "choke" traffic from troublesome users to
#	a greater or lesser degree. This has been found to be a more
#	effective means of control than blocking them outright, which
#	just shifts the troublemaker to another route. The miscreant
#	usually assumes the network is slow, and doesn't realise his
#	activities are being controlled.
#	A BLEVEL of 0 prevents ALL L3 packets from the budlisted
#	stations, and at the other extreme 255 will allow all packets.
#	For example 64 will allow on average 1 in 4 L3 packets, which
#	should slow things down a bit!!  The sysop can vary this
#	parameter on the fly.

;BLEVEL=0


######################################################################
#                       AX25 Layer 2 Parameters                      #
######################################################################

#	AX25 "T3" (Link check) timer in seconds (default=180).
#	AX25 L2 links that are apparently open, but have been idle for
#	this length of time are probed to verify that they are still
#	alive.

T3=180

#	Idle link shutdown timer in secs (default=900).
#	AX25 L2 Links with neighbour nodes are closed down if they
#	haven't exchanged any L3 trafic for this amount of time. This
#	is an outdated idea and shouldn't come into play these days,
#	as the links are periodically probed by L3RTT measurements.

IDLETIME=900

#	Minutes between ID broadcasts (default=15).
#	This is the time interval between broadcasts of IDTEXT (see
#	TEXTS above) on each port. A setting of 0 disables ID beacons.

IDINTERVAL=15

#	Global paclen (default=120).
#	This specifies the maximum data field length within an AX25
#	or Netrom packet originated by XRPi. This value is inherited
#	by all ports and links, unless overridden in a PORT block.
#	Note that we have no control over the paclen of frames
#	originated from other nodes.

PACLEN=120

#	Max. simultaneous AX25 L2 links (default=30)
#	You should set this large enough to accommodate the total
#	number of AX25 L2 users and internode links that you expect.

;MAXLINKS=50
 

######################################################################
#    Interface definitions - These MUST precede any dependent PORT   #
######################################################################
#
#	WARNING: If you are used to the BPQ paradigm, you must think
#	differently with XRPi!
#
#	Unlike BPQ, you first define the INTERFACES with the outside
#	world, then you define the PORTS that use those interfaces. 
#
#	An INTERFACE is the point of interaction between the XRPi
#	program and the outside world hardware. Some interfaces (e.g.
#	ASYNC) can support several communication "channels" by use of
#	the appropriate protocol (e.g. KISS). Other types of interface
#	(e.g. SLIP) support only one channel.
#
#	A PORT is the point of interaction between the various
#	protocol modules and *one channel* of an interface.
#
#	Interface definition blocks start with the directive
#	"INTERFACE=n", where n is a unique number used to identify the
#	interface. The actual number is unimportant, so long as it is
#	greater than zero and no other interface uses the same number.
#	The block ends with ENDINTERFACE. The keywords that may be
#	used in interface definition blocks are as follows:
#
#	TYPE	Interface type as follows (mandatory):
# 
#		AGW            AGW Packet Engine
#		ASYNC          Serial (COM) port
#		AXIP           AX25 over IP
#		AXTCP          AX25 over TCP
#		AXUDP          AX25 over UDP
#		EXTERNAL       External driver
#		LOOPBACK       Internal loopback
#		YAM            YAM 1200/2400/9600 modem
#
#	MTU	Maximum Transmission Unit (mandatory).
#		This specifies the maximum size for the data portion
#		of any IP packet transmitted on the interface.
#		Datagrams are sized or fragmented according to the MTU
#		of the interface on which they are transmitted. 
#
#		XRPi allows MTU's up to 1500 bytes, but setting MTU
#		over 256 is not recommended on AX25 ports, because the
#		buffer size on TNC-based nodes is usually only big
#		enough for a 256-byte data field. 
#
#		This is a mandatory keyword, although for some
#		interface types the value has no meaning and is
#		ignored. If in doubt, use 256. 
#
#
#	COM	Com port number (0 - 32), used by ASYNC and YAM types
#		only. COM is mandatory for these interfaces. COM0 is a
#		"dummy" COM port which can be used to "park" ports. 
# 
#	CHANNELS
#		For WA8DED hostmode interfaces only. Specifies the max
#		no. of host channels (between 1 and 32) the interface
#		will provide.
#
#	PROTOCOL
#		Protocol to use on the interface:
# 
#		  ASCII    - Remote consoles (TTY) via ASYNC ports
#		  ETHER    - Ethernet
#		  HDLC     - For use with YAM modem, and some EXTERNAL
#	                     drivers.
#		  KISS     - For driving KISS TNCs or wired links.
#		  MODEM    - Hayes compatible PSTN modem.
#		  NETROM   - Netrom backend serial link.
#		  NONE     - Use this with type=loopback
#		  PPP      - Point to Point Protocol
#		  SLIP     - Serial Line Interface Protocol
#		  TNC2     - TNC2 emulation.
#
#
#	SPEED	The serial port baud rate for ASYNC interfaces only.
#		Don't include a comma.  
#
#	CONFIG	Hardware-specific config options. The format depends
#		on the interface TYPE.  
#
#	FLOW	Flow control options (ASYNC interfaces only): 
#
#		0 = No flow control
#		1 = Hardware (RTS/CTS) flow control
#		2 = Software (XON/XOFF) flow control (TTY link only)
#		3 = Hardware AND software flow control
#
#		If not specified, flow control defaults to NONE. Don't
#		use Xon/Xoff with KISS protocol.
#
#	INTNUM	Used only by AXTCP server and AGW interfaces. Specifies
#		the TCP port the AXTCP server should listen on, or the
#		TCP port used to connect with AGWPE. 
#
#	KISSOPTIONS
#		Options for KISS interfaces only:
# 
#		NONE     - Plain KISS (most TNC's use this) (default)
#
#		POLLED   - For TNCs which send only when polled.
#
#		CHECKSUM - Packets are protected by checksum.  You can
#                          only use this option if your TNC supports
#		           it.
#
#		ACKMODE  - For TNC's which inform XRPi when a frame
#		           has been transmitted on air.
#
#		SLAVE    - XRPi will act like a polled KISS TNC,
#                          sending data on serial port only when asked
#		           to do so.
#
#		POLLED and SLAVE are mutually exclusive. BPQKISS
#		eproms require POLLED and CHECKSUM, but their use of
#		ACKMODE is optional. 
#
#
#
#	Example interface for a normal KISS TNC on ttyS0 device:
#	KISS interfaces can support up to 16 PORTs, each using a
#	different CHANNEL on the interface.

;INTERFACE=1
;	TYPE=ASYNC
;	COM=/dev/ttyS0
;	SPEED=1200
;	PROTOCOL=KISS
;	KISSOPTIONS=NONE
;	MTU=256
;ENDINTERFACE


#	Example interface for BPQKISS TNC on ttyUSB0 device:
#	BPQKISS interfaces can support up to 16 PORTs, each using a
#	different CHANNEL on the interface.
 
;INTERFACE=2
;	TYPE=ASYNC
;	COM=/dev/ttyUSB0
;	SPEED=9600
;	PROTOCOL=KISS
;	KISSOPTIONS=POLLED,CHECKSUM,ACKMODE
;	MTU=256
;ENDINTERFACE

#       Example "loopback" interface, allowing self-connects for test
#	purposes. This type of interface supports one PORT only.

;INTERFACE=3
;	TYPE=LOOPBACK
;	PROTOCOL=KISS
;	MTU=576
;ENDINTERFACE


#	Example interface for Ethernet, sharing "eth0" with Linux.
#	Requires CAP_NET_RAW capability, or run from root account.
#	Can also be used for a wlan device.
#	This type of interface supports one PORT only. 

;INTERFACE=4
;	TYPE=EXTERNAL
;	ID=eth0
;	PROTOCOL=ETHER
;	MTU=1064
;ENDINTERFACE


#	Example of an interface for TTY (remote console).  You would
#	connect the com port via a null modem to a dumb terminal or
#	computer running a terminal emulator program, such as TELIX.
#	This type of interface does NOT have a port attached to it.

;INTERFACE=5
;	TYPE=ASYNC
;	COM=/dev/ttyUSB1
;	SPEED=19200
;	MTU=256
;	PROTOCOL=ASCII
;	FLOW=2          ; Xon/xoff flow control
;ENDINTERFACE


#	Example AXIP pseudo-interface. Only TYPE and MTU required,
#	all other parameters are ignored (at present).
#	At least one AXIP interface is needed if you intend to do AX25
#	over IP. You can attach an unlimited number of ports to one
#	AXIP interface, or you can use separate interfaces if you need
#	different MTU's.

;INTERFACE=6
;       TYPE=AXIP
;       MTU=256
;ENDINTERFACE


#	Example AXUDP pseudo-interface. Apart from "TYPE=AXUDP" see
#	the comments relating to AXIP interface.

;INTERFACE=7
;       TYPE=AXUDP
;       MTU=256
;ENDINTERFACE

#	Example of an AXTCP server interface, listening for clients on
#	TCP port 9393. This type of interface supports one PORT only.

;INTERFACE=8
;	TYPE=AXTCP
;	MTU=256
;	INTNUM=9393
;ENDINTERFACE

#	Example of an AXTCP client interface which connects with the
#	KIDDER node, whose address is g8pzt.ath.cx, port 9393.
#
#	The CONFIG directive is used to specify a server to connect,
#	thereby activating client mode. The format is as follows: 
#
#	    CONFIG=<servname:> <hostname | ipaddr> <tcp_port>
#
#	You may specify additional servers, by including a CONFIG for
#	each one. There is no limit to the number of CONFIG
#	directives that can be used with a single interface. 
#	This type of interface supports one PORT only.

;INTERFACE=9
;	TYPE=AXTCP
;	MTU=256
;	CONFIG=KIDDER g8pzt.ath.cx 9393
;ENDINTERFACE

#	Example YAM interface. One of these required for each YAM
#	modem. The modem must be initialised with YAMINIT.EXE before
#	starting XRPi. In this interface SPEED defines the RADIO baud
#	rate. The serial port always runs at 19200 bauds.
#	This interface supports a single PORT.

;INTERFACE=10
;       TYPE=YAM
;       COM=/dev/ttyS2
;       MTU=256
;       SPEED=1200      ; Radio speed
;       PROTOCOL=HDLC   ; Only HDLC supported at present
;ENDINTERFACE


#	Example of a "NetRom Backend" interface.
#	This type of interface supports a single PORT.

;INTERFACE=11
;	TYPE=ASYNC
;	COM=/dev/ttyS3
;	SPEED=19200
;	PROTOCOL=NETROM		; Netrom backend
;	MTU=256
;ENDINTERFACE


#	Example WA8DED TNC emulation interface.
#	No ports are attached to this type of interface.
#
#	CHANNELS specifies the max no. of host channels the interface
#	will provide (between 1 and 32).
#
#	APPLNUM specifies which application will be using this
#	interface. Corresponds to "n" in APPL=n (see  Applications
#	section below). This directive is not required if the emulator
#	is used in "normal TNC" mode.
#
#	FLOW must always be set to 0 or 4. Setting FLOW to any value
#	other than 0 or 4 may cause the application or XRPi to hang.
#	FLOW=4 is a special case which forces the WA8DED emulator to
#	start in host mode instead of TNC mode. 
 
;INTERFACE=12
;	TYPE=ASYNC
;	COM=/dev/ttyUSB1
;	PROTOCOL=DEDHOST
;	APPLNUM=3
;	CHANNELS=4
;	SPEED=9600
;	FLOW=0		; Must be 0 or 4
;	MTU=256		; Must be 256
;ENDINTERFACE


#	Example of a TNC2 emulation interface. No PORT is required.
#	You can have as many TNC emulators as you wish, providing you
#	have an RS232 port for each one. You should preferably use a
#	different MYCALL or SSID for each one if there is any chance
#	of more than one TNC being used on the same radio port. 

;INTERFACE=13
;	TYPE=ASYNC
;	COM=/dev/ttyS0
;	SPEED=19200
;	PROTOCOL=TNC2
;	MTU=256
;ENDINTERFACE


#	Example SLIP or PPP interface, used to link XRPi with other IP
#	systems via real or virtual COM ports. SLIP and PPP interfaces
#	support only one PORT. The interfaces are identical apart from
#	the PROTOCOL line - use PROTOCOL=PPP for a PPP interface.
#
#	Serial lines used for PPP and SLIP must run at 8 data bits.
#	Flow control must be hardware or none, as XON/XOFF flow
#	control interferes with the protocol.
# 
#	If flow control is used, the cable must contain at least 5
#	cores, namely TXD, RXD, RTS, CTS and GND. If flow control is
#	not used, only TXD, RXD and GND are required. 
#
#	In all cases, a NULL MODEM is required. In the case of "real"
#	RS232 this could be an actual null modem device, or a cable
#	that is wired such that the TXDs at each end go to the RXDs
#	at the other end, and the RTSs at each end go to the CTSs at
#	the other. "Virtual" COM port pairs such as Com0Com include
#	this functionality as standard.
#
#	SLIP is a neat way to connect systems without involving the
#	Linux TCP/IP stack, allowing XRPi to have its own IP address
#	and proper control of the IP stack, including low-level
#	protocol tracing.

;INTERFACE=14
;	TYPE=ASYNC
;	COM=/dev/ttyUSB3	
;	PROTOCOL=SLIP
;	SPEED=38400
;	FLOW=0         ; No flow control
;	MTU=1500       ; Allows largest IP
;ENDINTERFACE


#	Example AGW interface:
#	----------------------
#	This allows XRPi to use AGW Packet Engine to manage hardware
#	which is not directly supported by XRPi, such as soundcards.
#
#	Note that IOADDR, INTNUM and CONFIG are all optional, and are
#	only needed if you want to change the defaults. 
#
#	If you don't specify IOADDR, it defaults to 127.0.0.1, which
#	is the same computer as XRPi is on. If AGWPE is on a different
#	computer to XRPi, you need to enter its IP address here. 
#
#	If you don't specify INTNUM, it defaults to 8000, which is the
#	normal AGWPE port. If AGWPE is on the same PC as XRPi, and it
#	is using the default port, you will need to reassign or disable
#	XRPi's AGWPORT to avoid a clash between XRPi's AGW emulation
#	server and AGWPE itself.
#
#	If you don't specify CONFIG, XRPi won't "authorise" with AGW.
#	Authorisation is not usually needed if you're using XRPi and
#	AGWPE on the same computer. You can adjust the requirement for
#	authorisation within AGWPE. When CONFIG is used, the
#	"username" sent to AGWPE is the NODECALL and the "password" is
#	the string specified by CONFIG. 
#
#	The AGWPE interface can support up to 16 PORTs, which are
#	declared in the usual way, each PORT using a different CHANNEL
#	on the INTERFACE. 

;INTERFACE=15
;	TYPE=AGW
;	IOADDR=192.168.0.76	; IP address of AGWPE
;	INTNUM=8001		; TCP port of AGWPE
;	MTU=256
;	CONFIG=MyAgwPassword	; Password for AGWPE
;ENDINTERFACE



######################################################################
#    PORT definitions - MUST follow the Interfaces they attach to    #
######################################################################
#
#	Each definition block begins with PORT=n and ends with ENDPORT
#
#	The following is an example port, showing all the options. In
#	practice you wouldn't need even a fraction of them. If you
#	don't understand the option, don't enable it.
#
#	The number following PORT= is the port number as displayed by
#	the P[orts] command. They do not need to be sequential. You
#	may use any number, but you must define them in the order in
#	which they are to appear in the PORTS list.
#
;PORT=1
#
#	Mandatory text string to identify port on "PORTS" display.
#	Whitespace is allowed in the text.
#	Note: You may not append comments to this directive.
#
;ID=Link to KIDDER
#
#	Interfacenum is mandatory. It specifies which INTERFACE this
#	port should use.
#
;INTERFACENUM=1
#
#	The remainder of the parameters are mostly optional, since
#	there are sensible defaults built into the program....
#
#
#	Channel to use on interface (A - P). Default=A.
#	This is mandatory for multi-channel interfaces (e.g. KISS),
#	but not required for single channel ones.
#
;CHANNEL=A
#
#
#	Additional L2 callsign for this port (optional).
#
;PORTCALL=G8PZT-1
#
#
#	Additional L2 alias for this port (optional).
#
;PORTALIAS=PZT1
#
#
#	Yet another alias, for digipeating only (optional).
#	This alias does not accept connections.
#
;PORTALIAS2=RELAY
#
#
#	Port override for global chatalias (optional).
#
;CHATALIAS=MyChatAlias
#
#
#	Port override for global chatcall (optional).
#
;CHATCALL=MyChatCall        
#
#
#	Port override for global PMSALIAS (optional).
#
;PMSALIAS=MyPmsAlias
#
#
#	Port override for global PMSCALL (optional).
#
;PMSCALL=MyPmsCall
#
#
#	Paclen for this port only. Overrides global paclen.
#	If set to 0, paclen will adapt to the link conditions.
#
;PACLEN=160
#
#
#	Max. outstanding AX25 L2 frames (default=3).
#	This is the maximum number of frames that are allowed before
#	the sender must stop and wait for an acknowledgement.
#
;MAXFRAME=2
#
#
#	Tx keyup delay in millisecs (default=300).
#	This should be adjusted to a suitable value for the baud rate,
#	the TX settling time and the other end's squelch opening time. 
#
;TXDELAY=300
#
#
#	TX keydown delay (millisecs).
#	Don't go less than 100 for SCC cards!
#
;TXTAIL=100
#
#
#	CSMA interval timer in millisecs (default=100).
#
;SLOTTIME=100
#
#
#	L2 T1 (Frame Acknowledgement) time in ms (default=7000).
#	A value of 7000 is recommended for 1200 bauds. (see manual)
#
;FRACK=7000
#
#
#	L2 delayed ack timer T2 in milliseconds (default=2000).
#	Resptime should be *at least* ((paclen * 10000) / RFbauds)
#	millisecs, where "paclen" is the other end's paclen, otherwise
#	XRPi will send unnecessary poll frames. 1500 is OK for 1200
#	bauds with paclen=120
#
;RESPTIME=1500
#
#
#	Probability to transmit (0-255, default=64)
#	Persist should be set to (255 / (no. of users on frequency)).
#	e.g. for a frequency with an average of 10 users on at any one
#	time you'd set it to 25.
#
;PERSIST=64
#
#
#	Maximum retries (default=10).
#	There is no point in setting retries more than 10, other than
#	for test purposes.  If you need so many retries it's a useless
#	link and you're just wasting everyone else's airtime.  The
#	higher you set this value, the longer users will have to wait
#	to receive a "failure with" for a non-contactable destination.
#
;RETRIES=10
#
#
#	Full Duplex (default=0)
#	If you set fulldup=1, XRouter will transmit whenever it needs
#	to, without waiting for the other end to stop.  Used only for
#	hardware which is capable of simultaneous transmission and
#	reception, such as full duplex radio or wire links.
#
;FULLDUP=0
#
#
#	Softdcd is used only by SCC cards.  If set to non-zero, the
#	real dcd is ignored, and the driver uses the presence of HDLC
#	data as a DCD indication.  Using SOFTDCD with an open squelch
#	generates a *huge* interrupt loading on the PC, which may
#	cause degradation of performance, depending on the PC type, so
#	it is not recommended. (Note SCC cards are not currently
#	supported by XRPi)
#
;SOFTDCD=0
#
#
#	Rfbauds defaults to 1200 if not specified.  It is intended for
#	use with "real" tnc's attached via RS232, because the RF baud
#	rate is usually different to the serial baud rate.  It simply
#	helps the router make better timing decisions.
#
;RFBAUDS=2400
#
#
#	Enable/disable the MHEARD function on this port. The number
#	specifies how many callsigns to maintain in the list. Set to
#	0 to disable MHEARD, but please be aware that MHeard is very
#	useful for diagnosing link problems.
#
;MHEARD=10	; Enable MHeard, 10 callsigns max.
#
#
#	MHFLAGS controls which callsigns are recorded in the MH list,
#	and defaults to 255 (show everything).
#	The number is formed by adding the following values:
#
#	1       Show directly heard stations
#	2       Show directly heard digipeaters
#	4       Show digipeated stations
#
;MHFLAGS=1       ; show directly heard stations only
#
#
#	Digipeater control flags.  0=no digipeat (default=7).
#	Add together the required values from this list:
#
#	Bit Value Option
#	---------------------------------------------------
#	  0    1   Digipeat UI frames
#	  1    2   Digipeat non-UI frames
#	  2    4   Enable RELAY generic digipeating (deprecated).
#	  3    8   Enable TRACE generic digipeating (deprecated).
#	  4   16   Enable WIDE generic digipeating (deprecated).
#	  5   32   Allow APRS 3rd party digi via L4.
#	  6   64   Allow digipeating to Internet (IGate).
#	  7  128   Allow digipeating from Internet (IGate).
#	  8  256   Enable UITRACE digipeating (e.g. WIDEn-n)
#	  9  512   Enable UIFLOOD digipeating (e.g. GBRn-n)
#
#
;DIGIFLAG=7              ; Normal digi + RELAY.
#
#
#	Port to relay digipeated frames on (0=default=this port)
#
;DIGIPORT=0
#
#	List of destinations for "broadcasting".
#	Received non-digipeater UI frames, addressed to one of these
#	destinations, will be re-broadcasted on all ports which have a
#	matching address in their BCAST list.  This would for example
#	be used to broadcast mail beacons from a BBS onto several
#	frequencies.
#
;BCAST=MAIL,ALL
#
#
#	List of approved broadcasters.
#	If you wish to restrict the broadcast facility to certain
#	senders only, list the callsigns here.  If no calls are
#	specified, the facility is unrestricted.  Separate the calls
#	by commas, and don't include any spaces in the list.
#
;BCFROM=GB7PZT,GB7MAX
#
#
#	Default quality for nodes whose broadcasts are received on
#	this port. Set to 0 to disable all L3/4 activity on the port.
#	If not specified, this defaults to 10.
#
;QUALITY=10
#
#
#	Minimum quality to add to node table for nodes received via
#	this port (default=10).  If specified, this overrides the
#	global minqual, and can be used to exclude unreachable and
#	marginal nodes.
#
;MINQUAL=10
#
#
#	Port override for global MAXTT (default 60000).
#	Inherited by new ROUTES learned via this PORT.
#
;MAXTT=5000
#
#
#	Port override for global MAXHOPS (default=30).
#	Inherited by new ROUTES learned via this PORT.
#
;MAXHOPS=2
#
#
#	MINTXQUAL specifies the minimum Net/rom node quality to
#	transmit on this port (default=0). This would typically be
#	used to limit the size of nodes broadcasts on ports which are
#	severely bandwidth limited, or when the neighbour nodes have
#	limited table capacity. The neighbours could of course limit
#	their table size using their MINQUAL, but there is no point in
#	transmitting information which will be discarded.
#
;MINTXQUAL=60
#
#
#	Minutes between nodes broadcasts on this port (0 = disable).
#	Overrides the global value. If not specified, it defaults to
#	the global value. 
#
;NODESINTERVAL=60
#
#
#	Port to transmit on (0=default=this port).
#	You would typically use this where a single transmitter is
#	used in conjunction with several receivers
#
;TXPORT=0
#
#	Interlock is only used by SCC cards - KISS TNC's make their
#	own decisions when to transmit, and XRouter has no control
#	over that process.  If a non-zero value is specified, no two
#	ports with the same value will transmit at the same time.
#
;INTERLOCK=4
#
#
#	Maximum no. of simultaneous users on this port. Default is
#	255 which means "no limit".
#
;USERS=255
#
#
#	Sesslimit specifies the maximum simultaneous connects each
#	user is allowed (default=255).
#
;SESSLIMIT=5
#
#
#	The following two commands are mutually exclusive... Use one
#	or the other, but not both!
#	Callsigns should be separated by commas or spaces, and there
#	is no limit to the number of calls. You can have multiple
#	validcalls= or exclude= lines.
#
#	Validcalls allows L2 frames only from the specified users, and
#	is typically used to keep users from connecting to link-only
#	ports.
#
;VALIDCALLS=G6YAK,G6AMU  ; Accept only these users
#
#
#	Exclude allows L2 frames from everyone EXCEPT specified users,
#	and would typically be used on a user-access port to prevent
#	connections from trouble-makers and pirates.
#
;EXCLUDE=NOCALL,P1RAT     ; Ignore these users
#
#
#	CWID is used only by SCC cards.
#	Callsign is sent every 30 mins.
#
;CWID=G8PZT
#
#
#	PIPE allows frames received (and optionally sent) on this port
#	to be copied to another port. A typical use might be to allow
#	a PMS on one port to see the traffic on another port e.g.
#	UNPROTO headers from a local BBS.
#
#	Note that this is *not* the same as digipeating. With
#	digipeating, the user must specify a digipeater in the path,
#	but with frame piping the packets are tunneled from one port
#	to another with no intervention from the user.
#
#	Unless the "bi-directional" option is specified, pipes are
#	unidirectional.  In order to have two way traffic using a
#	unidirectional pipe, you must set up a reverse pipe on the
#	opposite port.  You may pipe several ports to a single
#	destination port, but you can only have one *outgoing* pipe
#	from any port.
#
#	Pipes are capable of generating an immense amount of traffic,
#	so use them with care - your target port MUST be capable of
#	handling the traffic load.
#
#	Pipes can be made "selective", by adding a comma-delimited
#	callsign list, e.g. "PIPE=4 GB7PZT,KDRBBS".  This will reduce
#	the loading on the target port, by piping only the frames with
#	the specified calls in the destination field.
#
#	Pipes can be made "bi-directional" by adding 512 to the
#	PIPEFLAG value (see below: suggested value = 515).  If a frame
#	is piped on a bi-directional pipe, the source call is
#	remembered so that responses will be piped back to the sender.
#	Thus a reverse pipe is not needed.
#
#	This is useful in cases where a BBS has a front end router -
#	simply set up bi-directional selective pipes from each user
#	port to the BBS port, and set up the BCAST option so that the
#	UI mail headers are broadcast on each user port.  The BBS will
#	then allow direct connect and will respond to resync requests.
#
#	To disable piping, set PIPE=0 or just omit the command.
#
;PIPE=2                  ; Pipe frames from this port to port 2
#
#
#	PIPEFLAG is only used when piping is active, and controls
#	which frames are piped.  The default if not specified is 3.
#	The value is made up by adding together the desired options
#	represented by the following numbers:
#
#	   1       - UI frames *not* addressed to nodecall/alias.
#	   2       - Non-UI frames *not* addressed to nodecall/alias.
#	   4       - UI frames addressed to nodecall/alias.
#	   8       - Non-UI frames addressed to nodecall/alias.
#	   16      - UI frames transmitted by the router.
#	   32      - Non-UI frames transmitted the router.
#	   64      - Allow budlisted users to be piped.
#	   128     - Netrom frames
#	   256     - IP / ARP frames
#	   512     - Bi-directional piping
#
;PIPEFLAG=5              ; Pipe all rcvd UI frames only
#
#
#	Destination address for UNPROTO broadcasts.
#
;UNPROTO=CQ,G6YAK
#
#
#	Optional alternative IP address for use on this port.  If this
#	is specified, it will be used in addition to the global IP
#	address for this port only.
#
;IPADDRESS=44.131.91.5
#
#
#	Subnet mask used with IPADDRESS to specify the range of IP
#	addresses that are on the same physical segment as XRPi.
#
;NETMASK=255.255.255.0
#
#
#	The DHCP keyword specifies whether or not the port IP address
#	will be obtained dynamically using DHCP (DHCP=1) or specified
#	statically (DHCP=0).  Default is 0.
#
;DHCP=0
#
#
#	If you set SYSOP=1, all users who connect on this port will
#	get full sysop status without answering a password challenge.
#	This is intended ONLY FOR USE ON SECURE LINKS, such as RS232
#	or Ethernet.  Be aware that, if the remote system is capable
#	of gatewaying or digipeating, users could downlink via the
#	remote system back into this port, thus gaining sysop status.
#	The default for this parameter is zero!!
#
;SYSOP=0
#
#
#	The APPLMASK parameter is used only if you are using XRPi to
#	provide network connectivity to other applications. It
#	specifies which applications will be directly connectible on
#	this port.  Default is 255, which allows applications 1-8.
#	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
#
#	If you want an application to be directly connectible on a
#	port it must have a callsign, an alias or both, and the
#	corresponding bit in that port's applmask must be set.
#
;APPLMASK=3	; Enable applications 1 and 2
#
#
#	Optional port-specific ID text, sent every IDINTERVAL in place
#	of the global IDTEXT (e.g. for APRS-only ports).  Only one
#	line may be sent.
#
;IDTEXT=!5224.00N/00215.00W# (Kidder)
#
#
#	CFLAGS allows level 2 uplinking and/or downlinking to be
#	prevented, e.g. on APRS-only ports. Use VERY carefully!
#	Default is 3. 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 XRPi from trying to hold
#	inter-node links open, as that is too much of a retrograde
#	step!  This bit is not set by default.
#
#	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.
#
;CFLAGS=3
#
#
#	Remote NET/ROM systems to whom we will tunnel L2 frames. 
#	(See manual for full explanation)
#
;PROXY=GB7PZT,GB7BBS
#
#
#	Modem Initialisation string (Modem interfaces only)
#
;INITSTR=ATM0
#
#
#	Default digipeater path for APRS frames originated by APRS
#	messaging shell and Igate. If you omit this, the frames will
#	be sent without any digipeaters. Messaging shell users may
#	override this path.
# 
;APRSPATH=WIDE1-1 
#
#
#	DYNDNS=1 enables the dynamic DNS update client. DYNDNS=0
#	disables the client, as does omitting the directive. Requires
#	a suitable configuration in DYNDNS.CFG (see manual).
#	Note: you must only use this directive on ONE port, and you
#	may crash XRouter if you try to use it on more than one.
#
;DYNDNS=1
#
#
#	Forward Error Correction enable/disable (default=0).
#	In order to make use of FEC, the port needs to be using a
#   KISS TNC with the CRC check disabled, or an SCC or YAM card.
#
;FEC=0
#
#
#	IPLINK is required only by AXIP and AXUDP ports. It specifies
#	the IP address or hostname of the link peer. It is more
#	efficient to use the IP address if possible. However, the
#	partner's hostname must be used if his IP address is dynamic.
#
;IPLINK=g8pzt.ath.cx
#
#
#	UDPLOCAL is required only by AXUDP ports (default=93).
#	It specifies the UDP service number at the local end of an
#	AXUDP link. This number must match the link partner's
#	UDPREMOTE, i.e. the destination service number in the frames
#	from him to you. You may use the same UDPLOCAL for more than
#	one PORT. You must not let your link partner dictate this
#	parameter, it is YOURS to specify, not his. See MAN page on
#	AXUDP for more details.
#
;UDPLOCAL=10093
#
#
#	UDPREMOTE is required only by AXUDP ports (default=93).
#	It specifies the UDP service number at the remote end of an
#	AXUDP link. This number must match the link partner's
#	UDPLOCAL, and must be dictated by your link partner, not you.
#
;UDPREMOTE=93
#
#
#	ENDPORT ends a PORT definition block (mandatory).
#
;ENDPORT
#
#
#
#	EXAMPLE PORTS
#	~~~~~~~~~~~~~
#	There are only minor differences between port configurations,
#	depending on the underlying INTERFACE type. Therefore detailed
#	examples of ports for each interface type are not shown. The
#	following examples highlight some of the differences.
#
#
#	--------------------------------------------------------------
#	Example 1200 baud user port, using channel A of a KISS TNC.
#	--------------------------------------------------------------
#	Netrom disabled because it is user access only.
#	Illustrates the use of BCAST and BCFROM to broadcast mail
#	beacons from the BBS (callsign GB7PZT) that is wire-linked to
#	port 7, plus the use of PIPE and PIPEFLAG to conduct UNPROTO
#	requests and responses to/from the BBS.

;PORT=1
;	ID=144.850MHz 1200Bd User Access
;	INTERFACENUM=1
;	CHANNEL=A		; Not really required
;	MHEARD=25		; Nice big MH list
;	QUALITY=0		; Prevent NetRom linking on this port
;	BCAST=MAIL		; Broadcast beacons addresed to MAIL
;	BCFROM=GB7PZT		; Allow beacons from GB7PZT only
;	PIPE=7 GB7PZT		; Selective pipe to GB7PZT on port 7
;	PIPEFLAG=513		; Bidirectional UI pipe
;ENDPORT



#	--------------------------------------------------------------
#	Example Forward Error Corrected full-duplex linking port.
#	--------------------------------------------------------------
#	Demonstrates the use of FEC, FULLDUP and VALIDCALLS.
#	In order to use FEC the TNC *must* be using the KISSFEC EPROM.

;PORT=2
;	ID=70cm FDX link to GLOS
;	INTERFACENUM=2		; BPQ Multidrop KISS interface
;	CHANNEL=C			; 3rd TNC on the matrix
;	FEC=1				; Use Forward Error Correction
;	QUALITY=150			; Link quality
;	PACLEN=240			; Use big paclens
;	VALIDCALLS=GB7GH	; Prevent anyone else using the port
;	MHEARD=3			; Small MH list to detect intrusions
;	FULLDUP=1			; Full duplex link
;	MAXHOPS=10			; Limit horizon to 10 hops
;ENDPORT



#	--------------------------------------------------------------
#	Example Loopback port for test purposes and self-connects.
#	--------------------------------------------------------------
#	Use with caution. **ABSOLUTELY FOR TEST PURPOSES ONLY!**
#	May cause catastrophic endless loops if IP routing is
#	configured incorrectly.

;PORT=3
;	ID=Internal Loopback
;	INTERFACENUM=3
;ENDPORT



#	--------------------------------------------------------------
#	Example Ethernet port.
#	--------------------------------------------------------------
#	Demonstrates use of port-specific IP address and netmask.
 
;PORT=4
;	ID=Ethernet LAN
;	INTERFACENUM=4
;	IPADDRESS=192.168.0.2
;	NETMASK=255.255.255.0
;ENDPORT



#	--------------------------------------------------------------
#	Example AXIP (AX25 over IP wormhole) port.
#	--------------------------------------------------------------
#	You need one of these for each AXIP link
#	At least ID, INTERFACENUM, and IPLINK must be specified.
#	The IPLINK address is the remote host's IP address or
#	hostname. Parameters such as TXDELAY, TXTAIL, SLOTTIME,
#	PERSIST, FULLDUP etc. are meaningless for AXIP, but FRACK,
#	RESPTIME, PACLEN, MAXFRAME, QUALITY etc. operate as normal.


;PORT=5
;	ID=AXIP link with WA3DXX
;	INTERFACENUM=6		; AXIP interface
;	IPLINK=44.73.88.69	; Peer's IP address
;ENDPORT



#	--------------------------------------------------------------
#	Example AXUDP (AX25 over UDP wormhole) port.
#	--------------------------------------------------------------
#	You need one of these for each axudp link
#	At least ID, INTERFACENUM, and IPLINK must be specified.
#	The IPLINK address is the remote host's IP address or
#	hostname. UDPLOCAL and UDPREMOTE are the UDP port numbers for
#	each end of the link, and if omitted they default to 93.
#	Parameters such as TXDELAY, TXTAIL, SLOTTIME, PERSIST,
#	FULLDUP etc. are meaningless for AXUDP, but FRACK, RESPTIME,
#	PACLEN, MAXFRAME, QUALITY etc. operate as normal.

;PORT=6
;	ID=AXUDP link with VK1UDP
;	INTERFACENUM=7		; AXUDP interface
;	UDPLOCAL=9393		; Non-standard local UDP
;	IPLINK=44.69.88.73	; Peer's IP address
;	UDPREMOTE=10093		; Peer's UDP port (non-stadard)
;ENDPORT



#	--------------------------------------------------------------
#	Example AXIP link with XServ BBS (GB7PZT)
#	--------------------------------------------------------------
#	Demonstrates sharing the AXIP interface with port 4, and the
#	use of BCAST and BCFROM in conjunction with port 1. Also
#	demonstrates the use of larger than usual MAXFRAME and PACLEN,
#	and smaller FRACK and RESPTIME befitting a high quality wired
#	link.

;PORT=7
;	ID=AXIP Link to GB7PZT
;	INTERFACENUM=6		; AXIP interface
;	IPLINK=44.131.91.2	; Destination IP
;	MAXFRAME=7			; Use big maxframe
;	PACLEN=240			; Use big Paclen
;	FRACK=5000			; Use smaller FRACK
;	RESPTIME=1000		; Use smaller RESPTIME
;	BCAST=MAIL			; Broadcast MAIL beacons
;	BCFROM=GB7PZT		; Allow only GB7PZT to broadcast
;ENDPORT



#	--------------------------------------------------------------
#	Example APRS-only port.
#	--------------------------------------------------------------
#	Note the use of an alternate IDTEXT and IDPATH, and the use of
#	CFLAGS to disable connected mode operations, thus MAXFRAME,
#	FRACK,PACLEN etc. are not required.

;PORT=8
;       ID=144.800 MHz 1200 baud APRS
;       INTERFACENUM=2		; Multidrop KISS interface
;       CHANNEL=B			; 2nd TNC on the matrix
;       CFLAGS=0                ; Prevent up/downlinks on this port
;       DIGIFLAG=5              ; Digi only UI addressed via RELAY
;       MHEARD=22               ; Nice big MH list
;       IDTEXT=!5224.00N/00215.00W#PHG3021 Kidderminster APRS digi
;       IDPATH=APRS,RELAY,WIDE
;       APRSPATH=RELAY		; For APRS messaging shell
;ENDPORT


#	Define your PORTs here:


######################################################################
#    APPLICATIONS: Each must begin with APPL= and end with ENDAPPL   #
######################################################################
#
#	In this context "applications" are programs which use XRPi to
#	provide their connectivity with the outside world. XRPi does
#	not currently provide the BPQ Host API, but it does provide
#	the following means for supporting applications: 
#
#		- AGW TCPHOST Interface 
#		- WA8DED Hostmode Emulation 
#		- TNC2 Emulation 
#		- KISS / SLIP / PPP links
#		- Remote Host Protocol (RHP) 
#		- Proxies 
#
#	Applications using AGW, RHP and DEDHOST must be defined in
#	this section, in order to be able to accept incoming
#	connections. This section is not required for applications
#	using KISS, SLIP, PPP, or Proxies.
#
#	Each definition block must begin with APPL=<number> and must
#	end with ENDAPPL.  There must be a separate block for each
#	application.  Applications which use more than one stream need
#	only a single definition.  The APPL block should contain one
#	or more of the following keywords:
#
#	APPLNAME  The nickname or shortcut by which the application is
#	          accessed from XRPi's command line. e.g. "PMS".  If a
#	          user types this name at the command prompt, they
#	          will be connected to the application.
#
#	APPLCALL  The AX25 layer 2 callsign which the application will
#	          use. If specified, the application will accept AX25
#	          L2 connects to this callsign, subject to the setting
#	          of APPLMASK (see below).
#
#	APPLALIAS The AX25 layer 2 "alias" for use by the application.
#	          If specified, the application will accept AX25 L2
#	          connects to this callsign, subject to the setting of
#	          APPLMASK (see below). 
#
#	APPLQUAL  Netrom quality to broadcast (0-255).  If a non-zero
#	          value is specified here, the APPLCALL will be
#	          included in Net/Rom nodes broadcasts and the
#	          application will be connectible at AX25 layer 4.
#	          The higher the quality, the further the node entry
#	          will propogate. 
#
#	APPLFLAGS defaults to 0 if omitted. The flags are as follows:
#
#	        Bit Value  Action
#	        ------------------
#	         0    1    Application has SYSOP privileges.
#
#	         1    2    Allow "guest" users to access the appl.
#
#	         2    4    XRPi sends "Connected to (applcall)" to the
#	                   user upon connection to an application.
#	                   This is not required if the application
#	                   sends its own "Connected to" message.
#
#	         3    8    XRPi sends "Connected to (usercall) to the
#	                   application, when a user connects. 
#
#
#	All fields within an application definition block are optional
#	- you may have for instance choose to have an APPLNAME but no
#	APPLCALL, meaning the application could only be reached by
#	typing the applname at the command prompt. Or you could have
#	an APPLCALL but no APPLNAME, in which case the application
#	would be directly connectible, but wouldn't be reachable from
#	a command line shortcut.
#
#	The choice of application number is arbitrary at present, but
#	each application should be assigned a different non-zero
#	number between 1 and 8.
#
#	Remember to set the APPLMASK in each PORT upon which you want
#	the application to be usable.
#
#	Example for a Bulletin Board System application using WA8DED
#	hostmode. It is accessed by typing "BBS" at the command prompt
#	or by connecting via AX25 or NetRom to the callsign GB7PZT or
#	the alias PZTBBS:
#
#		APPL=3
#			APPLNAME=BBS
#			APPLCALL=GB7PZT
#			APPLALIAS=PZTBBS
#			APPLQUAL=100
#			APPLFLAGS=4
#		ENDAPPL
#
#	In the following example, the application has no callsigns or
#	quality, so it can only be reached by issuing the command
#	"HOST" at the command prompt:
#
#		APPL=2
#			APPLNAME=HOST
#		ENDAPPL
#
#	Define your applications here:
#



######################################################################
#                              Proxies                               #
######################################################################
#
#	In this context, "proxies" are cross-protocol bridging
#	mechanisms which allow systems using one protocol to be
#	accessed using another protocol. They can also be used
#	to give "hidden" systems a network presence.
#
#	Be *very* careful when mixing proxies and pipes, or you
#	will end up generating lots of FRMR's, and possibly
#	crashing the system. These are powerful tools and must
#	be used carefully.
#
#	Proxies are intended for use with your own systems only.
#	Do not act as a proxy for someone else's system without
#	their permission.
#
#	You must *NEVER* set up a proxy to give a NetRom
#	presence to a node which already has one!!
#
#	For proxies which include <portnum>, please ensure that
#	the port actually exists (sysops often rearrange ports
#	rendering the proxies inactive).
#
#	!! IT IS RARE FOR ANYONE TO NEED TO SET UP A PROXY !!
#	If you don't understand this concept, please don't use it.
#
#
#	AX25 / NetRom -> TCP Proxy:
#	~~~~~~~~~~~~~~~~~~~~~~~~~~~
#	Allows a remote TCP/IP-only system to have NetRom and AX25
#	connectivity.
#
#	PROXY=<call> <alias> <qual> <ipaddr> <portnum> [passwrd]
#
#       <call>    is the NetRom and AX25 callsign for the
#	          proxied system.
#
#	<alias>   is the NetRom / AX25 alias for the proxied
#	          system.
#
#	<qual>    is the NetRom "quality" (0 - 255) controlling
#	          visibility on the NetRom network.
#
#	<ipaddr>  is the proxied system's IP address.
#
#	<portnum> is the TCP service port number of the
#	          proxied system.
#
#	<passwrd> is an optional password sent to proxied
#	          system upon connection. This is used to
#	          verify that the TCP connection originates
#	          from an approved proxy.
#
#	AX25 and NetRom are pure binary channels, whereas standard
#	telnet is not. The proxied system must provide a pure
#	binary service port in order to make full use of this
#	facility for compressed forwarding etc.
#
;PROXY=GB7PZT KDRBBS 255 192.168.0.4 8888 bloggs
#
#
#	NetRom -> AX25 Proxy:
#	~~~~~~~~~~~~~~~~~~~~~
#	This is similar to the NetRom -> TCP proxy described
#	above, but is intended to allow an AX25-only system to
#	have a NetRom presence.
#
#	PROXY=<call> <alias> <qual> <ax_call> <portnum>
#
#	<call> <alias> and <qual> have the same meaning as above.
#
#       <ax_call> is the proxied system's AX25 L2 callsign.
#
#	<portnum> is the radio port the proxied system is
#	          connected to.
#
;PROXY=MB7UYL UYLBBS 150 G6KDR-3 7
#
#
#
######################################################################
#                            Locked-in Routes                        #
######################################################################
#
#	Routes to lock in - begins with ROUTES and ends with ***
#	Syntax of each entry in the block is as follows:
#
#	<callsign> <port> <quality> [! [maxframe [frack [paclen]]]]
#
#	You must specify at least callsign, port and quality.  If you
#	include the lock flag ( ! ) the route will be locked in, and
#	will only be changed by a replacement entry with the lock flag
#	set. If you don't include the lock flag, the route will
#	eventually expire if not confirmed by the reception of nodes
#	broadcasts.  In either case, if the file XRNODES is present,
#	its contents will override the entries here, subject to the
#	locking rules above, and the sysop may also edit routes while
#	XRouter is running.
#
#	Maxframe, frack and paclen are optional.  If specified they
#	override port defaults for that route.
#	Note FRACK is expressed in millisecs, e.g. 7000 = 7 secs.
#	Maxframe > 7 will cause Modulo-128 to be attempted on that
#	route.
#
;ROUTES
; Lock in g6yak on port 1 with quality 100 and maxframe 32 :-
;g6yak 1 100 ! 32
;***




######################################################################
#                      Sysop-defined commands:                       #
######################################################################
#
#	In this section you may define single-word aliases for
#	frequently used command strings.  For example you might wish
#	to set up BBS, CONV and DXCLUSTER commands to point to local
#	systems. There is no limit to the number of commands you can
#	define.
#
#	Each command is defined using a separate "COMMAND=" string,
#	and the arguments are <alias> <real_cmd>.
#
#	e.g. "COMMAND=BBS C 7 GB7PZT" means "create a new command
#	called BBS, which translates to the sequence C 7 GB7PZT"
#
;COMMAND=BBS C 1 GB7PZT
;COMMAND=CONV TELNET 44.131.90.1 3600
;COMMAND=DXCLUSTER C GB7DXC

See Also: