245 lines
10 KiB
Plaintext
245 lines
10 KiB
Plaintext
|
Documentation for URONode program
|
||
|
dated 28/03/2020
|
||
|
|
||
|
Contents:
|
||
|
|
||
|
I - Introduction
|
||
|
II - What it is
|
||
|
III - Generic commands
|
||
|
IV - Extra commands
|
||
|
V - Where to get it
|
||
|
VI - Where to get support
|
||
|
VII - Acknowledgements
|
||
|
|
||
|
Introduction:
|
||
|
|
||
|
I decided to make URONode primarily for my own use and purposes but those who
|
||
|
came to login my node enjoyed it's functionality so much that they would want
|
||
|
a copy of their own so I decided around the year 2000 to release it. At the
|
||
|
time I was also helping K2MF with MFNOS and wanted something a bit similar
|
||
|
in functionality with xNOS that would also keep true to form with the basics
|
||
|
of the linux-nodes (and variants). Since the original code, there's been many
|
||
|
changes and additions. Around 2015 it became a standard node in Debian and
|
||
|
Red Hat repositories having proven itself as a sturdy node for native linux.
|
||
|
|
||
|
I took the best of all the linux based nodes, put them all together into one
|
||
|
and made many changes including adding a color schema if a user desires full
|
||
|
ansi colors to their screens. The prompt systems are also unique in nature
|
||
|
as depending on how the user connects IN to a URONode system is the style of
|
||
|
prompt they get returned to them. No other node system allows for such a
|
||
|
thing. The advantage is that under no circumstance if a user (or bbs for that
|
||
|
matter) connects via NetRom, never ever will a CTEXT or MOTD text get pushed
|
||
|
out which can disrupt a BBS session. The same goes for any sort of DTEXT
|
||
|
under a NetRom session.
|
||
|
|
||
|
All your configuration file manuals are online at a shell prompt. Just
|
||
|
type: man <filename> to view the online help. Ex: man uronode.conf to
|
||
|
read up on the main uronode configuration file or man flexd.conf to see how
|
||
|
to add flexnet routing into your node. If by chance you do find a man page
|
||
|
missing feel free to let me know.
|
||
|
|
||
|
There's some what I call helper apps included for you such as axDigi and
|
||
|
FlexD for example. AxDigi is a true cross-interface digipeater. There's NO
|
||
|
configuration you need to do for axDigi at all. It will auto-sense your ax.25
|
||
|
interfaces and simply listen for requests to digi in from one and out the
|
||
|
other interface. For more information on this, type "man axdigi".
|
||
|
|
||
|
|
||
|
What URONode is:
|
||
|
|
||
|
What many people get extremely confused about it is the fact it's not a
|
||
|
daemon - it's a shell. Like with bash/dash/sh/etc, it doesn't stay in
|
||
|
memory. You'll only see it listed in your process list if someone is
|
||
|
connected to you and it's been commanded to spawn so it doesn't hog up
|
||
|
any system resources when it's not needed unlike other systems that do.
|
||
|
It's also much smaller than bash, and with all features compiled into
|
||
|
URONode it's still under 500K in size. This makes it a smart choice to
|
||
|
use as it's not sitting there using CPU for nothing, which makes the CPU
|
||
|
run cooler thus improving it's lifespan.
|
||
|
|
||
|
It also locks the connected user to the command-set either within the
|
||
|
shell itself or any external commands the sysop may allow for, so
|
||
|
there's no file manipulation available, or system info available to
|
||
|
"steal" such as user account information. It also never overrides a
|
||
|
human command like some other systems may do. for an example,
|
||
|
c <int> <callsign-ssid> won't force a user to use an internet gated
|
||
|
route to the remote end, but will follow the human instruction to use
|
||
|
the RF interface as commanded. If a user wishes to stay RF they may do
|
||
|
so and not be forced on wired internet because the systems sees it's a
|
||
|
quicker path.
|
||
|
|
||
|
For those who still believe IP is a wire link only and not a protocol,
|
||
|
if you wish not to use it, say NO during the configuration to TCP/IP.
|
||
|
Same with ROSE, NetRom, FlexNet, etc. when you compile it if you compile
|
||
|
your own. I believe when it's packaged by the various distributions all
|
||
|
options are flagged on (which would make sense).
|
||
|
|
||
|
All protocol routing is handled by the kernel and various tools. Like
|
||
|
with bash, it doesn't provide any routing whatsoever. All routing for
|
||
|
all protocols is handled internally within the linux kernel. The same
|
||
|
for firewalling. By not introducing a "middle man" or trying to
|
||
|
re-invent the wheel by using the native protocol stacks within linux
|
||
|
itself, URONode is a much faster system.
|
||
|
|
||
|
For those who aren't that linux savvy, I've made 2 versions of an install
|
||
|
script for URONode, axMail-FAX (an SMTP plugin module for the node), and
|
||
|
a library installer to get you ready for LinFBB if you so choose to run a
|
||
|
BBS with your node. This gives you the opportunity to be fully messaging
|
||
|
compliant. One version of the install system is for sysvinit, the other
|
||
|
for systemd. It also will install ampr-ripd routing daemon if you're looking
|
||
|
to run as an internet gateway, along with an axip and an axudp interface along
|
||
|
with what I consider to be a master control file I call ax25 and is located in
|
||
|
/usr/local/bin/. All your amateur services can be controlled from this one
|
||
|
file quite easily.
|
||
|
|
||
|
|
||
|
Generic node commands:
|
||
|
|
||
|
Online help is available for all native compiled commands. The user simply
|
||
|
does: help <commandname-in-full> to see the online help. If a sysop wishes
|
||
|
to add more commands to their node they should follow the format of the
|
||
|
online help files (located in /path/to/node/help) to keep consistent with
|
||
|
the online help system. Every node may be configured with different commands
|
||
|
as sysops often may develop their own tools/apps for their set of users.
|
||
|
|
||
|
A brief description of compiled-in commands would be:
|
||
|
announcements - local news/announcements to share.
|
||
|
bye/exit (ipv4/ipv6 only)/quit - leave the node.
|
||
|
connect - gateway out to another system/node.
|
||
|
desti - bring up a list of flexnet destinations if applicable.
|
||
|
escape - This can change/display/disable your escape character. Defaults to
|
||
|
ctrl-T
|
||
|
finger - finger information from the local or a remote host.
|
||
|
host - look up an IP or Hostname in dns.
|
||
|
info - read the uronode.info file and display it to the end user.
|
||
|
jheard - the most recent 20 just heard stations
|
||
|
jlong - a long list of stations heard. This may be quite long.
|
||
|
links - connectable nodes hard coded into the uronode.routes file.
|
||
|
msg - an "instant message" utility build into the node to talk to another user.
|
||
|
nodes - display a listing of NetRom based nodes.
|
||
|
ping - an ICMP ping utility to see how fast a path to a remote is.
|
||
|
ports - a display of the ax.25 interfaces available on the node.
|
||
|
routes - a display of direct neighbor NetRom links.
|
||
|
status - a display of some of the hosts statistics including uptime.
|
||
|
telnet - a means to use tcp/ip to gateway out to a remote site.
|
||
|
users - who's online at the moment.
|
||
|
version - display information about the node's version.
|
||
|
who - information about a node's users or a specific user.
|
||
|
|
||
|
This command set is automatically compiled into URONode for you based on the
|
||
|
options you choose at pre-compilation time with the configure command.
|
||
|
|
||
|
|
||
|
Extra commands:
|
||
|
|
||
|
URONode supports execution of external commands from it's own shell such as
|
||
|
the axMail-FAX plugin. Some standard shell commands such as "netstat" are
|
||
|
preconfigured for you so that you may easily see how to duplicate adding a
|
||
|
custom command for your system. Typically these are commanded by executing
|
||
|
bash scripts.
|
||
|
|
||
|
The ideas of added commands you may choose are endless in nature! I have the
|
||
|
old Z-80 based game Zork available on my node for example. I also run an
|
||
|
Ambient Weather station to which users may pull real-time weather information
|
||
|
from via my URONode that calls Lynx (text based browser) and other formulas
|
||
|
to gather real-time statistics on my local weather.
|
||
|
|
||
|
I do provide a bunch of add-ons both on my FTP server and on SourceForge for
|
||
|
those who wish to add even more functionality to their node(s). An example
|
||
|
of one very useful one is NodeSearch where a user may enter a string either
|
||
|
by alias or by callsign to find a NetRom node. An example of searching for
|
||
|
either type of string:
|
||
|
n1uro-15@n1uro.ampr.org:/uronode6: ns
|
||
|
Executing command...
|
||
|
Which node are you looking for (no * please): n9
|
||
|
Searching NetRom nodes for N9 ...
|
||
|
BBSLYA:N9LYA-4 IN105:N9LYA-7 INNOS:N9LYA-5
|
||
|
NodeSearch v2.2 by N1URO for URONode.
|
||
|
Goodbye.
|
||
|
End of command.
|
||
|
n1uro-15@n1uro.ampr.org:/uronode6: ns
|
||
|
Executing command...
|
||
|
Which node are you looking for (no * please): in
|
||
|
Searching NetRom nodes for IN ...
|
||
|
DZINOD:SV1DZI-11 DZINOS:SV1DZI-12 IN105:N9LYA-7 INNOS:N9LYA-5
|
||
|
NodeSearch v2.2 by N1URO for URONode.
|
||
|
Goodbye.
|
||
|
End of command.
|
||
|
|
||
|
Bob Tenty has written a parallel for flexnet destis:
|
||
|
n1uro-15@n1uro.ampr.org:/uronode6: ds
|
||
|
Executing command...
|
||
|
Enter the first character or more of a flexnet digi callsign: k1y
|
||
|
Searching Flexnet Digi nodes for K1Y ...
|
||
|
K1YON 1-1 K1YON 2-14
|
||
|
|
||
|
Flexnet DigiSearch by VE3TOK for URONode.
|
||
|
Adaptation of NodeSearch v1.7 by N1URO.
|
||
|
Goodbye.
|
||
|
End of command.
|
||
|
|
||
|
While URONode handles HF just fine such as on Net105, some guys seem to live
|
||
|
by the game of "he with the most nodes listing on their node wins", a listing
|
||
|
of more than 80 nodes may time out a guest connecting into you via HF thus
|
||
|
NOT making them feel welcome. Having easy to use search utilities for example
|
||
|
will make their stay with you pleasant and easier to use than some other
|
||
|
systems.
|
||
|
|
||
|
|
||
|
Where to get it:
|
||
|
|
||
|
Latest release of URONode and various plug-ins may be downloaded from one of
|
||
|
two below sites:
|
||
|
ftp://ftp.n1uro.net/pub/hamradio/packet/
|
||
|
https://sourceforge.net/projects/uronode/
|
||
|
|
||
|
It's always best to wait until you see a new version with .tgz or .tar.gz
|
||
|
appended so you know the code has been tested to be as bug-free as possible
|
||
|
or else you're on your own.
|
||
|
|
||
|
|
||
|
Where to get support:
|
||
|
|
||
|
I run an email list server which you may subscribe to by visiting the official
|
||
|
URONode website at https://uronode.n1uro.com/ just look for the link.
|
||
|
|
||
|
|
||
|
Acknowledgements:
|
||
|
|
||
|
I'd like to acknowledge the following people and groups for their various
|
||
|
contributions and support of the project:
|
||
|
|
||
|
Marius Petrescu - code contributor and member of the URONode development
|
||
|
team
|
||
|
|
||
|
Bob Tenty - code contributor and member of the URONode development team
|
||
|
|
||
|
Paul Lewis - supplied many great ideas for URONode
|
||
|
|
||
|
Tomasz Stankiewicz - supplied many great ideas for URONode
|
||
|
|
||
|
Barry Siegfried - supplied code for URONode
|
||
|
|
||
|
Dave Hibbard - Debian contact
|
||
|
|
||
|
Jaroslav Skarvada - Red Hat contact and code contributor
|
||
|
|
||
|
Craig Small - originated axDigi
|
||
|
|
||
|
Tomi Manninen - original (linux) node creator
|
||
|
|
||
|
Alan Cox - early linux ax.25 developer
|
||
|
|
||
|
Roy Van Zundert - FlexNode developer
|
||
|
|
||
|
Stefano Noferi - AWZNode developer
|
||
|
|
||
|
TAPR - very supportive of URONode
|
||
|
|
||
|
... and the many others involved as sysops and developers of the ax.25 and
|
||
|
tcp/ip stacks for linux.
|
||
|
|
||
|
URONode comes with absolutely NO WARRANTEE whatsoever. Use at your own risk.
|
||
|
There are no fees to use this software and unlike others we will never "beg"
|
||
|
for donations either. Thanks for your support by using URONode.
|