fixed up timeout, added socket based ping (needs root)