Discovering OQTopus, the new network manager for Black Phoenix


OQTopus is a freeware software to manage QL local networks on QPC2.

OQTopus is based on IP_NET, IP_ROUTER and IP_PING extensions, developed by Martin Head, with enhanched features and a graphics user interface.

It is composed by a number of programs running in background and a GUI to access both client and server features.

OQTopus is distributed as a part of Black Phoenix, the QL distributionbased on SMSQ/E.


Brief history

The QL LAN offered initially a really limited networking functionality, even if up-to-date with those times.

Up to 64 QLs could be connected, using cables not longer than 100 m.

Every QL was identified by a network station number, and the available commands allowed sending and receiving files, not much more; there was no file server feature available

The situation improved radically with Toolkit2, which implemented a rough file server called FSERVE.

Toolkit2 allowed defining up to 8 file servers, only on the stations numbered from 1 to 8 – this was a big step ahead.

The file server had, however, heavy limits. Once activated, EVERY resource on the QL on which was active was available, without any control on them. It was very far from an actual file server as we know of today.

When QL virtualization via emulators came into play, QL networking became quickly forgotten. Every “QL” was a totally isolated machine, and took care solely of the (virtual) disks connected – things stayed like this for the following 20 years.

Things totally change in 2017, when developer Martin Head publishes his extension IP_NET. The idea is simple yet revolutionary: one can just emulate the old QL network by using TCP/IP on the server host machine as a “transport layer” for data between two different QPC2 instances.

IP_NET can be used in two possible modes: as a common LAN, in which each machine is activated in a copy of QPC2 able to communicate with the others, or in “localnet” mode – here, on the same PC more than one instance of QPC2 can be launched emulating a LAN inside of a single PC.

The other important new is the creation of a new file server, named NASERVE – which works oppositely vs the olt FSERVE. Using NASERVE, it’s mandatory to specify the access rights for every station, explicitely indicating who can see what, and also if the access is unrestricted or read only.

Other than this, IP_ROUTER allows creating “hybrid” networks, more clearly a set of localnets which can communicate with other localnets hosted on other PCs – and lastly, the number of possible stations has been raised from 64 to 254.


What else?

IP_NET is really powerful but it’s not an all-in-one program. E.g. there is no authentication system available, and there
isn’t a manager for workgroups – both important features in a modern LAN environment.
Everything must be inserted via command line…

… and this is where OQTopus comes into play.

What OQTopus offers

OQtopus sports a cryptographic authentication service for QL networks, an evolved GUI and a real-time management for server access permissions.


Every server has got a list of users which can access it. Users are protected via password access, and users can also be bound to specific station numbers.

It is possible to define workgroups, which are used to group together users with similar characteristics. Every group can be a part of biggergroups.

For more security, all the data passing through OQTtopus are encrypted.

Real-time permission management

Access permissions for server resources can be specified for every single user or workgroup. A permission granted to a group gets automatically inherited by all the users belonging to that group, together with the groups belonging to that group.

An access permission granted at server level gets automatically inherited by all users and groups.

During authentication, OCTopus activates the permissions granted to the user.

When disconnecting, or in case of time-out, the permissions granted are automatically removed.
A polling system between server and clients allows a constant Exchange of information and verifies real-time the connection status.


The GUI is able to easily manage the QL network. By using OQTopus, anyQL can work both as server and client (even if it can’t be a client of itself, of course), so the GUI sports a single tool to manage both features.

Every user and group is graphically represented with their relationship with the server, while an icon and menu system allows accessing all the features of the software.

Furthermore, by clicking on the user (or the group) a context menu allows operating on the specified item.

The CONNECTIONS menu allows handiling connections with other servers.

Lastly, the IP_PING extension, which is not needed for OQTopus to work correctly, offers an useful verification tool to fix
possible connection problems.