localhost,127.0.0.1 和 本机IP 三者的区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了localhost,127.0.0.1 和 本机IP 三者的区别相关的知识,希望对你有一定的参考价值。

参考技术A

localhost、127.0.0.1和本机IP的区别如下:

1、首先 localhost 是一个域名,在过去它指向 127.0.0.1 这个IP地址。在操作系统支持 ipv6 后,它同时还指向ipv6 的地址 [::1] 。

在 Windows 中,这个域名是预定义的,从 hosts 文件中可以看出:

而在 Linux 中,其定义位于 /etc/hosts 中:

注意这个值是可修改的,比如把它改成192.068.206.1,还是可以ping通。

2、127.0.0.1 这个地址通常分配给 loopback 接口。loopback 是一个特殊的网络接口(可理解成虚拟网卡),用于本机中各个应用之间的网络交互。只要操作系统的网络组件是正常的,loopback 就能工作。Windows 中看不到这个接口,Linux中这个接口叫lo:

可以看出 lo 接口的地址是 127.0.0.1。事实上整个 127.* 网段都算能够使用,比如你 ping 127.0.0.2 也是通的。 但是使用127.0.0.1作为loopback接口的默认地址只是一个惯例。

3、本机IP,确切地说,“本机地址”并不是一个规范的名词。通常情况下,指的是“本机物理网卡所绑定的网络协议地址”。由于目前常用网络协议只剩下了IPV4,IPX/Apple Tak消失了,IPV6还没普及,所以通常仅指IP地址甚至ipv4地址。

扩展资料

1、整个127.* 网段通常被用作 loopback 网络接口的默认地址,按惯例通常设置为 127.0.0.1。这个地址在其他计算机上不能访问,就算你想访问,访问的也是自己,因为每台带有TCP/IP协议栈的设备基本上都有 localhost/127.0.0.1。 

2、本机地址通常指的是绑定在物理或虚拟网络接口上的IP地址,可供其他设备访问到。 

3、最后从开发度来看,localhost是个域名,性质跟 “www.baidu.com” 差不多。不能直接绑定套接字,必须先gethostbyname转成IP才能绑定。 

4、127.0.0.1 是绑定在 loopback 接口上的地址,如果服务端套接字绑定在它上面,你的客户端程序就只能在本机访问。

参考资料:

127.0.0.1-百度百科

localhost-百度百科

localhost与127.0.0.1的区别

1. localhost是本地服务器,127.0.0.1是本机服务器,他们的解析是通过本机的host文件,windows自动将localhost解析为127.0.0.1;

2. localhost是不经过网卡传输,它不受网络防火墙和网卡相关的设置,而127.0.0.1或本机IP是通过网卡传输的,它受到网络防火墙和网卡相关的限制;

3. 127.0.0.1只能通过本机访问,而本机IP可以通过本机访问,也可以外部访问;

4. 一般设置程序时,本地服务用localhost是最好的,localhost不会解析为ip,也不会占用网卡和网络资源。

以上是关于localhost,127.0.0.1 和 本机IP 三者的区别的主要内容,如果未能解决你的问题,请参考以下文章

localhost与127.0.0.1的区别

localhost与127.0.0.1 本机IP

localhost127.0.0.1本机ip0.0.0.0 的区别

localhost127.0.0.1本机IP虚拟主机kotlin

localhost和127.0.0.1的区别

为啥localhost和127.0.0.1能访问tomcat,本机ip就不能访问