localhost,127.0.0.1,本機IP,三者的區別是什麼?

彭國放


相信不少電腦用戶都曾遇到過使用 localhost 或 127.0.0.1 或直接輸入本機IP的場景,看上去這三者都可以訪問到本機,那為什麼會存在這三種形式呢?它們之間又有啥區別呢?看似簡單,其實區別還是較大的。

本機IP

我們電腦主板上都內置了多種網卡,一般主要有以下幾類:

  • 虛擬網卡(loopback)
    注意,它是虛擬的,並不是物理網卡,也被稱為是本地環回地址(或接口),一般將127.0.0.1作為本地環回地址。

  • 有線網卡/以太網卡(Ethernet)
    這是以太網(局域網)使用的,我們日常說的網卡指的就是這個,插入的就是網線。

  • 無線網卡(WLAN)
    這是無線局域網所使用的網卡,筆記本上常內置此網卡,它用的是無線電技術,不需要像以太網卡那樣插網線。

以上這些網卡都會綁定一個本機IP。

localhost 是一種特殊的域名

localhost 它並不是IP,而是一種特殊的域名(沒有後綴),默認的情況下它解析到的是本地IP(127.0.0.1),主要通過本機的host文件進行管理,如果你願意,也可以把localhost域名解析到某個公網IP上去。

127.0.0.1是一種本機保留的私有IP

127.0.0.1它是一個私有IP,代表的就是你的本機環回地址,其實本質上是綁定在虛擬網卡(loopback)上的IP。

localhost 、127.0.0.1、本機IP的區別

1、localhost和127.0.0.1並不需要聯網訪問,即使在無網絡環境下訪問這兩者都能找到本機;

2、localhost是域名,默認是指向127.0.0.1的;

3、本機IP中的有線網IP和無線網IP都是需要聯網後才能正常分配和訪問的,它們是本機對外開放的IP地址。


以上就是我的觀點,對於這個問題大家是怎麼看待的呢?歡迎在下方評論區交流 ~ 我是科技領域創作者,十年互聯網從業經驗,歡迎關注我瞭解更多科技知識!

網絡圈


localhost、127.0.0.1 和 本機IP之間的區別:

1、localhost等於127.0.0.1,不過localhost是域名,127.0.0.1是IP地址。

2、localhost和127.0.0.1不需要聯網,都是本機訪問。

2、本機IP需要聯網,本機IP是本機或外部訪問, 本機 IP 就是本機對外放開訪問的IP地址,這個網址就是與物理網卡綁定的IP地址。

擴展資料:

當操作系統初始化本機的TCP/IP協議棧時,設置協議棧本身的IP地址為127.0.0.1(保留地址),並注入路由表。

當IP層接收到目的地址為127.0.0.1(準確的說是:網絡號為127的IP)的數據包時,不調用網卡驅動進行二次封裝,而是立即轉發到本機IP層進行處理,由於不涉及底層操作。

因此ping 127.0.0.1一般作為測試本機TCP/IP協議棧正常與否的判斷之一。

本機IP,我們可以理解為本機有三塊網卡,一塊網卡叫做loopback(虛擬網卡),一塊叫做ethernet(有線網卡),一塊叫做wlan(你的無線網卡)。


專注財富積累30年


1、localhost首先是一個域名(如同:www.baidu.com),也是本機地址,它可以被配置為任意的IP地址(也就是說,可以通過hosts這個文件進行更改的),不過通常情況下都指向:(如下)IPv4:表示 127.0.0.1

IPv6:表示 [::1]

在 Windows 中,這個域名是預定義的,從 hosts 文件中可以看出。而在 Linux 中,其定義位於 /etc/hosts 中。

2、127.0.0.1 這個地址通常分配給 loopback 接口。loopback 是一個特殊的網絡接口(可理解成虛擬網卡),用於本機中各個應用之間的網絡交互。只要操作系統的網絡組件是正常的,loopback 就能工作。Windows 中看不到這個接口,Linux中這個接口叫lo。

