howto: keep serving from cache after TTL if servers down ?

I'm running a voip application, asterisk, that dies if it can't
resolve the addresses for its SIP registrations. Importantly there are
other connections, PSTN, that work even if the internet connection is
down. Also, I want the app to stay alive so that it can reconnect to
the SIP servers once the internet comes back up. For whatever reason,
asterisk itself will not have a fix for this.

I have unbound working on the machine. I'd like to have unbound serve
an address from its cache even if it's beyond the ttl IF it can't
refresh the address. In other words, just serve the stale address
until it can be refreshed.

Any way to do this ?

sean

Hi Sean,

I'm running a voip application, asterisk, that dies if it can't
resolve the addresses for its SIP registrations. Importantly there are
other connections, PSTN, that work even if the internet connection is
down. Also, I want the app to stay alive so that it can reconnect to
the SIP servers once the internet comes back up. For whatever reason,
asterisk itself will not have a fix for this.

I have unbound working on the machine. I'd like to have unbound serve
an address from its cache even if it's beyond the ttl IF it can't
refresh the address. In other words, just serve the stale address
until it can be refreshed.

Any way to do this ?

serve-expired: yes in unbound.conf serves stale data.

It is good to also enable prefetch: yes. Then unbound tries to refresh
data that is about to expire, whilst serving the existing data.

You can fine-tune it with the serve-expired-ttl and
serve-expired-ttl-reset options if you want. But you can just leave
those at the defaults.

Best regards, Wouter

Thanks for the prompt reply. Exactly what I needed.

Thanks,
sean