Biache is my proxy server.  That is the computer that is currently serving up this exact page.  She got her name because she is she was a bitch to get up.  People who know me from my high school days, know where the term "biache" came from.  Some people have a problem with the fact that the word bitch is, by some, considered to be a bad word.  Well, I agree.  However, thats just the way that things just worked out, unfortunately.  Plans are in the works to eventually fix this, however that involves me shelling out some money, which is something that I have not had do to for this yet.  

     Biache is a Cyrix 166 running Debian Linux.  People who know Cyrix know that they did what AMD does today.  An AMD XP 1800+ runns at 1533MHz.  Well, the Cyrix 166 runs at 133.  The only difference here is that a AMD 1800+ has 3600 BogoMIPS where as my Cyrix has approximately 75.  The computer has 64MB of PC-66 ram (2x32M) (Yes, the expensive stuff), a 6 Gigabyte hard drive, a no name 56K V.90 ISA jumperable modem, and an antique legasy card to work my Hewlett Packard Desk Jet 695C and read the UPS, a 150VA cheapo from BestBuy.  The only valuable part of the computer is a 3COM 905B TX with PXEBoot (which I never use) that I picked up for about $5 at the Timonium BRATS hamfest.  (Go Hamfest!)  Andrew Curtis (great friend) donated (more like I rescued it from the trash) the CPU, motherboard, and case which had a 150W AT power supply.  The rest I got at computer shows or hamfests.  I'd say that in all, I've spend about $50 on the computer as a whole.  

   On the software side of the computer, cheap is also a predominant theme.  The computer runs Debian Linux with a couple pieces of experience and TLC from me.  The computer runs two copies of Apache, one for standard HTTP requests and one that uses the SSL socket plugin.  It is also a transparent caching proxy server.  It runs a 500MB Squid cache, a 512KB named DNS cache, wwwoffle - an offline web cache, and junkbuster in that effect.  It uses the IP state machine to create a multi state firewall based on Linux V. 2.4.19 iptables that keeps it pretty secure.  I recieve about 12 hack attempts daily, and have been able to fend off every one of them for the past year.  In addition to a strong firewall, I also run snort for network intrusion, tripwire for file sytem checksumming, and a log checker that scans all 60 system logs for annomolies on an hourly basis and mails the system administrator with it's findings.  

  In addition to being a webserver and a proxy server it is a mail server runnig Horde, wu-imapd, solid-pop3d, and the Exim MTA.  For local mail acces, mailx and pine are available.  It is also a UPSd server for my packet node which shares the same UPS, and a remote X server capable of serving X, VNC, and VNC-java.  Additionally, it does some basic network management VIA dhcp, and some clustering.  It also acts as a netbios wins server and uses samba's nmbd to answer wins requests for clients on the local network.  I don't use SMB to much, instead I use NFS.  Biache serves a portion of the filesystem via NFS as well, and acts as a translation between NFS and SMB using common public shares, and allows me to centralize some of my key files that are accessed between my  7 computers.  For one of those computers, a laptop, it is also a bootp server.  The laptop uses PXEboot to fetch and download the second stage bootloader, etherboot.  Etherboot then loads a slackware linux kernel and the laptop runs diskless, mounting it't root partition VIA NFS from the proxy as well.  Biache also acts as a CVS server for me.  I work for Patton Electronics and frequently need access to my source code when I am not at work, to work on in my spare time.  The CVS server allows me to access version control anywhere in the world, and the python based web interface provides a relatively secure, yet easy to access method of accessing my work on any platform.  

In Biache's future include possible use of the ht://dig site search, as well as CVS support VIA e-mail.  Allowing me to check in files using the web mail interface, or any pop3 / imap client., and check out via web tarballs.  Also, I'd like to learn how to better use the MySQL database that I have installed.  (MySQL is used by Horde and ViewCVS)  Other developments are in the future, such as a DNS server, and a registered domain.  

Some people wonder how I can do all this on a simple 56K dial up line.  Well, this is how:  I use CompuServe classic (a 24.95/mo ISP) as my gateway.  I use my system as it's own ISP.  I use pppd to initiate a dialup connection and keep it alive.  CompuServe has sufficient IP addresses so my address does not change during a dialup session.  CompuServe has a relyable RAS system, so I get fewer dropouts.  A typpical dial up session can last up to two weeks.  If the connection goes down, pppd dials back up and re-establishes the connection.  For DNS, I use the DNS client provided by  This client reads the address associated with my ppp0 device every 3 minutes, or so, and compares it with the last known good value.  If it changed, it notifies the root servers.  Those servers then propogate the address change.  When a DNS client requests a name form the NO-IP server, they respond authoritative, with a lifetime of 3 seconds so most DNS caches won't cache it.  Instead they request the lease on every access.  Thank goodness has root servers in NewYork, Dallas, and LosAngeles, as well as several other sites around the world.  Bottom line, if my connections goes down, it should take less than 15 minuntes to propogate throughout the internet, resulting in a very short down time.  

So, what's the deal with the Labs?  The labs, or what labs I have left, were originally written in Sun Microsystem's StarOffice v 5.2.  StarOffice has an html export option.  However, due to limitations in HTML, an imperfect html export algorythm, and limitations in many web browsers, the labs are usually less than perfect.  Therefore I do not indend to use the web based labs for a grade.  Instead, I use Biache's print server capabilities to print the page dirctly from StarOffice.  The labs are intended for reference only, and to show the progress that the labs have made over the years.  Also, I hope to reduce the number of lost labs, as a year ago, I lost a whole semester full of labs, my most devastating loss ever.  Have fun browsing through the labs.  Again, if you don't understand anything, feel free to let me know.  I can be reached at