Router/NAT/Firewall on a Floppy (Linux Based)

If you have attended the authorised courses for VMware or spent sometime on the Forum’s you will have heard of the ability to set-up a router/NAT/firewall just on a single 1.44MB floppy. This is NOT a VMware utility but an open-source copy of Linux which has been set-up for Routing/NAT/firewall purposes. This example uses floppy from www.freesco.org Freesco – which stands for Free ciSCO – it has nothing do with SCO version of Linux. The default version of this router has one nic with static IP and the other set to be a DHCP – the router also acts as a DHCP server issuing IP addresses. I would assume you would want everything statically configured. If you want a copy of my version of the FreeSCO router – configured as per this guide below. You can download it from here:

virtual_router.flp

Alternatively, head off to FreeSco’s website and download it there.

The password for root is vmware

Warning:

  • There is something odd going on with the labels and nics. In the VM nic0 is internal and nic1 is external. However, when these nics are picked up by the FreeSco is labels nic0 as the external and nic1 as in the internal. Perhaps FreeSco is labelling the first nic found in the VM as nic0 – and this need not be the first nic created in the VM?
  • In my case the internal network will have an IP range of 192.168.1.x and the physical network will have an IP range of 192.168.2.x. There is a physical router with an IP of 192.168.2.1 which takes me out to the internet
  • If you have problems getting this set-up 9/10 it’s a problem with your internal nic being connected to physical, and physical nic being connected to internal. i.e, its like a patching problem and the nic’s are patched into the wrong switch.

Stage 1: Set-up the FreeSco Virtual Machine

  1. Logon to the MUI/vCenter with your VM Administrator account – in my case lavericm
  2. Create a New Virtual Machine using as the OS type be GNU/Linux
  3. Set the amount of memory to be the guest minimum of 32MBNote:
    The FreeSco router will actually work with just 8MB of RAM – but as a pre-caution I always obey the VMware minimum recommendations. Other websites have said use 16MB for the router…
  4. Close the Virtual Disk dialog box, to create a diskless Virtual Machine
  5. Enter the Virtual Machine options, and choose Add Hardware
  6. Add a second network adapter Note:
    You don’t need a CD-ROM or other components – so if you wish remove them

    Set Network Adapter to be connected a production/external switch and the Network Adapter 2 to be connected to internal network.

    Do not use vmxnet but vlance. The FreeSco floppy disk has no VMware vmxnet driver, but does support the emulated AMD PC-NET network driver which vlance uses

  7. Next to  Floppy Drive click Edit…
  8. Choose X Connected at Power On
  9. Change the Device type from System Floppy Drive to Floppy Image, then type the path to your flp file like so:/vmimages/virtual_router.flp

Stage 2: Configuring the Floppy Router

  1. Power on the Virtual Machine created earlier
  2. At the FreeSco Welcome Screen, type Setup
  3. Login as ROOT and supply the password.Note:
    If you have downloaded my copy from rtfm-ed.co.uk the password is VMware
  4. Choose Color (c) as mode
  5. Choose (e) for an Ethernet Router
  6. Press [Enter] to accept the Hostname of Router1 (611)
  7. Press [Enter] to accept the Domain Name of inet
  8. Press [X] to accept the Ethernet Hardware SettingsNote:
    The next page defaults to modifying the eth0’s network settings. It has no IP address set. The default flp file assumes that eth0 is connected to your ISP (physical network) and that eth1 is your internal network using 192.168.2.x.

    In addition eth0 is set to be a DHCP client of you ISP/Physical Network and eth1 is set to be a DHCP server.
    You probably find these setting unsuitable

  9. To configure eth0:
    (this is the Virtual NIC attached to the External Switch) 

    To set the IP address
    621 [Enter]
    192.168.2.2 [Enter]
    To set the Subnet Mask
    622 [Enter]
    255.255.255.0 [Enter]

    To set the Default Gateway
    631 [Enter]
    192.168.2.1 [Enter]
    To switch off DHCP Client
    627 [Enter]
    n [Enter]

    Note:
    In my case the real router on 192.168.2.x has the IP address of 192.168.2.1, so I used the next available IP address in the 192.168.2.1 range
     

  10. To Switch to eth1, and change IP settings
    (this is the Virtual NIC attached to the Internal Switch) 

    1 [Enter]

    To set the IP address
    621 [Enter]
    192.168.1.1 [Enter]
    To clear the DHCP Pool
    625 [Enter]
    - [Enter] – disables the pool

  11. Type X, to exit the eth? Configuration
  12. Choose N, to not detect modems
  13. Choose N, for the advanced modem set-up
  14. Choose Y, to trust local network 1
  15. Choose N, to not trust modem links
  16. Choose N, for DNS Caching
  17. Choose N, for DHCP!Note:
    After this I choose N for all the options – to run as few services as possible
  18. Set a new password for root/admin/pp - as you deem appropriate
  19. Press [Enter] to return to main menu
  20. Type S, and [Enter] to save your settings and rebootNote:
    On first boot up the NAT/Router should look like this

One Response to “Router/NAT/Firewall on a Floppy (Linux Based)”

  1. Working With VMware Virtual Floppies Says:

    [...] Ability to boot certain applications – like a Linux virtual router/firewall on a floppy (read more about this here: http://www.rtfm-ed.co.uk/?p=101) [...]