Sure, we know that serial devices are dying. If Windows networks don't kill them outright, then USB surely will. But just now, in the last waning days of RS-232, before cable and ADSL polish off the modems, before networks and USB cast the last Wy60 onto the trash heap, before a newly minted tech stares in utter bewilderment at a serial printer.. just now, you might still need a few serial thingies here and there. And if "there" happens to be somewhere that you reach by TCP/IP, then a Digiboard Port Server may be just what you need. A port server, as you may have guessed, lets you put serial devices in another room, in another city, even in another country.
Some of the old-timers are shaking their heads saying "Always could. Always could". True, for example many Digi C/Con boxes were hooked up to leased lines, or you'd run the ports through muxes (multiplexers) to serve some remote office. So, yes, you always could do this. The difference nowadays is that you probably want or need a TCP/IP connection out to that remote office, and since that connection is going to be there, why not use it? That's what a port server does- it's a network device with serial ports.
Since it is a network device, the first thing you want to do is get it an address. This used to be a bit cumbersome, but Digi has made it dead simple now. All by itself (once it's connected to your lan) it will try to do a RARP lookup. Or, if you want to do it manually, just hook up a terminal to any of it's ports (old timers will remember devices that had specific "command" ports- on the Port Server, any port can be used). You'll login as "root", and if this is a brand new PortServer, the default password is "dbps". Then you'll want to enter something like the following (addresses are samples, of course):
set config ip=10.1.1.98 set config myname=myportserver set config domain=mydomain.com set config submask=255.255.255.0 set config gateway=10.1.1.1 set config nameserv=10.1.1.200
Pretty simple. If you haven't already installed the RealPort software, now is the time to do it. Technically, you don't need it- the PortServer will work quite happily without it, and in some environments you may not even want it, but most installations will. It installs through custom, and if you've worked with Digi serial multiports before, the installation is going to seem very familiar, and after it's done, you'll find new entries in /etc/inittab referring to PortServer devices. Note that RealPort co-exists with existing Digi multiport devices: if you already have two 16 port Xem's which are set to use /dev/ttya01 through /dev/ttyb16, your first PortServer would claim /dev/ttyc01 for its use.
If your needs are simply terminals and printers, you are now done. Treat the devices in /etc/inittab just as though they were local multiport devices- the RealPort software handles everything else for you.
For the RealPort software to work, the PortServer ports must be defined as "prn" or one of the modem types (mout, mio, or host) for the RealPort software to work. If the ports have been set as "term" or "min", RealPort ignores any attempts to access the associated devices. The "term" setting lets you conveniently use the PortServer to access multiple hosts, and that's any telnet or rlogin capable host- it doesn't have to be anything running RealPort. You can set some ports to be handled by RealPort while leaving others as "term":
set ports dev=prn range=1-4 set ports dev=term range=5-8
If you use RealPort, you can change the individual ports baud rate, flow control, etc. just as thought they were local ports: ditty 19200 /dev/ttyc01, for example.
However, that does lock the terminal into a specific server. If there are multiple servers that the terminal needs to access, then set the ports to be "dev=term". You set the termtype ("set ports termtype=wy60 range=1-4"), flow control, etc. and you'll also want to define users. That's easy:
set users name=fred passwd=on (when you do this, fred's password will be "fred"- same as the login) newpass name=fred (enter new passsword for fred)
At this point, "fred" can login, and could use telnet or rlogin to connect to any host he knows the ip address of. That's OK for the real geeks, but you probably want to define hosts, which you can do with:
set host name=scobox ip=10.1.1.2
Of course, if "scobox" can be found through DNS, you wouldn't need that. The PortServer supports up to 9 multiession telnets per port, so a power user could be simultaneously run 9 telnet sessions and switch back and forth between them with CTRL-[1, CTRL-[2, etc..
But there's another way a user can be setup: suppose we make a user "scobox" and another called "linuxbox". We then could say:
set users name=scobox auto=on set users name=scobox dest=10.1.1.2 set users name=scobox dport=23 set users name=linuxbox auto=on set users name=linuxbox dest=10.1.1.3 set users name=linuxbox dport=23
and then logging in as "scobox" takes them directly to 10.1.1.2 where the regular scologin would appear, and they'd login as a user on that system (auto users do NOT get the multisession telnets, though).
For setting up printers, ignore the examples given in the manual, and use the RealPort software. It's the easiest way.
Other folks make similar products: IOLAN is another brand I have used.
Got something to add? Send me email.
More Articles by Tony Lawrence © 2012-07-12 Tony Lawrence
People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird. (Donald Knuth)