>>> Imagine a setup with *two* routers. One of them has broken Internet,
>>> the other is working. How can the hosts decide if both keep announcing
>>> themselves as "I can reach anything"?
>> in the general case the host still has to take the 'I can reach anything'
>> announcement with a pinch of salt.
>> and it should be able to try both (or more) connections and react
>> accordingly when one fails.
> ...which is the default host behaviour if the OS supports RFC4861.
> Sadly some "user friendly" network mangers breaks this and setting a
> static route with a better metric to just one(!) router.
not really. that only covers the first hop. any failure anywhere else along the
path would not be dealt with by 4861.