成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

localhost 和 127.0.0.1 有什么區別?你知道嗎?

網絡 路由交換
你可能也聽說過IPv6,它是為了應對IPv4地址空間不足的問題,引入的IPv6地址數量非常多,理論上可以為地球上的每一粒沙子分配一個IP地址。盡管多年來一直在談論,但IPv4仍然更為廣泛使用。

當前端開發人員在本地調試時,他們經常與 localhost 互動,只需運行npm run命令就可以在瀏覽器中打開他們的網頁,地址欄顯示類似于 http://localhost:xxx/index.html的內容。

許多人在使用它時可能沒有思考兩者之間的區別。

考慮到我過去與開發人員合作時他們也缺乏對這兩者區別的清晰理解,我覺得有必要在這個話題上傳播一些知識。

什么是localhost?

localhost 是一個域名,從根本上說,與用于互聯網訪問的域名沒有什么不同,只是它更容易記憶。

localhost 的范圍僅限于本地機器——它的名字說明了一切:“local”指的是本地的東西。

John Smith 和 Jane Doe 都可以在各自的機器上使用 localhost,而不會相互干擾,訪問他們各自的頁面內容。

從域名到程序

要真正理解 localhost,我們需要討論用戶是如何通過域名訪問程序的,以谷歌為例。

1.在瀏覽器中輸入google.com時,它首先查詢DNS以獲取google.com的IP地址。

為什么需要IP地址?打個比方,如果有人向你的公司發送包裹,快遞單上會包括公司的地址、名稱和收件人等詳細信息。快遞過程依賴于地址來進行路由,最終到達收件人。同樣,在網絡中,域名就像公司名稱,IP地址就像物理地址。在網絡世界中,IP地址對于定位相應的程序至關重要。

DNS就像一個公司目錄,列出每個域名對應的IP地址。有些域名可能沒有注冊,使得它們的IP地址無法找到,而其他域名可能有多個IP地址,DNS會根據特定規則自動返回其中一個。購買域名后,域名服務提供商通常會提供DNS解析服務,將域名及其對應的IP地址注冊在DNS中。

IP地址從哪里來?每臺聯網的計算機都有一個IP地址,但個人計算機的IP通常不適合公開訪問,類似于對內部人員清晰但對外部人士不明的內部公司位置。對于谷歌這樣的外部服務,需要一個公共IP地址,通常由互聯網服務提供商提供。例如,如果你的公司使用中國聯通進行網絡接入,你可以讓他們為你的公司網關服務器分配一個公共IP地址。網關服務器就像一個交換機,處理所有內部網絡通信,并設置轉發規則來將傳入請求路由到適當的服務器。

2.有了IP地址,瀏覽器就會向這個地址發送請求,操作系統會將請求打包成IP數據包,然后通過網絡傳輸。網絡的路由協議根據提供的IP地址和通過各種路由器,最終到達綁定該IP的計算機。

3.一臺計算機上可能部署了多個網絡應用程序。哪一個應該接收請求?這時候端口就起作用了。每個網絡應用程序都可以綁定一個或多個端口,系統會防止端口重疊。在請求中指定一個端口可以將請求路由到正確的網絡應用程序。

但當我們訪問谷歌時,我們并不指定端口。這是因為當未指定端口時,默認使用HTTP的80端口和HTTPS的443端口。啟動網絡程序時綁定端口是必須的,盡管有些框架會自動選擇計算機上未使用的端口。

“localhost”和“127.0.0.1”有什么區別?

在了解了基礎知識后,我們可以更容易地理解這個問題。

localhost 是一個域名,如前所述。

那么127.0.0.1呢?它是一個IP地址,即當前機器的本地IP地址,只能在該機器上使用。你的計算機可以在沒有連接到互聯網的情況下使用這個IP地址,這對于開發和測試網絡程序非常方便。我們調試的程序綁定到這個IP地址上。

值得注意的是,我們常見的IP地址格式為X.X.X.X,由點分隔為四段。實際上,它是一個32位的二進制數,分為四個8位的段,然后轉換為十進制數顯示。

那么localhost是如何解析到127.0.0.1的呢?它需要通過DNS嗎?不需要。每臺計算機都可以在沒有DNS解析的情況下使用localhost和127.0.0.1。

這個解析是由每臺計算機獨立處理的。每臺計算機上都有一個hosts文件,里面包含一些硬編碼的DNS解析規則,包括將localhost解析到127.0.0.1的規則,這是一個約定。

如果你不想使用localhost,也沒問題。你可以將其命名為任何名稱,如wodehost,并將其解析到127.0.0.1。

你甚至可以使用google.com,但這只會對你自己有效,不會影響到其他任何人。

域名層級

localhost與我們通常使用的域名,如 www.juejin.cn、google.com或csdn.net不太一樣。www、cn、com和net代表什么?為什么localhost不需要它們?

域名是分層的,分為頂級域名(TLD)、二級域名(SLD)和三級域名(3LD)等。

頂級域名(TLD):域名系統中的最高級別,位于域名最右邊,通常由幾個字母組成。TLD分為通用TLD和國家代碼TLD,常見的通用TLD包括.com用于商業企業、.net用于網絡提供商、.org用于非營利組織,而國家代碼TLD代表特定國家或地區,如.cn代表中國和.uk代表英國。

二級域名(SLD):位于TLD之下,由注冊者選擇并注冊,可以是一個個性化和易記的名稱。例如,juejin.cn是一個二級域名,這通常是我們可以申請的。頂級域名如.com、.net或.cn的意義通常被忽略,以便簡短和易記。

三級域名(3LD):位于二級域名之下,通常用于指向特定服務器或子網。在blog.example.com中,“blog”是一個三級域名。“www”是最常見的三級域名,代表網站的主頁或主站,盡管這只是一個約定,現在許多網站建議通過二級域名直接訪問。

