The external urls are checked periodically with the linkcheck cronjob.the verification for valid/invalid is based directly on the success of a curl request to the external url.
currently, this curl request just returns success/failure based on the HTTP codes of the response. so, any error marks the url as invalid, with the consequence of disabling the ezURL object.
customization of the choice should be possible, for example for the 401,403,503,504 http codes. it would be good to let an external link stay valid if a 503 or 401 is the result, even though it's an "error by specification"
an idea is to implement a setting as an array with the HTTP codes to whitetist.