当前位置: 首页 > 编程日记 > 正文

再谈HOST文件

前几天弄了一个关于禁止打开某个网站的文章后,觉得这个HOST文件真的挺有意思的。并且也总是想把自己对它新的理解写下来(也许大家都明白了)
以下是HOST文件的内容:
# Copyright (c) 1993-1999 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
#      102.54.94.97     rhino.acme.com          # source server
#       38.25.63.10     x.acme.com              # x client host
我在这个文件里加了几个 IP ----域名
的地址对以后,就会发现,不管你后面的域名写的是什么,只要你写的IP 地址确实存在,那么你敲入这个域名以后就会出现那个IP地址对应的网站的内容。
也就是说,只要在HOST文件里有的关于某些域名的解释,就不会把我们在IE地址栏里写入的域名去送到DNS服务器解析。
所以,在这里我们可以禁止一些网站地址。但是,利用这个文件,也有可能让我们中毒吧,呵呵、、、我是自己这么猜想的。就是编写了一个可以改变机器HOST文件文件的病毒,然后在这个文件里,添加一些我们平时用的很多的网站的名字和一个病毒网站的IP地址。
那样我们上去的时候,觉得自己应该可以去什么什么地方。但是我们却去了一个有毒的网站。
呵呵,是不是 太天真了?~~~

我又想了想,反正我们要禁止的那个网站对应的IP地址都是0.0.0.0的嘛,那我们都把他们放在一行中不就可以了吗?
我自己一实验过了,这个是可以的。就是可以把一些想禁止的网站放在一起,然后的IP地址一写一个:0.0.0.0就可以了。
当你在命令提示符的窗口中进行PING这些网站的时候,你们会发现,他们后面对应的IP地址都是0.0.0.0,这样的结果也就是说了,我们文件的设置结果已经生效了~~
再者的话,你要是在这个文件中同时设置俩个条目,并且他们的IP地址是不一样的,但是域名却是一样的。那么就会按第一个出现的那个为标准。
比如:
202.108.9.33    [url]www.163.com[/url]
0.0.0.0         [url]www.163.com[/url]
那这样的话,我们还是可以访问[url]www.163.com[/url]这个网站的。但是后者在前的话,就不可以进行访问了。
我们知道,我们进行通信的时候实际用到的东西实际是:IP地址。
那么我们把我们随便编写的一个域名地址和一个正确的IP地址对写进这个文件,是不是也可以访问到这个正确的IP地址实际对应的哪个网站呢?
我也实验过,结果是不可以的。会出现以下的情况 (我写进去的条目是:202.108.9.33 [url]www.1631.com[/url])
-------------------错误------------------------
你所请求的URL无法获取,当尝试读以下地址时[url]www.baidu.com[/url].
发生了下列错误:
ACCESS DENIED
当前的存取控制设定禁止你的请求接受,如果你觉得这是错误的,请与你的ISP联系.
GENERATED FI, 18,JAN,2008,,4:56:37 GMT,BY [url]WWW.163.COM[/url](CACHE /2.0)
--------------------------------------------------------------------------------------------------------
那要是这样的话,我们在进行访问一个网站的时候,这个域名的查询工作还是得送到DNS服务器进行查询的吗?要是根本就没有注册过的一个域名,那么就会出现这样的情况。
那我们就把这个加进去的新的条目中的域名换成一个我们很熟悉的一个地址,不就可以了吗?202.108.9.33   [url]www.baidu.com[/url]   看看效果:
还是不行~~
-------------------错误------------------------
你所请求的URL无法获取,当尝试读以下地址时[url]www.baidu.com[/url].
发生了下列错误:
ACCESS DENIED
当前的存取控制设定禁止你的请求接受,如果你觉得这是错误的,请与你的ISP联系.
GENERATED FI, 18,JAN,2008,,4:56:37 GMT,BY [url]WWW.163.COM[/url](CACHE /2.0)
--------------------------------------------------------------------------------------------------------
但是,当我们把[url]www.baidu.com[/url]的IP地址和[url]WWW.163.COM[/url]的名字对应条目加进去的时候,就可以通过访问[url]WWW.163.COM[/url]达到[url]WWW.BAIDU.COM[/url]的页面.
所以,这个实现的成功与否,与对方的WEB服务器的设置有关系.因为一个可以实现,而一个却不可以实现啊.并且上述的错误都是[url]www.163.com[/url]生成的.所以就应该是服务器的设置问题了.
当我把163的IP和一个我自己写的域名对应条目加进去的时候(上面的那个),显示的错误信息是那样的:拒绝访问.
那我就换一个带163.com的吧,我就写了一个[url]www.blog.163.com[/url]
结果显示的是这样的错误信息:
---------------------------错误-------------------------------
当你尝试连接以下地址:[url]www.blog.163.com[/url]的时候,发生了以下错误:
无法将你输入的主机名称:[url]www.blog.163.com[/url]转换成IP地址.
DNS服务器返回以下信息:
NAME ERRO:THE DOMIAN NAME DO NOT EXIT
这就表示,
缓存服务器无法解析你输入的URL中的主机名称,请检查名称是否正确.
GENERATED BY NTESWEB.163.COM(SQUID/2.5.STABLE 10)
-----------------------------------------------------------------
从这个返回的错误信息,又了解到一点:你的HOST文件里有域名和IP的对应条目,但是这个请求还是要发送到DNS服务器的.
但是为什么用163的网址对应百度的IP 的时候,就不会出现这样的错误呢?
问题的关键,还是在公司里的WEB服务器的设置上面,是吗?
如果是的话,希望高手可以再讲的清晰一些~
还需要再进一步的学习啊~~
希望高手可以指点下迷津~~


