Pebble and m0n0wall : Favourite Embedded OS for wireless network

I ordered two AMD SC520-powered net4501 and net4521 embedded board from
Soekris in May. I have evaluated and tested various embedded OS distributions on these two boards. Lastly, I finally sort out two nice distros: pebble and m0n0wall.

Pebble is a trimmed-down version of Debian, in additon with some custom packages (e.g. 2.4.22 kernel, hostap driver, NoCatAuth, etc. ). It has everything you need for a wireless router and auth gateway. I like pebble mainly because it is based on Debian. When I need more packages, I can just run apt-get. Configuration of pebble is just like other Debian or Linux systems, by modifying files in /etc. However, the size of pebble is quite large when comparing to other serious embedded distros such as LEAF. It is because huge perl packages are required for NoCatAuth. Pebble could be nicely fitted in 64MB Compact Flash card. If you need to run apt-get to some packages, you will need at least 128MB. But it is ok for now, as it is quite hard to find 64MB CF in the market.

m0n0wall, on the other hand, is an embedded firewall based on FreeBSD. Compared to pebble, it is much leaner. It can squeeze in 16MB CF but provides more than what Linksys WRT54G router could deliver. Apart from "standard" php-based web interface providing basic stuff such as PPPoE connection, routing, inbound/outbound NAT, firewall rules, setup for LAN, WAN, Wireless interface, it also features IPSec, PPTP VPN, and Traffic shaper for advanced user. While you are running m0n0wall, you feel like playing with a commercial wireless/broadband firewall such as Linksys and Buffalo ones. Even though m0n0wall is running FreeBSD, you cannot imagine that it is a FreeBSD on PC. All configurations could only be accessed by its web interface, it is not able to login remotely even through ssh. However, the author has his valid reason for not enabling ssh, as his design goal to make m0n0wall as a standalone firewall. Anyway, the php-based web interface and its web design impressed me very much at all.

Pebble gives me more flexibility to custom what I need as a router/firewall/wirless gateway. m0n0wall, in constrast, is not as flexible than pebble in customization, but it is a nice, lean, feature-rich and easy-to-use all-in-one firewall. If you like Debian a lot and want an embedded system just like Linux on PC, get pebble. If you want a feature-rich and easy-to-use firewall, m0n0wall is your choice.

Unfortunately, my nice net4501 has burnt out. I cannot run m0n0wall any more. Right now, I only have a net4521 left running pebble. It has been up for 33 days!