Bug #6493
open
Dynamic DNS clients slow page load
Added by NOYB NOYB over 8 years ago.
Updated over 8 years ago.
Description
Dynamic DNS RFC 2136 Clients page is slow to load with entries for interfaces that have private address and the option to attempt to fetch the public address is enabled.
Once in a while, though rarely, the page will load quickly.
Presumably the delay is due to verifying the current cached address.
Not meaning to necessarily say this is a bug, but the slowness is an issue that would welcome a fix/better way. Maybe load the page with address status placeholder while asynchronously verify the cached addresses with some ajax or something.
Did some network sniffing and their is sporadic TCP retransmissions of the initial SYN to the various checkup.dyndns.com IP addresses until a SYN ACK is finally received. From that point on (TCP connection established) the check happens smoothly without further packet loss.
Would be nice if we could specify our own check ip service to use instead of relying on third party. That's a big part of why I set up my own dynamic DNS RFC 2136 service. Already have my own ip check service from before when I was doing my own custom dynamic DNS.
- Tracker changed from Todo to Bug
- Subject changed from Dynamic DNS RFC 2136 Clients slow page load to Dynamic DNS clients slow page load
- Status changed from New to Confirmed
- Affected Version set to All
yeah they don't reply to the first SYN (guessing the service is under near-constant DDoS, it's been that way for some time), which slows down that entire process quite a bit. Same applies to both DDNS screens.
Hard coded my service https://url... along with curl auth into services.inc and it works. Much faster too. Would be nice for this ip check, along with auth, and ssl verify peer options to be setup similar to the Dynamic DNS Client custom config (see case 'custom': in dyndns.class).
curl_setopt($ip_ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
// curl_setopt($ip_ch, CURLOPT_USERPWD, "{$this->_dnsUser}:{$this->_dnsPass}");
curl_setopt($ip_ch, CURLOPT_USERPWD, "$username:$password");
Also available in: Atom
PDF