3、本機IP,確切地說,“本機地址”並不是一個規範的名詞。通常情況下,指的是“本機物理網卡所綁定的網絡協議地址”。由於目前常用網絡協議只剩下了IPV4,IPX/Apple Tak消失了,IPV6還沒普及,所以通常僅指IP地址甚至ipv4地址。


異鄉流放的人


127.0.0.1是保留地址之一,只是被經常的使用,來驗證本機的TCP/IP協議堆。

127.0.0.1是1個環回地址。IPV4的環回地址為127.0.0.1-127.255.255.255都是環回地址,此地址中的任何地址都不會出現在網絡中。

如果我們可以ping通的話,就說明:本機的網卡和IP協議安裝都沒有問題(跟我們這臺主機有沒有連接外網一點關係也沒有)。

127.0.0.1這個地址通常分配給loopback接口。looplack是一個特殊的網絡接口(可理解成虛擬網卡),用於本機中各個應用之間的網絡交互。

環回地址,是主機用於向自身發送通信的一個特殊地址。可以這麼理解:同1臺主機上的兩項服務若使用環回地址而非分配的主機地址,就可以繞開TCP/IP協議棧的下層。也就是說,不用再通過什麼鏈路層、物理層、以太網傳出去,而是直接在自己的網絡層、運輸層進行處理。IPV4的環回地址為:127.0.0.0到127.255.255.255,網絡號為127的地址根本就不是一個網絡地址(因為產生的IP數據報就不會到達外部網絡接口中是不離開主機的包)

localhost首先是1個域名(如 ),也是本機地址,它可以被配置為任意的IP地址(也就是說可以通過hosts這個文件進行更改),不過通常情況都指向:

IPV4 localhost默認指向 127.0.0.1

IPV6 localhost默認指向 ::1

我們當前這個主機上localhost指向的地址,別人不能訪問,即便訪問,也是訪問他自己,因為每1臺TCP/IP協議棧的設備上即便都有localhost 127.0.0.1

本機IP,確切的說“本機地址”並不是一個規範的名詞。通常情況下是指“本機物理網卡所綁定的網絡協議地址”。由於目前常用網絡協議只剩下了IPV4、IPX/Apple Tak消失了,IPV6還沒有完全普及,所以通常僅指IP地址甚至是IPV4地址。


匯聚魔杖


1、localhost,在計算機網絡中作為迴路網絡接口(loopback)的一個標準主機名,是一個特殊的保留DNS主機名。對應解析到 127.0.0.1 或[::1],所以訪問 localhost 可以訪問到 127.0.0.1。

2、127.0.0.1 是本地主機回送地址,即本地主機IP堆棧內部的IP地址,主要是用於網絡測試以及本機內部進程之間通信。

3、本機IP,主機需要跟網卡綁定,路由分配的一個可供外部訪問的IP地址。

如果是外部訪問是,只能從本機IP 提供給外部訪問,而不能通過 localhost 或 127.0.0.1去訪問。只有當流量經過本機IP進入後,才可以通過 localhost 或 127.0.0.1 去跟其它內部進程通信。


運維技術圈


localhost就是個本機域名,跟 , 等域名沒有本質區別,只是這個域名通常指向的是127.0.0.1,你可以通過hosts文件把它解析到


127.0.0.1就是你家走廊,你可以通過這個走廊走到你家所有的房間。

本機IP就是你家門牌號,別人要到你家得先曉得你家在哪。


網事記


這三個當中有兩個是IP地址的數字形式,一個是127.0.0.1一個是本地網卡動態獲取的或者手工指定的IP地址!比如192.168.1.100!就這兩個來說,表現出來的形式都不同,數字也不同!

在局域網中共享打印機或文件,本地網卡所擁有的地址對於別的電腦來說就是唯一的一個訪問的IP地址!這個本機IP地址屬於整個局域網甚至還能通過路由器NAT上網!同樣對於本機來說使用這個IP也是可以訪問本地的!

而127.0.0.1是個環回地址!聽名字就知道是一個繞圈圈的高手!他就是代表本機,並且只代表本機!並且只能在本機訪問才是本地,如果你換了一臺電腦用127.0.0.1訪問那麼就是訪問新換的電腦,而不是原來的電腦!有著在本機安裝的數據庫服務器用的就是代表本機的127.0.0.1!

