Dyndns.class update
-
Added his function to get the WAN IP (Internet) regardless of setting.
/* * Private Function (added 07 July 08) * - Get the WAN IP */ function _checkIP() { log_error("DynDns: _checkIP() starting."); $ip_ch = curl_init('http://checkip.dyndns.org'); curl_setopt($ip_ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ip_ch, CURLOPT_SSL_VERIFYPEER, FALSE); $ip_result_page = curl_exec($ip_ch); $ip_result_decoded = urldecode($ip_result_page); preg_match('=Current IP Address: (.*)=siU', $ip_result_decoded, $matches); $ip_address = trim($matches[1]); log_error("DynDns debug information: {$ip_address}"); return $ip_address; }
Changed the $wan_ip lines in these two functions.
function _detectChange() { log_error("DynDns: _detectChange() starting."); $currentTime = time(); $wan_ip = $this->_checkIP();
function _checkStatus($data) { log_error("DynDns: DynDns _checkStatus() starting."); . . . if($successful_update == true) { /* Write WAN IP to cache file */ $wan_ip = $this->_checkIP();
I hope this helps anyone habing trouble using the dyndns behind a NAT.
-
Added to RELENG_1. Thanks!
–Bill