its very weird because we have the extact same issue!
we have an asterisk server running behind the zeroshell and the zeroshell acts as a fallover
when primary internet goes down, the asterisk trunk drops but doesnt reregister with the second internet because the zeroshell firewall connection tracking is showing its still trying to go out the internet thats off
we have to physically goto the zeroshell and click FLUSH and then it comes back up…
any ideas how to fix this?