localhost這是一個用字母表示的域名,從字面來說就是本地主機的意思,實際上在默認情況下從本機訪問他也是來到了本機!這個和127.0.0.1一樣也是代表本地,並且只代表本地!不同的是,訪問域名需要解析記錄!就是域名和數字IP地址的對應關係!並且這個對應的關係可能會被修改導致無法訪問本機!而控制對應關係的記錄就在本機的Windows/system32/drivers/etc下,hosts是一個沒有擴展名的文件可以用記事本等打開!裡面默認就是localhost對127.0.0.1!可以修改!



風來了156


三個都可以訪問本機,但三個的差別還是挺大的。1、localhost實際上是個域名,寫死在本機的域名記錄裡,裡面對應的ip寫著127.0.0.1。如果沒有這條記錄,localhost也是訪問不了本機的。它只能用來本機訪問本機。2、127.0.0.1是一個保留ip地址,代表著本機。它只能用來本機訪問本機,無法訪問其他機器。3、本機ip通常指本機配置的網絡ip地址,用來訪問網絡的地址,一般上網時用的都是本機ip。


英雄庫


localhost、127.0.0.1 和 本機IP之間的區別:

1、localhost等於127.0.0.1,不過localhost是域名,127.0.0.1是IP地址。

2、localhost和127.0.0.1不需要聯網,都是本機訪問。

2、本機IP需要聯網,本機IP是本機或外部訪問, 本機 IP 就是本機對外放開訪問的IP地址,這個網址就是與物理網卡綁定的IP地址。


我只在網吧裡學習


介紹下localhost,127.0.0.1,本機IP ,三者的區別?

1、localhost:

首先 localhost 是一個域名,在過去它指向 127.0.0.1 這個IP地址。在操作系統支持 ipv6 後,它同時還指向ipv6 的地址,在 Windows 中,這個域名是預定義的,從 hosts 文件中可以看出

而在 Linux 中,其定義位於 /etc/hosts 中:127.0.0.1 localhost

這個值它是可以修改的,比如把它改成:192.068.206.1 localhost

然後再去 ping localhost,提示就變成了:

ping localhost (192.168.206.1) 56(84) bytes of data.

2、127.0.0.1

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接口的默認地址只是一個慣例,如下圖:

如果隨便改這些配置,可能導致很多隻認 127.0.0.1 的軟件掛掉。

3、本機IP

確切地說,“本機地址”並不是一個規範的名詞。通常情況下,指的是“本機物理網卡所綁定的網絡協議地址”。由於目前常用網絡協議只剩下了IPV4,IPX/Apple Tak消失了,IPV6還沒普及,所以通常僅指IP地址甚至ipv4地址。

一般情況下,並不會把 127.0.0.1當作本機地址,因為沒必要特別說明,大家都知道。 本機地址是與具體的網絡接口綁定的。比如以太網卡、無線網卡或者PPP/PPPoE撥號網絡的虛擬網卡,想要正常工作都要綁定一個地址,否則其他設備就不知道如何訪問它。


  • localhost 是個域名,不是地址,它可以被配置為任意的 IP 地址,不過通常情況下都指向 127.0.0.1(ipv4)。

  • 整個127.* 網段通常被用作 loopback 網絡接口的默認地址,按慣例通常設置為 127.0.0.1。這個地址在其他計算機上不能訪問,就算你想訪問,訪問的也是自己,因為每臺帶有TCP/IP協議棧的設備基本上都有 localhost/127.0.0.1。
  • 本機地址通常指的是綁定在物理或虛擬網絡接口上的IP地址,可供其他設備訪問到。
  • 最後,從開發度來看 , localhost是個域名,性質跟 “www.baidu.com” 差不多。不能直接綁定套接字,必須先gethostbyname轉成IP才能綁定。 127.0.0.1 是綁定在 loopback 接口上的地址,如果服務端套接字綁定在它上面,你的客戶端程序就只能在本機訪問。


分享到:


相關文章: