www.otago.ac.nz

Download Report

Transcript www.otago.ac.nz

Linux on commodity network H/W

Josh Parsons LUGOD talk August 15 th 2005

What's this all about?

● If you have a small office / home network, chances are you are using a router made by Linksys, ASUS, D-Link, or Motorola.

– Your router is probably already running Linux!

– (And a lot of other free software).

– You can use the

firmware upgrade

feature of your router to install a more open version of the firmware onto it. And then...

Advantages of a more open firmware

● Get more control over the device's existing functionality.

– e.g. set up more sophisticated firewall rules with iptables; override firmware limitations on wireless power / frequency; remote administration with ssh ● Install new software to add new functionality.

– e.g. run a web server / wiki / blog / proxy / irc logger / P2P / email server / webcam / telephony server / etc...

How does it all work? (1)

● Hardware: what's inside a typical SoHo router?

– A specialized “embedded systems” processor – (ARM or MIPS architecture) – about 100-300MHz clock.

– Some RAM (between 8 and 32MB) – Flash ROM containing the firmware (2-8MB) – (Wireless) / (USB) / ethernet interfaces via PCI bus.

– (Specialized network hardware - a managed switch).

– i.e. comparable to a late 1990s-era PC!

How does it all work? (2)

● These devices treat their ROMs like a disk: – The ROM is

partitioned

into several areas: ● The

boot loader

(like LILO or GRUB).

● A re-writable

configuration area

.

● The Linux

kernel

.

● A

ramdisk image

(containing a normal linux filesystem) – When you switch the device on, the boot loader copies the kernel and ramdisk into RAM, and starts the kernel. From there, it's like any gnu/linux system.

How does it all work? (3)

● Reflashing the firmware: – The manufacturers thoughtfully provide the ability to flash a new copy of the kernel and ramdisk image into the ROM. (So they can fix bugs) – Because of the partitioning scheme, you can do this without touching the boot loader or configuration.

– Which is good, because it means that even if you screw up, you can still reflash using the boot loader.