[robg adds: While solving the problem would be a better solution, this is a functional workaround. You could reduce the system impact a bit by using something like ping -c 2 192.168.1.1, where 192.168.1.1 is the router address. The -c 2 bit tells ping to stop after two responses. Then use cron (or Cronnix, a GUI front-end for cron) to run that command every few minutes -- just often enough to keep the connection alive.]