根據這個定義,我們可以將localhost視為一個頂級域名,盡管是一個保留的,僅用于訪問當前計算機的頂級域名。

多個網站共享一個IP和端口

如前所述,不同的網絡程序不能使用相同的端口,但有方法可以繞過這個限制。

在個人博客流行的時候,許多人喜歡購買虛擬主機并部署一個開源博客平臺來表達自己。為了賺錢,虛擬主機提供商會在一臺計算機上分配許多虛擬主機,讓每個人都可以使用默認的80端口訪問他們的域名而不會有任何問題。這是怎么做到的呢?

如果你有使用Nginx、Apache或IIS等網絡服務器的經驗,你可能對主機頭的概念有所了解。主機頭實際上就是域名。通過設置主機頭,我們的程序可以共享一個網絡端口。

在Nginx等網絡服務器中部署網站時,我們配置它以在主機頭中包含域名。

啟動時,Nginx和其他網絡服務器會將80端口占為己用。

當網站請求到達Nginx的80端口時,它會根據請求中的域名識別出配置了相應主機頭的網絡程序。

然后,Nginx會將請求轉發給該網絡程序,如果需要,啟動它。

私有IP地址

除了127.0.0.1,還有很多私有IP地址,例如常見的192.168.x.x。這些私有IP地址大多保留用于局域網(LAN)內使用,因為為每臺計算機分配唯一的IP地址是不現實的。只要在局域網內部沒有沖突,這些地址可以自由使用。你的公司可以使用192.168.1.1,我的公司也可以使用192.168.1.1,但如果你想訪問我的公司,你需要通過公共IP地址。

常用的IPv4私有IP地址范圍分為三個類別:

  • A類:從10.0.0.0到10.255.255.255
  • B類:從172.16.0.0到172.31.255.255
  • C類:從192.168.0.0到192.168.255.255

這些私有IP地址僅供內部網絡使用,不能用于公共互聯網。

除了上述三種私有IPv4地址范圍,還有一些保留的IPv4地址范圍:

127.0.0.0到127.255.255.255地址范圍用于回環測試,包括問題中提到的127.0.0.1地址。你還可以分配給自己一個類似127.0.0.2的IP地址,它的功能與127.0.0.1相同。169.254.0.0到169.254.255.255地址范圍用于局域網內部。這種情況較少見,如果你的計算機無法連接到局域網,可能會看到這個IP地址,它是臨時分配的局域網地址。 這些地址范圍也不能用于公共互聯網。

還有一些不太常見的專用IPv4地址范圍。IP地址范圍的完整定義可以在這里找到:www.iana.org/assignments……

IPv6

你可能也聽說過IPv6,它是為了應對IPv4地址空間不足的問題,引入的IPv6地址數量非常多,理論上可以為地球上的每一粒沙子分配一個IP地址。盡管多年來一直在談論,但IPv4仍然更為廣泛使用。這背后的原因很多,這里不做討論。

IPv6地址的格式如下:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX。它有128位長,由冒號分為8段,每個X代表一個十六進制數(從0到F)。IPv6 地址空間比IPv4大得多。例如,2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b是一個有效的IPv6地址。

關于IPv6的進一步討論超出了本文的范圍,但有興趣的人可以進一步探索。

責任編輯:武曉燕 來源: 大遷世界
相關推薦

2024-05-27 00:40:00

2024-03-05 18:59:59

前端開發localhost

2024-03-05 18:19:07

localhostLinux數據庫

2022-03-13 18:53:31

interfacetypeTypeScript

2022-06-08 07:34:25

InnoDBdeleteMySQL

2021-02-06 21:57:40

Debug模式Release

2021-07-27 08:02:45

DTO 軟件Pojo

2022-08-26 01:41:42

GPUCPU架構

2024-04-12 00:00:00

localhost計算機機制

2018-10-26 10:41:06

ApacheNginx服務器

2024-03-26 00:10:08

預測AI泛化

2024-01-01 08:25:53

ViewSurface框架

2024-10-22 09:59:36

虛擬化容器化系統

2023-04-26 10:21:04

2023-06-01 08:15:04

CentOS紅帽

2023-12-07 07:08:09

Angular函數

2023-12-20 08:23:53

NIO組件非阻塞

2024-04-30 09:02:48

2023-09-01 07:38:45

ArrayListArrayst實線類

2025-01-09 07:31:39

MySQL字段磁盤
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人在线视频免费看 | 999精彩视频 | 欧美综合国产精品久久丁香 | 日韩欧美在线一区二区 | 成人午夜精品一区二区三区 | 精品视频久久久久久 | 99综合在线 | 久久国产精品一区二区三区 | 日本精品免费在线观看 | 天堂色综合 | 国产农村妇女精品一区 | 日操操| 99热播精品 | 国产精品一区二区无线 | 久久国产成人 | 涩涩视频在线观看免费 | 欧美一级黄色网 | 成人免费在线观看 | 在线免费观看黄色av | 五月综合激情在线 | 在线欧美一区 | 一区二区三区免费 | 欧美一区二区免费 | 久久久一区二区三区 | 欧美成人精品一区二区男人看 | 欧美一级免费观看 | 天堂一区二区三区四区 | 欧美美女一区二区 | 老妇激情毛片免费 | 99国产精品99久久久久久 | 中文字幕精品一区二区三区精品 | 国产一区二区三区视频在线观看 | 亚洲精品成人 | 在线视频久久 | 97伊人| av官网在线 | 国产一区二区欧美 | 在线日韩 | 久久精品福利 | 二区在线观看 | 99久久婷婷国产综合精品电影 |