Em algum momento, as desconexões simplesmente acontecem, mas o cliente deve poder reconectar-se a cada vez. Eu acho que é um problema com o cliente NetExtender. Já tivemos problemas com isso no Linux, e a única solução é esperar que o Sonicwall emita um cliente atualizado!
Como a reinicialização manual funciona, talvez uma solução alternativa seja usar um serviço de monitoramento (como o Monit) para verificar a conexão? Por exemplo, Monit pode pingar algo do outro lado do túnel a cada minuto. Se não houver resposta, o Monit pode matar e reiniciar a conexão. link
Um exemplo de configuração monit seria
check host myserver with address 192.168.1.1
if failed icmp type echo count 2 with timeout 10 seconds then restart
start program = "/bin/bash /home/me/netextender-startup-script.sh"
stop program = "/bin/bash /home/me/netextender-stop-script.sh"
Você teria que definir a inicialização e parar os scripts baseados em sua distribuição Linux ...