Back before the days of ipcop, smoothwall, endian, PFSense, and other pre-built systems; linux firewalls were built with ipchains and/or iptables.
Built, delivered and documented a custom dual-ISP Linux firewall with DMZ from scratch for a client wanting a low-cost, high-performance firewall with the ability to do low-level packet analysis. I setup 4 NICs on the firewall, two outbound cards managed ECMP using iptables, ip route, ip rule and failover scripts; one for the DMZ, and one for the protected network. Advantages to client included increased bandwidth, ability to switch to just one ISP when the second connection was down, and the ability to have redundancy in mail and web server hosting.