Networking failing after node reboot

I am having an issue where networking appears to fail on a node when it gets restarted. After restart the kubedns pod on that node keeps restarting and the logs are full of messages like:
Waiting for [endpoint services] to be initialised from apiserver…

This eventually times out. A fault like this also appears with other pods scheduled on the node. The only thing I have found that works to fix it is to delete the node from Rancher, uninstalling all the Rancher stuff and adding it back in to the cluster. This makes me wonder if there is something being written to the container file system that should be being written to the host file system? I am using the Weave for networking if this makes any difference?