Hello guys,

Is it possible to call a failure_route like a normal route?

i.e.:

{
  t_on_failure("myroute");
}
...

route("myroute");

failure_route[myroute] {
...
}

Let me explain:

I have this scenario where a DNS name may get deleted and a dns resolution will fail. There's no pinging to that gateway so i need to:

- skip that gateway when dispatching to the setid
- detect whether the domain is up and available

And failover to the next gateway.

I don't know of any other way so on the DISPATCH route, I'm doing:

route[DISPATCH] {
  # round robin dispatching on gateways group '1'
  if(!ds_select_dst("1", "4")) {
    send_reply("404", "No destination");
    exit;
  }
  xlog("L_DBG", "--- SCRIPT: going to <$ru> via <$du>\n");
    if(dns_query("$du", "xyz")) {
      t_on_failure("RTF_DISPATCH");
      route(RELAY);
    } else {
      route(RTF_DISPATCH);
    }
    exit;
}

to try to resolve and if it fails, it will just go to the failover route.


makes sense?


Regards,

David Villasmil
phone: +34669448337