Looks like it's working again! My second rig was able to contact the assignment server, and the forked client successfully uploaded the completed WU.
I've now configured my first rig to be identical to the second: running Langouste not as a daemon and using 127.0.0.1 as the proxy address. If it works, I'll try putting it back in daemon mode and using localhost instead of 127.0.0.1.
Edit: I think I just discovered the problem. I tried telnetting to localhost port 8880, and Ubuntu tried connecting via IPv6 first, then IPv4. I commented out the IPv6 stuff in /etc/hosts, and now it only tries 127.0.0.1 when telnetting to locahost. Maybe that was confusing the proxy?