今天公司的几个客户,说软件无法访问了,同事在群里发图报错内容是:Unable to connect'to the remote server,然后抱着事不关己高高挂起的态度,冒了一句:无法连接到远程服务器,他们那边网络有问题。
然后到处问其他同事,得到的答案都是一样的,他们那边网络有问题;然后客户又一直在问,能QQ能远程能开网页,就是你们的软件不能用。
半天无果。。。
哥们实在看不下去,去问了下,然后防火墙关闭的,安全防护软件木有,DNS也改了,路由也没用任何配置,电脑、猫、路由也都重启了。
感觉没问题啊,只有拿一个域名到他们机器ping了一下,看能通不。嗯嗯,通的。。。正准备关了,多跳了几行后,才发现。。。尼玛啊,解析的IP不对啊。。这尼玛是DNS被劫持了?。。自己机器再ping了一次,让朋友的机器也ping了一次,是对的,看来多半是DNS被劫持了。百度查了这个IP,尼玛什么北京教育网。然后同事一脸焦急的望着我,问我咋办。。我尼玛。。。
咋办。。哥们不专业啊。。百度了下,就是下软件去恢复DNS,改DNS之类的。。。改了之后还会被劫持的啊。。
问了一个搞运维的哥们,去把Hosts文件改了就完事了,我一拍脑门,我草。。我居然忘了。。。然后立马让同事远程处理,立马见效了。。我草
然后为了考虑一群置业顾问去搞这个,会各种问,还是老老实实写了控制台应用程序直接去改吧。。
static void Main(string[] args)
{
string Url = @"C:\Windows\System32\drivers\etc\hosts";
string OldMessage = Read(Url);
OldMessage += "XXX.XX.XX.XXX XXX.XXX.XX";
Write(Url, OldMessage);
}
#region 文件读写
/// <summary>
/// 读取文件
/// </summary>
/// <param name="path"></param>
public static string Read(string path)
{
StreamReader sr = new StreamReader(path, System.Text.Encoding.Default);
StringBuilder sb = new StringBuilder();
string line;
while ((line = sr.ReadLine()) != null)
{
sb.Append(line.ToString() + Environment.NewLine);
}
sr.Close();
return sb.ToString();
}
/// <summary>
/// 写入文件
/// </summary>
/// <param name="path"></param>
/// <param name="Info"></param>
public static void Write(string path, string Info)
{
FileStream fs = new FileStream(path, FileMode.Create);
StreamWriter sw = new StreamWriter(fs);
//开始写入
sw.Write(Info);
//清空缓冲区
sw.Flush();
//关闭流
sw.Close();
fs.Close();
}
#endregion