在局域网中用Hosts文件或DNS都足以
Tagged Tags:

首先我们要理解在浏览器上浏览虚构主机,必须使用Hosts文件或域名种类(DNS)落成主机名到IP地址的解析。在局域网中用Hosts文件或DNS都可以,在Internet上只好用DNS了。 

1.当用户输入八个域名以百度为例(www.baidu.com)。

2.率先会到C:\Windows\System32\drivers\在局域网中用Hosts文件或DNS都足以。etc目录中用Hosts文件去询问有关的IP是或不是留存,假如存在就能够访问该IP地址。

3.不设有该域名深入分析,那么就能到公网DNS查找。

当你拜访域名出现卓殊,恐怕Hosts文件被修改了依然DNS被强制了。

在局域网中用Hosts文件或DNS都足以。缓和方案:

1.率先检查你的C:\Windows\在局域网中用Hosts文件或DNS都足以。System32\drivers\etc目录下的Hosts文件查看是不是留存域名威吓转向IP的景色,有的话把那个选项去掉。找不到文件设置隐藏文件可见。

图片 1

2.DNS被勒迫或篡改了。你能够手动修改本地计算机的DNS,默以为空如下图,你能够在首荐设置为:114.114.114.114,备用设置为:114.114.115.115;并查杀一下病毒。大概您的路由器被篡改了(设置的密码太弱),提议用修复工具修改。

图片 2

下面介绍了互联网健康域名访问出难题的原故,那么下边就带大家使用C#搞叁个Hosts修改工具(我们能够来研究,明白技巧,可是并非用来恶搞别人):

private static void updateHosts(string ip,string domain)
        {
            string path = @"C:\WINDOWS\system32\drivers\etc\hosts";
            //通常情况下这个文件是只读的,所以写入之前要取消只读
            File.SetAttributes(path, File.GetAttributes(path) & (~FileAttributes.ReadOnly));//取消只读
            //1.创建文件流
            FileStream fs =ip==""? new FileStream(path, FileMode.Create): new FileStream(path, FileMode.Append);
            //2.创建写入器
            StreamWriter sw = new StreamWriter(fs, Encoding.UTF8);
            //3.开始写入
            bool result = false;//标识是否写入成功
            try
            {
                StringBuilder sb = new StringBuilder();
                sb.Append(ip);//IP地址
                sb.Append("   ");
                sb.Append(domain);//网址
                sw.WriteLine(sb.ToString());
                result = true;
            }
            catch (Exception ex)
            {
                result = false;
            }
            finally
            {
                //4.关闭写入器
                if (sw != null)
                {
                    sw.Close();
                }
                //5.关闭文件流
                if (fs != null)
                {
                    fs.Close();
                }
            }
            if (result == true)
            {
                MessageBox.Show("成功!");
                File.SetAttributes(path, File.GetAttributes(path) | FileAttributes.ReadOnly);//设置只读
            }
            else
            {
                MessageBox.Show("失败!");
                return;
            }
        }

图片 3

在网址部分输入www.baidu.com,之后加多试试看,你仍可以访问百度呢?

举重若轻,之后您点清除,你又能够访问了!

源码地址:

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注