localhost和127.0.01 区别

笔者最近调试程序时遇到的一个问题,localhost不能访问但127.0.0.1可以访问。

一、原理

我估计大多数人都不会去想localhost到底与127.0.0.1有什么不同,就比如我,有时候用http://localhost/来访问本地服务器网页,有时则用http://127.0.0.1/来访问,我觉得他们是通用的表示本地服务器的两个不同的写法而已,就好比一个网页可以通过域名来访问也可以通过IP来访问一样,localhost代表的是域名,而127.0.0.1则代表IP地址。

  localhost 127.0.0.1 本机IP
网络 不联网 不联网 联网
传输 不使用网卡,不受防火墙和网卡限制 网卡传输,受防火墙和网卡限制 网卡传输,受防火墙和网卡限制
访问 本机访问 本机访问 本机或外部访问

PS:通过本机host文件,windows自动将localhost解析为127.0.0.1,可以修改

另外,我现在也应该明白了一个道理,那就是一般设置程序时本地服务用localhost是最好的,localhost不会解析成IP,也不会占用网卡、网络资源。

二、解决方法

解决方法1:

修改host文件用记事本打开C:/WINDOWS/system32/drivers/etc/hosts文件,看是否有127.0.0.1 localhost 。如果没有则将其添加进去,再查看能否访问localhost。

解决方法2:

1、打开Internert信息管理查看IIS是否启动,且默认网站时候已经开启; 
2、打开http://127.0.0.1/ 看是否能访问IIS的默认网页,能访问则说明IIS已经成功安装到电脑上,可能是无法解析localhost; 
3、开始--命令(cmd)--ping localhost,看是否能ping通,从127.0.0.1上返回信息,如果成功则说明可以解析localhost; 
4、如果上一步不成功,则用记事本打开C:/WINDOWS/system32/drivers/etc/hosts文件,看里面是否有包含:127.0.0.1 localhost ,如果没有则将其添加进去,再查看能否访问localhost。 
5、尝试将网站的主目录指向另一个目录或新建一个虚拟目录,并在该新目录创建一个新的网页文件,如index.html,然后将其加到默认网站的"文档"项中作为默认访问的网页,重新输入网址:http://localhost/,看否能访问。 
6、还是不行的话将IIS卸载掉,重新再安装一次。

127.0.0.1

127.0.0.1是回送地址,指本地机,一般用来测试使用。回送地址(127.x.x.x)是本机回送地址(Loopback Address),即主机IP堆栈内部的IP地址,主要用于网络软件测试以及本地机进程间通信,无论什么程序,一旦使用回送地址发送数据,协议软件立即返回,不进行任何网络传输。
IP地址由两部分组成,即网络地址和主机地址。网络地址表示其属于互联网的哪一个网络,主机地址表示其属于该网络中的哪一台主机。二者是主从关系。IP地址的四大类型标识的是网络中的某台主机。IPv4的地址长度为32位,共4个字节,但实际中我们用点分十进制记法。
IP地址根据网络号和主机号来分,分为A、B、C三类及特殊地址D、E。全0和全1的都保留不用。
A类:第一个字节为网络号,后三个字节为主机号。该类IP地址的最前面为“0”,所以地址的网络号取值于1~126之间。一般用于大型网络。
B类:前两个字节为网络号,后两个字节为主机号。该类IP地址的最前面为“10”,所以地址的网络号取值于128~191之间。一般用于中等规模网络。
C类:前三个字节为网络号,最后一个字节为主机号。该类IP地址的最前面为“110”,所以地址的网络号取值于192~223之间。一般用于小型网络。
中文名
回送地址
外文名
localhost
本地机
127.0.0.1
网络连接
网上邻居
用    途
网络测试以及本地机进程间通信

127.0.0.1特殊地址

