Q:

Is it possible to set up a dual WAN (failover) on a Buffalo WHR-HP-G300N? 

I'm would like to set up two ports on a G300N into an active-backup pair (both with static IPs, if that makes any difference).  In the web interface under Setup->Networking there is a section called "Bonding" that looks promising - the documentation says "Bonding can be used to enhance throughput or provide failover capabilities," but nothing else. 
I tried to set up a bond with two interfaces, eth0 and eth1, and the "active-backup" option, but then I couldn't connect to the router.  I wonder if this is because eth1 is a port attached to an internal switch and the OS cannot actually see the 4 LAN ports individually. 
Has anyone had experience setting this up or is it simply not possible with this model router?  I would like to stick with the stock DD-WRT build if possible, since I won't be administering this device in the future. 
Note - I also tried setting up SSH management to poke around in the CLI, but I keep getting an "access denied" error after entering my password.  This is a separate matter entirely, but I figured it was worth mentioning that I've tried

A:

You cannot set up Dual WAN ports without using scripts (both startup and firewall; under the administration tab in the commands section with the latest builds).   Now, here is the basic idea, but the scripts vary, so I'll give you the gist and you can search the dd-wrt wiki for what you need. 
To load balance a network, you need to have both ports active, both need a separate MAC (they do end up at some of the same hubs, and the same MAC for the same area, even if on different nets causes problems, just change the last four or six digits of the routers WAN MAC, and you should be groovy.   The same MAC across gateways, well, it really isn't a problem after two or three gates, as they only send the data back to your outer gateway, which then sends it to you via port forwarding.   So, you'll need to write down those digits...  Now, first you want to set up a few pieces. 
Step 1: set an ethernet port on a different VLAN from all others in the VLANs part of the GUI (webpage of the router), in setup>vlans
Step 2: prepare the scripts I list below, and set the address of your secondary wan static, or look up a DHCP script to pour the data routing info into it, and then bind it. 
Step 3:
Scripts needed:  You're gonna need the scripts here, so copy and paste to a text file--look up the script to build a dual wan, and get them both working; you will need a static address from the isp of the second wan, or you'll need a script to dhcp over that connection, and you'll have to work that out on your own (one way is to start with a simple set up for a single WAN, plug it in to the second modem, and get the DHCP to work, then just write down what you get, set that static on the second wan; you might have to completely power cycle your modem to get it to connect properly again, and most isp's are fault tolerant across IP's, so it should just give you the one you set static; you could also look up the script to perform DHCP and send the output of that to the interface you're using for your second wan, it might come in handy--you'd just set all the defaults to an open 1.1.1.1 and then run if statements that check for that value and apply a new DHCP.   Once you create the second WAN port and get it set with default values One will be down, the other up.   Look for the script to do failover, and read it carefully.   If you know any programming at all, you might be able to activate BOTH wan's using only the activation scripts and then activate the addresses.   Now look for a load balancing script and apply it.   If you put them all in one giant startup script, you can install it to the memory over telnet or ssh, and you can add other scripts to continually ping out to check the connection status and give you an address, you can also use the web interface to have the router do a restart every so often and it will keep functioning well. 
Just as a bonus, I'll let you in on something.   I call this type of router setup the Gatekeeper.   I use these to tunnel two networks together using static addresses for wan gates, then just have other routers handle internet on either side of the gatekeeper.   Example:  router 1 has a network all it's own, with WAN to internet, and LAN to gatekeeper LAN.   Gatekeeper LAN adress matches up with router 1 internal lan DHCP, but is set static inside the Gatekeeper.   The last router is set up to use an Eth as WAN2.   Now you're all set... ...Set the gatekeeper WAN to the LAN network of the dual WAN router, and plug the WAN of the Gatekeeper to a LAN port (not WAN2) of that last router (router 3); set the WAN2 of router 3 to have an address on the LAN network of router 1 and Gatekeeper, and plug WAN2 into a LAN of the gatekeeper.   Set up static routes in gatekeeper pointing to router 3's LAN over 0.0.0.0 gateway and the WAN interface (the WAN gate of the gatekeeper with handle the redirect).   Set the same kind of route on router 3 pointing to the primary network and point it to the Gate of WAN2 (probably 0.0.0.0 as well, but check the script you used to set up the WAN2 and point the interface to that VLAN), It will act as a gate (0.0.0.0 is a logical redirection over NAT).   Now set both router 1 and router 3 WAN's to get addresses by dhcp, and plug in modems.   Next, put in a script on router 1 to load balance by pointing the second internet gateway on the other network (the static routes will find it, make sure you point this router to the other network by pointing it to the gatekeepers internal LAN address, and the gatekeeper will forward the traffic).   This will force 50-50 split roughly.   IF you prefer a 70 - 30, put the same kind of script on router 3, set all to DNS to the gatekeeper.   You can still split closer to 50-50 if you put devices on both subnets (note that the nets must have a different netmask: 192.168.x.x is one type, 10.0.x.x is another, and you can select any where the x's change.   You can set up massive internal subnets, and have an outer gateway on a single net of the opposite type, and static route between them.   Aint it fun?