1、什么是hosts
1、什么是hosts
hosts —— the static table lookup for host name(主机名查询静态表)。android
hosts文件是一个用于储存计算机网络中各节点信息的计算机文件。这个文件负责将主机名映射到相应的IP地址。hosts文件一般用于补充或取代网络中DNS的功能。和DNS不一样的是,计算机的用户能够直接对hosts文件进行控制。
Hosts是一个没有扩展名的系统文件,其做用就是将一些经常使用的网址
域名与其对应的
IP地址创建一个关联“数据库”,当用户在浏览器中输入一个须要登陆的网址时,系统会首先自动从
Hosts文件中寻找对应的
IP地址,一旦找到,系统会当即打开对应网页,若是没有找到,则系统会再将网址提交DNS
域名解析服务器进行IP地址的解析。
优先级 : dns缓存 > hosts > dns服务
2、hosts的位置
- Windows 系统hosts位于 C:\Windows\System32\drivers\etc\hosts
- Android(安卓)系统hosts位于 /etc/hosts
- Mac(苹果电脑)系统hosts位于 /etc/hosts
- iPhone(iOS)系统hosts位于 /etc/hosts
- Linux系统hosts位于 /etc/hosts
- 绝大多数Unix系统都是在 /etc/hosts
3、hosts的内容
Windows版本的hosts文件内容以下:
#后都是注释,因此清空hosts文件对系统正常运行并无什么影响。
在一个局域网中,每台机器都有一个主机名,用于区分主机,便于相互访问。
通常/etc/hosts的内容通常有以下相似内容:
127.0.0.1 localhost.localdomain localhost
192.168.1.100 linumu100.com linumu100
192.168.1.120 ftpserver ftp120
通常状况下hosts文件的每行尾一个主机,每行由三部分组成,每一个部分由空格隔开。
第一部分:网络IP地址;
第二部分:主机名或域名;
第三部分:主机名别名;
固然每行也能够是两部分,即主机IP地址和主机名。
主机名(hostname)和域名(domain)的区别:
主机名一般在局域网内使用,经过hosts文件,主机名就被解析到对应IP;
域名一般在INTERNET上使用,但若是本机不想使用internet上的域名解析,这时就能够更改hosts文件,加入本身的域名解析。
4、hosts的做用
对于要常常访问的网站,咱们能够经过在Hosts中配置
域名和IP的映射关系,提升域名解析速度。因为有了映射关系,当咱们输入域名计算机就能很快解析出IP,而不用请求网络上的DNS服务器。
二、方便局域网用户
在不少单位的局域网中,会有服务器提供给用户使用。但因为局域网中通常不多架设DNS服务器,访问这些服务器时,要输入难记的IP地址。这对很多人来讲至关麻烦。能够分别给这些服务器取个容易记住的名字,而后在Hosts中创建IP映射,这样之后访问的时候,只要输入这个服务器的名字就好了。
有不少网站不通过用户赞成就将各类各样的
插件安装到你的计算机中,其中有些说不定就是木马或病毒。对于这些网站咱们能够利用Hosts把该网站的
域名映射到错误的IP或本地计算机的IP,这样就不用访问了。
四、顺利链接系统
对于Lotus的服务器和一些
数据库服务器,在访问时若是直接输入IP地址那是不能访问的,只能输入服务器名才能访问。那么咱们配置好Hosts文件,这样输入服务器名就能顺利链接了。
5.虚拟域名
不少时候,网站建设者须要把”软环境“搭建好,再进行上传调试。但相似于邮件服务,则须要使用域名来辅助调试,这时就能够将本地 IP 地址与一个”虚拟域名“作地址指向,就能够达到要求的效果,且无需花费。如:
127.0.0.1 网站域名
以后在浏览器地址栏中输入对应的网站域名便可。
5、如何修改hosts
一、屏蔽网站(域名重定向)
在WINDOWS系统中,约定 127.0.0.1 为本地计算机的IP地址, 0.0.0.0是错误的IP地址。
若是,咱们在hosts中,写入如下内容:
127.0.0.1 要屏蔽的网站A的域名
0.0.0.0 要屏蔽的网站B的域名
这样,计算机
解析域名A和 B时,就解析到本机IP或错误的IP,达到了屏蔽网站A 和B的目的。
在修改hosts文件时候,还经常遇到修改保存后无效的状况,这里要提醒你们注意的一点:不少人是写在最后行,写完最后一行后在没有回车的状况下,这一行是不生效的。必定要记得回车。建议你们遵循这样的习惯:“ip地址+Tab+
域名+换行” 添加记录。
二、局域网用户访问
若是,咱们在A主机的hosts中,写入如下内容:
B主机的ip B主机名
这样咱们就能够经过B主机名找到B主机及其服务。
三、android系统的hosts修改
在 Android 下,/etc 是 link 到 /system/etc 的,咱们须要修改 /system/etc/hosts 来实现。可是这个文件是只读,不能经过 shell 直接修改。能够经过链接到 PC 上使用 adb 来修改。步骤以下:
(2)设置/system为可读写:adb remount
(3)将
hosts文件复制到PC:adb pull /system/etc/hosts
(4)修改PC机上文件
(5)将PC机上文件复制到手机:adb push /system/etc/hosts
若是要查看是否修改为功,能够在PC上执行adb shell,运行cat /system/etc/hosts;或者在手机上运行cat /system/etc/hosts。
在Android系统中,hosts文件格式有一点与PC机Linux不一样:不能在一行中一个IP对应多个
域名,好比:
127.0.0.1 host1.example.com host2.example.com host3.example.com
在大多PC机Linux系统是合法的,但不能在Android上起做用,须要拆成每一个域名一行才能使用:
x.x.x.x host1.example.com
x.x.x.x host2.example.com
x.x.x.x host3.example.com
四、经过修改hosts上google
第一步:下载能够正常使用的hosts文件
能够在百度搜索相似“Google hosts”等相关关键词或者老D,找到最新可用的host文件。
第二步:修改本地hosts文件
在电脑系统中找到hosts,路径基本上是C:\Windows\System32\drivers\etc,而后将下载的hosts文件将本地hosts文件替换,或者在本地hosts文件中直接在地址栏修改便可!
第三步:刷新本地dns
第二步完成本地hosts文件的修改以后,可使用dos命令完成最后的操做。
(1)使用WIN+R键,启动运行,键入cmd
(2)在dos界面输入“ipcong /flushdns”
(3)dos命令窗提示“已成功刷新DNS解析缓存”,就完成了。
6、其余
一、怎么获取域名所对应的IP地址
打开“开始――运行”,输入“cmd”,在命令行界面输入“ping www.baidu.com”,回车。
显示结果相似:Reply from 220.181.6.18:bytes=32 time=24msTTL=55。
其中的220.181.6.18就是域名所对应IP地址(百度的)。呵呵!
二、修改hosts后生效方法
(1)Windows
开始 -> 运行 -> 输入cmd -> 在CMD窗口输入
ipconfig /flushdns
(2)Linux
打开终端
重启网络:
sudo /etc/init.d/networking restart
desktop版能够这样重启:
sudo service network-manager restart
若是只是修改了某个网卡(例如eth0)的信息,也能够经过重启网卡的方式使其修改生效。
sudo ifdown eth0 sudo ifup eth0
若是不懂请都尝试下
(3)Mac OS X终端输入
sudo killall -HUP mDNSResponder
(4)Android
开启飞行模式 -> 关闭飞行模式
(5)通用方法
拔网线(断网) -> 插网线(从新链接网络)
如不行请清空浏览器缓存(建议不要使用国产浏览器,请使用谷歌Chrome浏览器)