Using your old PC as a firewall box

This article will teach you how to use your old computer as a hardware firewall, instead of buying a much more expensive piece of hardware.

So you have decided to setup a network, bought a few books, surfed the Internet and asked a few friends about their recommendations on the right hardware. The most important piece of hardware you require in setting up a network is a router.
Most beginners like me get confused. Router is a hardware device that manages
routing in a network. Routing means selection of best path for
transmission of data. Thus, router manipulates data in your network. On a network that has more than a few computers, the router becomes a neccessary piece of hardware. Now that you know its importance,
lets advance.

There are many router manufacturing companies such as Cisco, Linksys, D-Link. You can do a research on their products easily on or
my favorite – I am not going to teach you how to setup a network
but instead you are going to learn how to use an abandoned 486 computer
as a router. Before that I would like to mention the anatomy of a router in simple words.

The rRouter has a Single Board Computer (SBC) with firmware.
The main thing in the router is the firmware; firmware is a software that’s burnt on the hardware.
Thus, I will use the term “software” instead of “firmware” to avoid confusion.
This software manages routing in the network. So basically a router is simply a
computer running a software which manages routing. Now that you know what forms a router, let’s move on to next step.

The next step is somewhat simple. Go to your storage room, fight with dust, and take out the good old 486 computer. Now buy a LAN card easily available in the market, if the 486 is not already equiped with one. Check whether wires are correctly plugged in, throw in
your new LAN into to the 486. After doing that, it’s time to transform your old 1990’s fashioned computer into a router.

Now that you have arranged all the required hardware stuff, it’s time
to cover what software you’ll be needing. The name of the software we’re going to use is M0n0Wall, developed by
a very talented swiss guy. The software is available at
(yeah, it’s m0n0 not mono), browse to the download page. You don’t need an operating system on your 486 because M0n0Wall automatically
installs OpenBSD. If you dont know about OpenBSD, it’s a free Unix operating system. Now that you have downloaded
the free software it’s time for installation. Copy the downloaded files onto a floppy or
burn it on a CD-R. Boot from the CD or Floppy. Follow the documentation and installations process provided on M0n0Wall’s site. After the installation is complete, make sure you have made a firewall like device; connect M0n0 box (your 486) with other network computers, configure it by typing the IP
address you chose while installing, by entering the IP adress on your browsers adress bar.
Below is the information that you can obtain from
Installation on a standard PC with the CD-ROM (+ floppy disk) version requires the following steps:

  • Download the ISO image
  • Burn the ISO image onto a CD-R (or -RW)
  • FreeBSD (ATAPI recorder): burncd -s max -e data cdrom-xxx.iso fixate
  • Windows: use your favorite burning program (e.g. Nero) to record the ISO image (2048 bytes/sector, Mode-1)
  • Take a standard 1.44 MB diskette and format it (with MS-DOS/FAT file system!)
  • FreeBSD: fdformat -f 1440 /dev/fd0 && newfs_msdos -L “m0n0wallcfg” -f 1440 /dev/fd0

Note: you can omit the fdformat step if the floppy disk is already (low-level) formatted

  • Windows: format A:
  • Power up your PC, enter the BIOS and make sure that booting from CD-ROM is enabled and booting from floppy disk is disabled
  • Insert CD-ROM and floppy disk (do not write-protect the floppy disk!)
  • Boot
  • Wait for the console menu to appear, select 1. (assign network ports)
  • Assign functions (LAN/WAN/OPT) to your interfaces (hint: use auto-detection, or let the MAC addresses tell you which card is which one)
  • Change the LAN IP address, or use the default (; m0n0wall acts as a DHCP server by default)
  • Access the webGUI (user: ‘admin’, default password: ‘mono’)
  • Make the necessary changes to the default configuration

If you guys have any problem installing this software, feel free to bother me.

Nathan Pakovskie is an esteemed senior developer and educator in the tech community, best known for his contributions to With a passion for coding and a knack for simplifying complex tech concepts, Nathan has authored several popular tutorials on C# programming, ranging from basic operations to advanced coding techniques. His articles, often characterized by clarity and precision, serve as invaluable resources for both novice and experienced programmers. Beyond his technical expertise, Nathan is an advocate for continuous learning and enjoys exploring emerging technologies in AI and software development. When he’s not coding or writing, Nathan engages in mentoring upcoming developers, emphasizing the importance of both technical skills and creative problem-solving in the ever-evolving world of technology. Specialties: C# Programming, Technical Writing, Software Development, AI Technologies, Educational Outreach

Leave a Reply

Your email address will not be published. Required fields are marked *

Back To Top