Lỗi vigor 2925 dynamic dns wan1 is not năm 2024
I have setup OpnSense with Multi_WAN fail over, which is working great. I have two WANs setup with the first as the default gateway and the second as a tier 2 fail over gateway. Disconnecting
0 (
1). I'm now trying to configure Dynamic DNS updates of a subdomain, let's call it
2. Initially, I added two Dynamic DNS entries under
3. The first entry was for
0. I successfully testing the update using
6, which updates the public DNS entry for
2 to the public IP of
0. Now I'm trying to get Dynamic DNS updates to work seamlessly when OpnSense fails over from
0. When I disconnect
Fair enough, the public IP of
0 is still
1, which is cached by OpnSense, so it isn't going to actually make the Dynamic DNS update request. Not the desired result, but it makes sense what's happening. Next idea is that maybe I should have only one Dynamic DNS entry under
3 and use the $this->_dnsRequestIf = get_failover_interface($dnsRequestIf); if ($this->_dnsVerboseLog) { }
$this->_dnsRequestIfIP = get_interface_ip($dnsRequestIf);6 interface instead of
0. I set this up and now when I test fail over, I get this in the logs:
$this->_dnsRequestIf = get_failover_interface($dnsRequestIf); if ($this->_dnsVerboseLog) { }
$this->_dnsRequestIfIP = get_interface_ip($dnsRequestIf);9, it looks like curl_setopt($ch, CURLOPT_INTERFACE, $this->_dnsRequestIfIP); 0 cannot use the $this->_dnsRequestIf = get_failover_interface($dnsRequestIf); if ($this->_dnsVerboseLog) { }
$this->_dnsRequestIfIP = get_interface_ip($dnsRequestIf);6 interface for the HTTP request. The code sets the curl_setopt($ch, CURLOPT_INTERFACE, $this->_dnsRequestIfIP); 0 interface like this: $this->_dnsRequestIf \= get_failover_interface($dnsRequestIf); if ($this->_dnsVerboseLog) { log_error("Dynamic DNS ({$this->_dnsHost}): running get_failover_interface for {$dnsRequestIf}. found {$this->_dnsRequestIf}"); } $this->_dnsRequestIfIP \= get_interface_ip($dnsRequestIf); $this->_dnsRequestIf = get_failover_interface($dnsRequestIf); if ($this->_dnsVerboseLog) { }
$this->_dnsRequestIfIP = get_interface_ip($dnsRequestIf);curl_setopt($ch, CURLOPT_INTERFACE, $this->_dnsRequestIfIP); curl_setopt($ch, CURLOPT_INTERFACE, $this->_dnsRequestIfIP); Is $this->_dnsRequestIf = get_failover_interface($dnsRequestIf); if ($this->_dnsVerboseLog) { }
$this->_dnsRequestIfIP = get_interface_ip($dnsRequestIf);6 not a valid interface for curl_setopt($ch, CURLOPT_INTERFACE, $this->_dnsRequestIfIP); 0? Playing around some more, I tried setting curl_setopt($ch, CURLOPT_INTERFACE, $this->_dnsRequestIfIP); 5 for Dynamic DNS, which gives you two options for the interface, curl_setopt($ch, CURLOPT_INTERFACE, $this->_dnsRequestIfIP); 6 and curl_setopt($ch, CURLOPT_INTERFACE, $this->_dnsRequestIfIP); 7. I was able to get a Multi_WAN fail back to normal (
0 to
0 entries under
3:
But when I test fail over again (
0), I get a timeout error from curl_setopt($ch, CURLOPT_INTERFACE, $this->_dnsRequestIfIP); 0. I think this may be due to
0 not being fully "failed over to" yet when the Dynamic DNS update runs:
Note that both show
0. Failing over from
0 seems to be slow (10 to 60 seconds vs. immediately) to establish the correct routing in the firewall compared to going from
0 to |