本机ip和127.0.0.1的区别(转自博客园)

本机ip和127.0.0.1的区别

如何让局域网内访问我的本地网站

简介

连接上因特网的每一台计算机都会有一个IP地址, 在linux下可以使用命令ifconfig来查看本机的ip地址(windows为ipconfig), 比如我当前电脑的ip地址为192.168.0.30, 而127.0.0.1被称为本地环回地址(loopback), 本地环回地址主要用于网络软件测试以及本地机进程间通信,无论什么程序,一旦使用环回地址发送数据,协议软件立即返回,不进行任何网络传输, 127.0.0.1可以认为是计算机上的一个虚拟网卡的ip地址。

例子

假如我们有一个server/client的应用程序,client向server发送请求, server将数据返回给client, 客户端client和服务器server需要两个不同的ip地址。现在我们要在本地测试这个应用程序, 则我们可以将我们本地ip当做客户端的地址,而127.0.0.1当做服务器server的地址, 客户端向127.0.0.1发送请求, 然后从127.0.0.1得到返回数据。另一个例子是假如我们本地的电脑上有一个数据库,另外一台电脑想要连接我们电脑上的数据库, 这时指定数据库时所用的地址则为本地ip 。

总结

1、本地ip和127.0.0.1都是ip地址, 只是127.0.0.1比较特殊, 发送到127.0.0.1的数据或者从127.0.0.1返回的数据只会在本机进行传输, 而不进行外部网络传输;
2、127.0.0.1主要有以下两个作用

  • 测试本机网络
    当我们可以ping通127.0.0.1的时候, 则说明本机的网卡以及tcp/ip协议族被正确安装了。
  • 测试编写的网络应用
    像上he面的例子一样, 我们可以将本地ip和127.0.0.1分别看做客户端和服务器的ip地址, 然后在一台电脑上完成client/server应用的测试。

3、当涉及到计算机间的网络通信时, 则使用本机ip 。

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

1,什么是环回地址??与127.0.0.1的区别呢??

环回地址是主机用于向自身发送通信的一个特殊地址(也就是一个特殊的目的地址)。

可以这么说:同一台主机上的两项服务若使用环回地址而非分配的主机地址,就可以绕开TCP/IP协议栈的下层。(也就是说:不用再通过什么链路层,物理层,以太网传出去了,而是可以直接在自己的网络层,运输层进行处理了)

IPv4的环回地址为:127.0.0.0到127.255.255.255都是环回地址(只是有两个特殊的保留),此地址中的任何地址都不会出现在网络中

网络号为127的地址根本就不是一个网络地址(因为产生的IP数据报就不会到达外部网络接口中,是不离开主机的包)

当操作系统初始化本机的TCP/IP协议栈时,设置协议栈本身的IP地址为127.0.0.1(保留地址),并注入路由表。当IP层接收到目的地址为127.0.0.1(准确的说是:网络号为127的IP)的数据包时,不调用网卡驱动进行二次封装,而是立即转发到本机IP层进行处理,由于不涉及底层操作。因此,ping 127.0.0.1一般作为测试本机TCP/IP协议栈正常与否的判断之一。

所以说:127.0.0.1是保留地址之一,只是被经常的使用,来检验本机TCP/IP协议栈而已

如果我们可以ping通的话,就说明:本机的网卡和IP协议安装都没有问题。(跟我们当前主机有没有联网没有一点关系)

image

2,

localhost首先是一个域名(如同:www.baidu.com),也是本机地址,它可以被配置为任意的IP地址(也就是说,可以通过hosts这个文件进行更改的),不过通常情况下都指向:(如下)
IPv4:表示 127.0.0.1

IPv6:表示 [::1]

整个127.*网段通常被用作loopback网络接口的默认地址,按照惯例通常设置为127.0.0.1。我们当前这个主机上的这个地址,别人不能访问,即使访问,也是访问自己。因为每一台TCP/IP协议栈的设备基本上都有local/127.0.0.1

image

3,

本机IP,我们可以理解为本机有三块网卡,一块网卡叫做loopback(虚拟网卡),一块叫做ethernet(有线网卡),一块叫做wlan(你的无线网卡),

联网,网卡传输,受防火墙和网卡限制

用于本机和外部访问

你可能感兴趣的:(本机ip和127.0.0.1的区别(转自博客园))