JD reports all links offline if the host or internet connection is down
|Target version:||030 - Version > 2.xxx|
When JD check whether a link is alive or offline, it should not mark the link as offline if there is no response or the response is a server error. Those conditions should mark the link as Temporarily Unavailable.
The same condition occurs when making the first HTTP connection to download a file. If the TCP or HTTP connection fail or the HTTP return code is a server error, the link should be marked as Temporarily Unavailable and start a wait that locks out other attempts to contact the host (sometimes the wait time is in the HTTP header.).
Estimated time depends on the current host plugin architecture. If the initial HTTP contact is centralized, this is a 1 hour change. Otherwise, it becomes the usual "fix the most important host plugins and fix the others as other changes are made" (is there a name for that?).
I assume that there is a class that all Host plugins extend. If that is the case, the fix may involve adding the initial contact to the parent class, unless overridden. The same goes for the evaluation of return values from link online check.
Besides timeout, host unreachable is signaled by ICMP code 3, TCP response to SYN other than ACK+SYN, or any HTTP 5xx error. Reasons a host is unreachable can be recoded as 503 if they are not 5xx errors.
Most 4xx errors are Severe errors (probably a host interface change). 404 and 410 are the only explicit indication that a link is offline.