pfSense with WAN failover and dynamic DNS

See this thread