D类:是多播地址。该类IP地址的最前面为“1110”,所以地址的网络号取值于224~239之间。一般用于多路广播用户 。
E类:是保留地址。该类IP地址的最前面为“1111”,所以地址的网络号取值于240~255之间。
回送地址:127.0.0.1。一般用于测试使用。例如:ping 127.0.0.1 来测试本机TCP/IP是否正常。
在有类IP地址的规定中,第一部分是1~126为A类地址,128~191为B类地址,那么中间留的127.0.0.1被称为本地回环地址,主要作用有两个:一是测试本机的网络配置,能PING通127.0.0.1说明本机的网卡和IP协议安装都没有问题;另一个作用是某些SERVER/CLIENT的应用程序在运行时需调用服务器上的资源,一般要指定SERVER的IP地址,但当该程序要在同一台机器上运行而没有别的SERVER时就可以把SERVER的资源装在本机,SERVER的IP地址设为127.0.0.1也同样可以运行。
对于大多数习惯用localhost的来说,实质上就是指向127.0.0.1这个本地IP地址。在操作系统中有个配置文件(windows中路径为C:\WINDOWS\system32\drivers\etc\hosts,Unix/Linux路径为/etc/hosts)将localhost与127.0.0.1绑定在了一起。
127.0.0.1对于网站建设者来说是常常用到的。
大家常用“ping 127.0.0.1”命令在本机上做回路测试,用来验证本机的TCP/IP协议簇是否被正确安装。但你发现了吗?使用“ping 127.1”这个命令也能得到同样的测试结果,其实“ping 127.1”和“ping 127.0.0.1”这两条命令是一样的,都是在进行回路测试。
为什么会这样呢?这就是Ping命令应用中IP地址的使用技巧。大家都知道,IP地址由32位二进制数字组成,为了方便大家记忆,将每8位二进制数字换算成十进制数字,因此就形成了容易记忆的由四部分十进制数字组成的IP地址(如127.0.0.1)。由于,Windows操作系统具有自动填充 “.0”的功能,因此我就可将“127.0.0.1”变为“127.1”。
但是,这个“.0”的省略是有条件限制的,并不能任意省略。在Ping命令的应用中,只能将在IP地址的最后一部分十进制数字前出现的一个或多个“.0”省略,如把“ping 127.0.0.1”命令改写成“ping 127.1”。

127.0.0.1其他信息

127.0.0.1注意事项

如果这一个或多个 “.0”没有紧挨着最后一部分的十进制数字,而是在其他位置,则这个“.0”不能省略,如“ping 202.0.96.1”就不能写成“ping 202.96.1”。这是因为“ping 202.96.1”返回的结果是“202.96.0.1”的应答信息,而不是“202.0.96.1”的应答信息。

127.0.0.1批处理应用

1在批处理中
相信大多数懂一点批处理的人都见过类似于“ping 127.1 -n 5 >nul”这样的命令。
其实批处理作者的目的肯定不是测试网络,而是为了让批处理运行延时。
这个命令的意思是让批处理运行到这里时延迟4秒在继续运行下面的命令(ping命令每隔一秒试探一次,第一次试探在执行时就试探过了,所以5次试探是延迟4秒),后面>nul 的意思是不在屏幕上显示数据,达到延迟运行又不对批处理造成丝毫影响的目的。产生的效果就是一个白色的闪动符号闪动等待。
2在网络链接中
同一IP段的数据传输使用地址:127.0.0.1 简单来说就是网上邻居使用此地址传输
127.0.0.1特别注意
收到127.0.0.1的响应表示主机的ip配置正确。此响应来自网络层。但是此响应并不代表地址、掩码、和网关配置正确。它也不能说明有关网络协议族下层的任何状态。此方法只是测试网络层的ip联通性。

