Nokia IP330 running Linux HOWTO
*** NOTICE: This is NOT complete yet! ***

I was approached one day by a friend of mine @ work with this box and was given the opportunity to pick it up for $50. Having used them before with IPSO and Checkpoint’s FW-1 environment, I was curious to see if I could get linux working on it.
Before I continue, let me say that what I did COMPLETELY DESTROYED the IPSO installation and will do so for you as well if you continue. I also want to give credit to my main resource; an article in LinuxJournal titled “Running Linux and Netfilter on Nokia IP Series Hardware“. Please note I will be paraphrasing this article and inserting snippets from it here & there. Please see that article if you run into trouble as their explaination of things may differ from mine.
Also, note that this HOWTO is intended to help you get linux installed on the Nokia IP330 hardware, not to show you how to configure a firewall, or a router or even how to really set it up to do either of those functions. This is strictly a HOWTO on getting linux version ‘x’ onto hardware platform ‘x’. I suggest the following links for setting up IPtables and doing routing with Linux if that is your ultimate goal:
IPTables Tutorial
NetFilter/IPTables project FAQ
netfilter.org FAQ
linux-ip.net Intro to Linux Routing
Linux Advanced Routing & Traffic Control HOWTO
If this is all cool with you, then please… do continue
Let’s get started!
My particular Nokia box came with a AMD K6-II 400mhz processor, 256mb RAM, a 20gb IBM hard disk and lucky me, came with the optional znyx 2-port 10/100 ethernet add-on card.
Hardware/Software Requirements:
- 1 Phillips head screwdriver
- 1 serial cable
- 1 Nokia IP330
- 1 standard desktop PC with a CDROM and an extra power connector
- Red Hat 7.3 disks (only the first two installation disks are necessary)
- Dual-connector IDE cable
- Access to the Internet
Installation Outline:
- Remove drive from Nokia IP330
- Remove CDROM from donor desktop PC
- Install RH 7.3 Linux on the IP330
- Boot into the newly installed Linux distribution on IP330.
- Download the latest stable kernel (2.6.x as of this writing).
- Compile the kernel for AMD K6-II, serial support, no LKMs, ext2/ext3 filesystems, iptables, VM support, the Becker eepro100 driver and so on.
- Configure /etc/lilo.conf.
- Configure /etc/inittab.
- Configure the NICs and reboot the final installation
*** VERY IMPORTANT ***
Before continuing, connect a serial cable and login to your nokia box and WRITE DOWN THE MAC ADDRESSES FOR THE INTERFACES! The eeproms for the interfaces are not where the eepro100 driver expects them to be so later on we will need to set the MAC addresses manually once linux is installed. On my system, with the addon znyx cards, the 3 interfaces on the front of the nokia ended up as follows once linux was installed.
![]()
Click the image above to view full version
Now that we have the interface MAC addresses written down, go ahead and crack the case! Remove the 17 screws, and lift off the case top to reveal the internals. Inside you’ll find a motherboard which may or may not look like the picutre below, a power supply, hard disk, and any add-on cards will be located on the left side as shown below.
![]()
Click the image above to view full version
At this point, we need to get our donor box, most IP330 to linux how-to’s will tell you to take the disk out, put into the donor box and install linux, then transplant and it will magically work. Not so, I tried that method for about 19 hours and kept hitting a brick wall. SO, at this point we need to take the hard disk out of the IP330, as well as the CDROM from the donor box. Connect the dual connector IDE cable to the IP330 and position it so that the top of the case can be put back on (don’t screw it down) with the IDE cable hanging out.
Connect the CDROM to the middle connector of the IDE cable, and the IP330 hard disk to the top connector of the IDE cable. Position the donor box on TOP of the IP330 with it’s case open to allow you to tap into the power supply of the donor box. Plug the IP330 hard disk and the CDROM into the power supply of the DONOR BOX, while leaving the two connected to the IDE cable which is connected to the IP330. Don’t worry, this is shown as a graphic below:

You may be wondering, WTF? Well, the reason for this is fourfold:
1. It’s EASIER than building on a donor box (installation will configure everything for you)
2. You may not have access to a AMD K6-II donor box!
3. If want to skip the custom kernel, you certainly can do it by installing this way
4. The power supply on the IP330 is WAAAAAY too puny to support the hard disk AND a CDROM at the same time
Now that you’re staged for install, start up the donor box to get power flowing, connect your serial cable to the IP330 and start it up. During startup, get into the BIOS by hitting TAB in your serial console and configure the boot order to CDROM, C, A. The BIOS is a standard Award BIOS as many of you have seen in your own PCs so I will not go into details as to how to do this. Save the BIOS configuration, put the redhat 7.3 installation CD in the drive and restart the IP330.
Once powered up, the IP330 will show it booting from the CDROM and soon you will be greeted by the standard, RedHat installation boot screen. To begin the installation, type the following in at the boot prompt:
linux console=ttyS0,9600
And we’re off!
With installation started, keep in mind the following options:
- Configure the disk as follows:
- = 2x physical memory
- /boot = 50mb
- / = rest of space
- Please note you *may* be asked to initialize the disk, choose yes
- Choose a ‘custom’ installation
- Configure a user OTHER THAN ROOT, you will need this for console login
- Installation Options:
- Router/Firewall
- Network Managed Server
- Be sure to install console support (it’s in ’select individual packages)
linux console=ttyS0,9600
Please note that the kernel messages MAY NOT display, this is ok… go get a cup of coffee or something for a few minutes.
After a few minutes, you’ll see the login prompt. go ahead and login with your ‘other’ user that was created during installation and su - to root.
Configuring /etc/lilo.conf
For LILO, we need to enable it’s console mode to display on the serial console, do this by adding the following line directly above the timeout=50 line.
serial=0,9600n8
Next, remove the line that looks like this:
message=/boot/message
This is the graphical lilo screen that RedHat displays by default, we don’t need it. Save /etc/lilo.conf. Next, we need to load the LILO configuration, do this by executing the following on the command line:
lilo -t && lilo
Configuring /etc/inittab
Next, let’s make sure that the serial console is available correctly. In /etc/inittab you’ll find a section that looks like the following:
co:2345:respawn:/sbin/agetty ttyS0 9600 vt100
The other gettys should be commented out, we need to change the above to the following:
1:2345:respawn:/sbin/agetty -h ttyS0 9600 vt102
Go ahead and reboot to ensure the system still boots correctly… Moment of truth!
Configuring the NICs
Let’s get the NICs set up now, on my box I have eths 0 through 4, resulting in a total of 5 interfaces. Please see again, my eth mapping picture below:
![]()
We will need to modify the /etc/rc.local file to setup the MAC addresses. On my system I added a section to /etc/rc.local as follows:
ifconfig eth0 hw ether 00:00:00:AA:AA:AA
ifconfig eth1 hw ether 00:00:00:AA:AA:AA
ifconfig eth2 hw ether 00:00:00:AA:AA:AA
ifconfig eth3 hw ether 00:00:00:AA:AA:AA
ifconfig eth4 hw ether 00:00:00:AA:AA:AAWhere ‘00:00:00:AA:AA:AA’ = the MACs written down from your IPSO configuration
All you have left to do now is configure each NIC via their respective configuration files:
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/network-scripts/ifcfg-eth1
/etc/sysconfig/network-scripts/ifcfg-eth2
/etc/sysconfig/network-scripts/ifcfg-eth3
/etc/sysconfig/network-scripts/ifcfg-eth4
Reboot once again, test networking, configure IPtables & routing and you’re off to the races!







Leave a Reply
You must be logged in to post a comment.