Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Multi-wan Azure Dyndns updates not working when primary WAN is unplugged

    Scheduled Pinned Locked Moved Routing and Multi WAN
    2 Posts 1 Posters 319 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • N
      npatel4
      last edited by

      Hi,

      I have 2 wan connections in a Gateway group. They are set up as failover and I'm using Azure DynDNS to update an A record. When I manually set a Gateway as down, in this case, WAN 1, the DynDNS updates automatically to reflect the IP of WAN 2 but the same doesn't work when I manually unplug WAN 1 from the pfSense router.

      The Setup

      WAN

      • WAN 1 (Direct IP- Gigabit Ethernet service - Directly terminated from Fibre box) - Tier 1

      • WAN 2 (PPPoe - Directly connected from NTU) - Tier 2

      • Both WAN connections are a part of a Gateway group called PreferFiber

      DNS

      • 2 Internal Windows DNS servers

      • 8.8.8.8 - Gateway set as WAN 1

      • 8.8.4.4 - Gateway set as WAN 2

      Rules

      • The default LAN rule has been changed to use the PreferFiber gateway group as its gateway.

      DynDNS

      • Using Azure DNS to update an A record within our DNS Zone. - Tested ok and is working under WAN 1.

      Problem

      • The above setup is working normally (through WAN 1) and if I mark WAN 1 as down, the gateway group successfully fails over and the DynDNS update is triggered but if I unplug the WAN 1 cable from the router, my failover kicks in but the DynDNS fails to update.

      I have been hitting my head against this problem but no amount of packet captures or logs can help me narrow down the problem.

      Please see attached log of both scenarios.

      
      ---------------- WAN 1 Gateway marked as down (working ok!) -------------------
      
      May 23 23:59:45 	May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: phpDynDNS : (Success) IP Address Changed Successfully!
      May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: phpDynDNS: updating cache file /conf/dyndns_PreferFiberazure'<A Record>'0.cache: <WAN 2 IP>
      May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: Dynamic DNS azure : <WAN 2 IP> extracted from local system.
      May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: Dynamic DNS azure : _checkStatus() starting.
      May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: Response Data: {"id":"<Successful payload from Azure>"type":"Microsoft.Network\/dnszones\/A","etag":"","properties":{"fqdn":"<DNS A RECORD>","TTL":60,"ARecords":[{"ipv4Address":"<WAN 2 IP>"}]}}
      May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: Response Header:
      May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: Response Header:
      May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: Response Header: date: Mon, 24 May 2021 00:04:26 GMT
      May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: Response Header: x-ms-routing-request-id: AUSTRALIAEAST:20210524T000427Z:<requestId>
      May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: Response Header: x-ms-correlation-request-id: requestId
      May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: Response Header: x-powered-by: ASP.NET
      May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: Response Header: server: Microsoft-IIS/10.0
      May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: Response Header: x-ms-ratelimit-remaining-subscription-resource-requests: 11999
      May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: Response Header: x-ms-request-id: <request ID>
      May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: Response Header: strict-transport-security: max-age=31536000; includeSubDomains
      May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: Response Header: x-content-type-options: nosniff
      May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: Response Header: etag: <etag>
      May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: Response Header: content-type: application/json; charset=utf-8
      May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: Response Header: content-length: 368
      May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: Response Header: cache-control: private
      May 24 00:04:27 	php-fpm 	343 	/rc.dyndns.update: Response Header: HTTP/2 200
      May 24 00:04:23 	php-fpm 	343 	/rc.dyndns.update: Dynamic DNS azure : _update() starting.
      May 24 00:04:23 	php-fpm 	343 	/rc.dyndns.update: DynDns : Dynamic Dns: cacheIP != wan_ip. Updating. Cached IP: <WAN 1 IP> WAN IP: <WAN 2 IP>
      May 24 00:04:23 	php-fpm 	343 	/rc.dyndns.update: Dynamic Dns : Current WAN IP: <WAN 2 IP> Cached IP: <WAN 1 IP>
      May 24 00:04:23 	php-fpm 	343 	/rc.dyndns.update: Dynamic DNS azure : <WAN 2 IP> extracted from local system.
      May 24 00:04:23 	php-fpm 	343 	/rc.dyndns.update: Dynamic DNS : running get_failover_interface for wan. found igb0
      May 24 00:04:23 	php-fpm 	343 	/rc.dyndns.update: Dynamic DNS azure : <WAN 2 IP> extracted from local system.
      May 24 00:04:23 	php-fpm 	343 	/rc.dyndns.update: Dynamic DNS: updatedns() starting
      May 24 00:04:22 	check_reload_status 	381 	Updating all dyndns
      May 24 00:04:22 	check_reload_status 	381 	Reloading filter
      May 24 00:04:21 	php-fpm 	342 	/system_gateways.php: Gateway, none 'available' for inet6, use the first one configured. ''
      May 24 00:04:21 	php-fpm 	342 	/system_gateways.php: Default gateway setting Interface WAN 2 Gateway as default.
      May 24 00:04:21 	php-fpm 	342 	/system_gateways.php: Gateway, switch to:WAN 2
      May 24 00:04:21 	php-fpm 	342 	<WAN 1 GW>|<WAN 1 IP>|WANGW|7.904ms|3.494ms|0.0%|down|force_down
      May 24 00:04:21 	php-fpm 	342 	/system_gateways.php: MONITOR: WAN 1 GW is down, omitting from routing group PreferFiber 
      
      ---------------- WAN 1 cable manually unplugged (not working!) --------------------------
      
      May 24 00:13:41 	php-fpm 	19319 	/rc.dyndns.update: Tenant ID not found
      May 24 00:12:26 	php-fpm 	19319 	/rc.dyndns.update: Dynamic DNS azure : _update() starting.
      May 24 00:12:26 	php-fpm 	19319 	/rc.dyndns.update: DynDns : Dynamic Dns: cacheIP != wan_ip. Updating. Cached IP: <WAN 1 IP> WAN IP: <WAN 2 IP>
      May 24 00:12:26 	php-fpm 	19319 	/rc.dyndns.update: Dynamic Dns : Current WAN IP: 1<WAN 2 IP> Cached IP: <WAN 1 IP>
      May 24 00:12:26 	php-fpm 	19319 	/rc.dyndns.update: Dynamic DNS azure : <WAN 2 IP> extracted from local system.
      May 24 00:12:26 	php-fpm 	19319 	/rc.dyndns.update: Dynamic DNS : running get_failover_interface for wan. found igb0
      May 24 00:12:26 	php-fpm 	19319 	/rc.dyndns.update: Dynamic DNS azure : <WAN 2 IP> extracted from local system.
      May 24 00:12:25 	php-fpm 	19319 	/rc.dyndns.update: Dynamic DNS: updatedns() starting
      May 24 00:12:24 	php-fpm 	19319 	/rc.dyndns.update: Tenant ID not found
      May 24 00:11:09 	php-fpm 	19319 	/rc.dyndns.update: Dynamic DNS azure : _update() starting.
      May 24 00:11:09 	php-fpm 	19319 	/rc.dyndns.update: DynDns : Dynamic Dns: cacheIP != wan_ip. Updating. Cached IP: <WAN 1 IP> WAN IP: <WAN 2 IP>
      May 24 00:11:09 	php-fpm 	19319 	/rc.dyndns.update: Dynamic Dns : Current WAN IP: <WAN 2 IP> Cached IP: <WAN 1 IP>
      May 24 00:11:09 	php-fpm 	19319 	/rc.dyndns.update: Dynamic DNS azure : <WAN 2 IP> extracted from local system.
      May 24 00:11:09 	php-fpm 	19319 	/rc.dyndns.update: Dynamic DNS : running get_failover_interface for wan. found igb0
      May 24 00:11:09 	php-fpm 	19319 	/rc.dyndns.update: Dynamic DNS azure : <WAN 2 IP> extracted from local system.
      May 24 00:11:09 	php-fpm 	19319 	/rc.dyndns.update: Dynamic DNS: updatedns() starting
      May 24 00:11:09 	php-fpm 	97379 	/rc.openvpn: Gateway, none 'available' for inet6, use the first one configured. ''
      May 24 00:11:09 	php-fpm 	343 	/rc.filter_configure_sync: Gateway, switch to: WAN 2
      May 24 00:11:09 	php-fpm 	19319 	/rc.dyndns.update: Gateway, switch to: WAN 2
      May 24 00:11:09 	php-fpm 	97379 	/rc.openvpn: Default gateway setting Interface WAN 2 Gateway as default.
      May 24 00:11:09 	php-fpm 	97379 	/rc.openvpn: Gateway, switch to: WAN 2
      May 24 00:11:09 	php-fpm 	97379 	<WAN 1 GW>|<WAN 1 IP>|WANGW|7.405ms|3.321ms|23%|down|highloss
      May 24 00:11:09 	php-fpm 	97379 	/rc.openvpn: MONITOR: WANGW has packet loss, omitting from routing group PreferFiber
      May 24 00:11:08 	check_reload_status 	381 	Reloading filter
      May 24 00:11:08 	check_reload_status 	381 	Restarting OpenVPN tunnels/interfaces
      May 24 00:11:08 	check_reload_status 	381 	Restarting ipsec tunnels
      May 24 00:11:08 	check_reload_status 	381 	updating dyndns WANGW
      May 24 10:11:08 	rc.gateway_alarm 	3046 	>>> Gateway alarm: WANGW (Addr:<WAN 1 GW> Alarm:1 RTT:7.385ms RTTsd:3.287ms Loss:21%)
      May 24 00:10:53 	check_reload_status 	381 	Reloading filter
      May 24 00:10:53 	php-fpm 	343 	/rc.linkup: Hotplug event detected for WAN 1 (wan) static IP (<WAN 1 IP> )
      May 24 10:10:52 	kernel 		igb0: link state changed to DOWN
      May 24 00:10:52 	check_reload_status 	381 	Linkup starting igb0 
      
      1 Reply Last reply Reply Quote 0
      • N
        npatel4
        last edited by

        I seem to have resolved this issue by reinstalling an older version of pfSense v2.4.5. With that in mind, I believe this to be a bug with v2.5.1.

        1 Reply Last reply Reply Quote 0
        • First post
          Last post
        Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.