A full list of the features in DD-WRT would spill over to pages on end, but here's a rundown of the most significant and widely used items:
- Firewall. Every router these days comes with a firewall, but the one included with DD-WRT is based on the iptables firewall in Linux and thus is extremely powerful and configurable. You can edit the firewall through DD-WRT's own Web-based interface or use a tool like Firewall Builder to do most of the heavy lifting.
- IPv6 support. With the world rapidly running out of IPv4 address space, it's nice to know your router can speak IPv6 natively if it has to. DD-WRT has native IPv6 functionality, as well as the 6to4 address-translation system.
- Quality-of-service controls. Most routers have basic QoS management, but some of the DD-WRT builds (mainly the commercially available version) can give you more sophisticated QoS settings, allowing you to specify such items as maximum bandwidth per netmask or MAC address. UPnP media streaming is also included as a standard item on just about every DD-WRT build.
- DNS controls. These include Dnsmasq, a local DNS server that speeds up host-name lookups, as well as support for dynamic DNS providers like TZO, No-IP, and DynDNS.
- Afterburner. A speed-enhancement system supported by some wireless network devices based on the Broadcom chip set. You should use it only if your router and your other network hardware support it, or you'll actually see a net loss in performance.
- Kai Daemon. This one's for gamers. It's a service to allow network tunneling for game consoles -- mainly Microsoft's Xbox -- so that they can connect to the XLink Kai gaming network.
OpenWrt includes most of the above features and more:
- Special hardware configuration options. Many routers feature built-in hardware elements such as an action button (usually involving Wi-Fi Protected Setup). OpenWrt lets you redefine the functions available to such buttons.
- File sharing. Some commercial routers now allow you to share storage that's attached directly to the router via USB or eSATA. OpenWrt makes this possible as well.
- Support for a wide variety of USB-connectable devices. Aside from USB-connected storage, this includes devices like printers, Web cameras (a do-it-yourself home security system!), and even audio systems. Generally, most any hardware device that has Linux support will work, although you may be limited in your choice of devices by the connectivity of the router itself.
- Mesh networking support. Protocols like 802.11s and BATMAN allow ad-hoc creation of mesh or peer-to-peer networks between devices. OpenWrt's wireless drivers allow such configurations.
- Port knocking. A sly way to enable external access through a firewall, port knocking isn't widely used as a regular security measure, but OpenWrt makes it possible to configure such a setup if you want to use it.
- Real-time stats collection and monitoring. For those who want the most in-depth insights possible into their network's behavior -- in real time, to boot -- OpenWrt's package collection includes apps like Nagios to make this possible.
Note that this isn't an exhaustive or exclusive list. Some of these OpenWrt features may be found in DD-WRT as well. That said, thanks to OpenWrt's packaging system and faster pace of development, a great many more features are to be found in OpenWrt's ecosystem.
Many open firmware functions are designed for using the router as a public-access hotspot. If you're setting up one of these in a business or residence, it's convenient to have them in the box and not need to put them together by hand.
- Client isolation. Wireless clients can see only the access point and not each other -- quite important if you want multiple people to share the same access point and not get into each other's shared files.
- Sputnik Agent. An add-on that allows an access point manager to use the SputnikNet remote management system for controlling multiple access points from a single Web-based console. SputnikNet has both free and for-pay management tiers, depending on your needs.
- Hotspot System. This appropriately named service lets you manage multiple locations, as well as the billing of clients who connect to your hotspot.
- Wifidog. Another access-point portal solution, Wifidog provides a broad range of options from simply displaying a splash page for users (for no-strings-attached access) to requiring actual purchase of access time.
- ChilliSpot. Yet another open source access controller for hotspots, ChilliSpot uses RADIUS authentication. Note that ChilliSpot is a legacy project that is no longer actively maintained, but still included with many DD-WRT builds as a backward-compatibility measure.