TCP/IP网络断和127.0.0.1回网IP概念相关推荐

  1. 网络基础:数据链路层_公网i私网ip、路由通信、MTU以及ip分片

    在本章节开始前,先提出几个问题: 公网ip和私网ip的区别是什么,哪个能重复哪个不能? 如何实现两个设备之间的信息通信? 是通过公网ip查找还是私网ip查找? 路由表包含的信息有哪些? ARP协议的作 ...

  2. 怎样查询本机ip地址?如何利用花生壳获取外网IP教程

    听到ip地址这个概念,想必大家都不会陌生,如果我们想要跟对方进行通信,通常我们需要知道对方的ip地址,另外在网络通信中,还有一个非常重要的地址,那就是mac地址.那么我们如何知道本机ip地址呢?我们如 ...

  3. 99 网络编程_传统网络工程师如何利用python实现公司内网IP地址信息查询?

      网   工   圈 网络工程师阿龙圈内最早的公益公众号,本号已认证!学网络关注我一个就够了(关注近5w+)关注听说99%的网工都来这里充电吖关注我,一个老HCIE(编号3558)带你轻松玩网络技术 ...

  4. 路由、 网络、互联网、因特网、公网私网IP、NAT技术

    路由 在不同网段之间转发数据,需要有路由器的支持 默认情况下,路由器只知道跟他直连的网段,非直连的网段需要通过静态路由.动态路由告诉它. 静态路由 管理员手动添加路由信息(路由表) 适用于小规模网络 ...

  5. 大学校园IP网络广播-厂家基于校园局域网的大学校园IP广播方案设计指南

    大学校园IP网络广播-基于校园局域网的大学校园IP广播方案设计 北京海特伟业科技有限公司发布于2022年6月26日 一.大学校园IP网络广播系统建设背景 某大学位于长江中游具有"南国完壁&q ...

  6. windows 技术篇-判断某个ip地址相对于自己的主机是内网ip还是外网ip实例演示

    写着来自本地局域网,就是相对应你主机的内网 ip. 如果换成来自其它地址,指的就是外网 ip. 喜欢的点个赞❤吧!

  7. iP网络广播系统服务器搭建,IP网络智能公共广播系统V2.0

    1.采用图型化人机界面,用户可自定义分区显示图片,用户操作更简便. 2.具有分区输出监听与分区现场环境监听功能. 3.具有自定义分区.分组功能,可任意设定广播节目的优先等级,最多可设定八级不同优先等级 ...

  8. DotNet Core 2.0部署后外网IP访问

    将DotNet Core2.0项目部署在Ubuntu上并且运行后,可以用localhost:5000来访问. 但是如果这时候用外网来访问就不行了. 这时候就有两种解决方案,第一种是用Nginx做代理实 ...

  9. 详细谈电脑ip、域名、内网、外网、localhost、127.0.0.1、网关等通讯基础知识(易懂)

    1. ip地址与域名的定义以及其关系 ip地址的定义: IP地址(Internet Protocol Address)是指互联网协议地址,又译为网际协议地址. IP地址是IP协议提供的一种统一的地址格 ...

最新文章

  1. C++——auto、decltype、返回类型后置、模板别名:using =、nullptr
  2. XHTML基础问答-给初学者
  3. 建站初期关键字的定位
  4. Oracle编程入门经典 第7章 表
  5. object如何转换为int_如何使用Python将语音转换为文本
  6. 省钱攻略送上!戴尔官网OptiPlex商用台式机到手仅需2279元!速速抢购!
  7. web developer tips (1):创建、管理、应用样式表的强大工具
  8. abap al设置单元格可编辑 oo_利用WPS做业务系统的超级编辑器
  9. 【Linux】kali linux 安装 google chrome
  10. 菜鸟学Linux 第100篇笔记 tomcat 之 java
  11. 069 模块基础总结
  12. 浙江富商的24条至理经验
  13. 细丝菲涅尔衍射MATLAB,工程光学系列之六: 菲涅尔衍射  matlab仿真
  14. C#客户端嵌入Chrome浏览器的实现(非IE)
  15. 用计算机绘制三维设计图步骤,3d效果图一般制作步骤
  16. x265中的lookahead
  17. 批量修改ip成自定义网址
  18. 我看无损音频APE和FLAC
  19. MySQL学习教程(超全)
  20. 快速解决matlab出现错误使用mex,未找到支持的编译器或 SDK的提示

热门文章

  1. call线程起名字_Java线程的5个使用技巧
  2. 数据仓库工具箱:维度建模权威指南3
  3. 易语言复制C指针,易语言教程API模块制作cmd复制文件
  4. 基于matlab实现的人脸检测
  5. linux中使用u盘和光驱的命令_Linux文件操作高频使用命令
  6. linux单个core的线程,正确使用Core Data多线程的3种方式
  7. 单片机到底是不是嵌入式?
  8. mysql 安装 utf8mb4_mysql 安装和修改编码(utf8mb4)
  9. FPGA学习之路—应用程序—原码二位乘法器及Verilog代码分析
  10. php毕设周记_毕设周记