本文转自Mr2Left 51CTO博客,原文链接:http://blog.51cto.com/caihong/59809

相关文章:

PMP®考试是什么机构

项目管理对于很多职场中的人来说是以后要发展的一个方向,随着各职业内卷也越来越严重,pmp认证引起了大家的关注,有朋友问:PMP考试是什么机构?下面我们给大家介绍一下。 PMP考试是什么机构?PMP考试认证在我国大陆地区需要三方机构…

技术图文:03 结构型设计模式(上)

结构型设计模式(上) 本教程主要介绍一系列用于如何将现有类或对象组合在一起形成更加强大结构的经验总结。 知识结构: 享元模式 – 实现对象的复用 Sunny 软件公司欲开发一个围棋软件,其界面效果如下图所示: 图2 围…

Linux抓包工具tcpdump详解

原文链接 tcpdump是一个用于截取网络分组,并输出分组内容的工具,简单说就是数据包抓包工具。tcpdump凭借强大的功能和灵活的截取策略,使其成为Linux系统下用于网络分析和问题排查的首选工具。 tcpdump提供了源代码,公开了接口&…

学习笔记TF065:TensorFlowOnSpark

2019独角兽企业重金招聘Python工程师标准>>> Hadoop生态大数据系统分为Yam、 HDFS、MapReduce计算框架。TensorFlow分布式相当于MapReduce计算框架,Kubernetes相当于Yam调度系统。TensorFlowOnSpark,利用远程直接内存访问(Remote Direct Memo…

HTML5培训好不好

HTML5培训好不好?这个问题,要看你选择的培训机构,想要学习HTML5技术,靠谱的培训机构非常重要,下面我们就来看看详细的介绍吧。 HTML5培训好不好?从前端开发的基础出发,学习使用HTML,CSS,JavaS…

技术图文:03 结构型设计模式(下)

结构型设计模式(下) 本教程主要介绍一系列用于如何将现有类或对象组合在一起形成更加强大结构的经验总结。 知识结构: 组合模式 – 树形结构的处理 Sunny 软件公司欲开发一个杀毒(AntiVirus)软件,该软件…

程序员必知8大排序3大查找(三)

前两篇 《程序员必知8大排序3大查找(一)》 《程序员必知8大排序3大查找(二)》 三种查找算法:顺序查找,二分法查找(折半查找),分块查找,散列表(以后谈&#xf…

MongoDB给数据库创建用户

转自http://www.imooc.com/article/18439 一.先以非授权的模式启动MongoDB非授权: linux/Mac : mongod -f /mongodb/etc/mongo.confwindows : mongod --config c:\mongodb\etc\mongo.conf 或者 net start mongodb (前提是mongo安装到了服务里面&#xff…

如何挑选一家好的软件测试培训机构

随着智能时代的发展,我们的手机APP等各种软件都变得越来越复杂化、规模化,软件测试这一步骤是必不可少的,这也造就了这个行业的兴起,越来越多的人想要学习软件测试技术,想要知道如何挑选一家好的软件测试培训机构?来看…

POJ 3177 判决素数个数

时间限制: 1000ms内存限制:65536kB描述输入两个整数X和Y,输出两者之间的素数个数(包括X和Y)。输入两个整数X和Y,X和Y的大小任意。输出输出一个整数,结果可以是0,或大于0的整数。样例输入1 100样例输出25&am…

数据结构与算法:22 精选练习50

精选练习50 马上就要期末考试或者考研了。为了大家复习的方便,我精选了有关数据结构与算法的50道选择题,大家可以抽空练习一下。公众号后台回复“答案”可以获取该50道题目的答案。 01、数据在计算机中的表示称为数据的______。 (A&#x…

极速理解设计模式系列:11.单例模式(Singleton Pattern)

单例模式:确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。 三要点: 一、单例类只能有一个实例 二、单例类必须自行创建自身实例 三、单例类自行向整个系统提供实例 类图: 应用场景&#xf…

参加web前端培训要学哪些知识

IT行业,web前端技术是比较吃香的,也是工资待遇非常高的行业之一,如果想要做一名合格的web前端工程师,系统学习是非常重要的,那么参加web前端培训要学哪些知识呢?来看看下面的详细介绍。 参加web前端培训要学哪些知识?…

数据结构与算法:19 排序

19 排序 知识结构: 1. 排序的基本概念与术语 假设含有nnn个记录的序列为{r1,r2,⋯,rn}\lbrace r_1,r_2,\cdots,r_n \rbrace{r1​,r2​,⋯,rn​},其相应的关键字分别为{k1,k2,⋯,kn}\lbrace k_1,k_2,\cdots,k_n \rbrace{k1​,k2​,⋯,kn​},…

Objective-C 什么是类

Objective-C 什么是类 转自http://www.189works.com/article-31219-1.html 之前一直做C开发,最近2个多月转 Objective-C, 入门的时候,遇到了很多的困惑。现在过节,正是解决他们的好时机。 主要参考来自http://www.sealiesoftware.…

APP之红点提醒三个阶段

下面这个页面就是我们进入APP后的主界面。客户选项的红点上数字就是显示我们没有查看的客户总数量。 当我们切换到客户这个fragment时,会显示贷款客户数量与保险客户数量。 当我们随便点击入一个选项,假如进入到保险客户的这个activity里面,L…

零基础参加java培训的系统学习路线

​ 零基础想要学习java技术,那么最好的选择就是参加java培训,进行系统的学习,以下就是小编为大家整理的零基础参加java培训的系统学习路线,希望能够帮助到正在学习java技术的零基础同学。 零基础参加java培训的系统学习路线&#…

在ASP.NET中跟踪和恢复大文件下载

在Web应用程序中处理大文件下载的问题一直出了名的困难,因此对于大多数站点来说,如果用户的下载被中断了,它们只能说悲哀降临到用户的身上了。但是我们现在不必这样了,因为你可以使自己的ASP.NET应用程序有能力支持可恢复&#xf…

ZeroMQ实例-使用ZeroMQ进行windows与linux之间的通信

1、本文包括 1)在windows下使用ZMQ 2)在windows环境下与Linux环境下进行网络通信 2、在Linux下使用ZMQ 之前写过一篇如何在Linux环境下使用ZMQ的文章 《ZeroMQ实例-使用ZMQ(ZeroMQ)进行局域网内网络通信》,这里就不再赘述。 3、在Windows环境…

线性代数:03 向量空间 -- 基本概念

本讲义是自己上课所用幻灯片,里面没有详细的推导过程(笔者板书推导)只以大纲的方式来展示课上的内容,以方便大家下来复习。 本章主要介绍向量空间的知识,与前两章一样本章也可以通过研究解线性方程组的解把所有知识点…

如何获得PMP认证证书

​ pmp证书是一项由美国项目管理协会发起的项目管理专业人士认证证书,它属于国际认证类证书,含金量是非常高的,那么如何获得PMP认证证书呢?来看看下面的详细介绍。 如何获得PMP证书? PMP证书的获取是需要参加PMP考试的。我国自1999年引进PM…

UITextField的详细使用

UItextField通常用于外部数据输入,以实现人机交互。下面以一个简单的登陆界面来讲解UItextField的详细使用。//用来显示“用户名”的labelUILabel* label1 [[UILabelalloc] initWithFrame:CGRectMake(15, 65, 70, 30)];label1.backgroundCol…

06-hibernate注解-一对多单向外键关联

一对多单向外键 1,一方持有多方的集合,一个班级有多个学生(一对多)。 2,OneToMany(cascade{CascadeType.ALL}, fetchFetchType.LAZY )  //级联关系,抓取策略:懒加载。 JoinColumn(name"c…

线性代数:03 向量空间 -- 矩阵的零空间,列空间,线性方程组解的结构

本讲义是自己上课所用幻灯片,里面没有详细的推导过程(笔者板书推导)只以大纲的方式来展示课上的内容,以方便大家下来复习。 本章主要介绍向量空间的知识,与前两章一样本章也可以通过研究解线性方程组的解把所有知识点…

学Python培训有什么用

​ Python在近几年的发展非常迅速,在互联网行业Python的薪资也越来越高,不少人开始准备学习Python技术,那么到底学Python培训有什么用呢?来看看下面的详细介绍。 学Python培训有什么用? 学习python可以提高工作效率,使用python&…

SQL压力测试用的语句和相关计数器

将数据库中所有表的所有的内容选一遍: IF object_id(tempdb..#temp) is not null BEGIN DROP TABLE #temp END DECLARE index int DECLARE count int DECLARE schemaname varchar(50) DECLARE tablename varchar(50) set index1 set count(select count(*) from s…

线性代数:04 特征值与特征向量 -- 特征值与特征向量

本讲义是自己上课所用幻灯片,里面没有详细的推导过程(笔者板书推导)只以大纲的方式来展示课上的内容,以方便大家下来复习。 本章主要介绍特征值与特征向量的知识,前一章我们介绍了线性变换可以把一个向量映射到另一个…

使用Silverlight2的WebClient下载远程图片

在Silverlight 2之前有一个Downloader对象,开发者一般使用Downloader下载图片和文体文件,这个对象在Silverlight 2中作为了一个特性被集成到WebClient类之中,你可以直接使用WebClient的OpenReadAsync方法加载远程图片的URI,然后使…

学习Web前端需要避免哪些错误

很多初学web前端的同学,在学习web前端的时候都会遇到一些错误,虽然有些错误与某一个具体的行为相关,但有些错误却是所有Web开发人员都需要面对的挑战。下面小编就整理一下学习Web前端需要避免哪些错误,希望能够给同学们带来帮助。…

【2012百度之星/资格赛】H:用户请求中的品牌 [后缀数组]

时间限制:1000ms内存限制:65536kB描述馅饼同学是一个在百度工作,做用户请求(query)分析的同学,他在用户请求中经常会遇到一些很奇葩的词汇。在比方说“johnsonjohnson”、“duckduck”,这些词汇虽然看起来是一些词汇的…