Fix edge-case bug in DNS resolution. Lower using cached IPs to 2 hours.

For hosts where ignore_ttl_domains was true and we used cached IPs,
there was a bug when the DNS failed to resolve. In that case, we ended
up wiping the IP and not using the existing or recent IPs. Now in the
event of DNS lookup failures, we always try to fallback to the
previously seen IPs (with the assumption that DNS lookups should be
temporary).

This also lowers the amount of time we use recently seen IPs when
ignore_ttl_domains is true to 2 hours, so we're at least a little more
compliant.