SLiRP Features
SLiRP is a TCP/IP emulator over the (C)SLIP/PPP link-level protocols
which allows a normal user with a shell account on a Unix host turn it
into something like a (C)SLIP/PPP account.
- It's free.
- It comes with source.
- The TCP/IP code is based on 4.4BSD which is widely regarded as a very
stable and complete implementation. This means it does all the things
expected of TCP implementations. eg: slow start, congestion avoidance,
exponential backoff, round-trip-time calculation, delayed ACKs, Nagle
algorithm, incoming and outgoing IP fragments, etc. etc. The TCP/IP code
was actually taken from the excellent FreeBSD 2.0 sources. In fact, I went
out of my way to do as little modification to it as possible. Most things
that I regarded as unnecessary (eg: the rfc1323 performance enhancements)
were simply commented out, so if you want to experiment with them, you
can.
- SLiRP can redirect ports, so, for example, even though you don't have
a realaddress on the Internet (as with all SLIP-emulators) people can still ftp,
telnet, etc. into your home machine.
- Since nothing needs to be compiled on the client side, it works with
any OS that can talk (C)SLIP/PPP
- SLiRP now has load-balancing support, so that you can use more than one
link as if they were indeed one link.
- SLiRP has on-the-fly configuration. Most of the commands that you can
give slirp on the command line/in config files can also be done by
telneting to 10.0.2.0 all without disturbing slirp.
Planned Features
- Compression over a telnet session (One of the reasons I still
occasionally use term).
- trsh-like program, which lets you run multiple shells on the remote-host
without the need to login multiple times (done).
- tupload-like program, which will let you download/upload files without
the need to login via ftp.