IPv4枯竭時代:從NAT技術到IPv6的演進之路

??

在這里插入圖片描述


🔍 開發者資源導航 🔍
🏷??博客主頁:?個人主頁
📚?專欄訂閱:?JavaEE全棧專欄

IPv4(Internet Protocol version 4)是互聯網最核心的通信協議之一,自 1981 年正式標準化以來,支撐了全球互聯網近 40 年的發展,但是因為其數量的限制,正在逐步退出歷史的舞臺

IPv4 因為使用 ?32 位地址,因此其理論最大地址數量為:

2^{32}=4,294,967,296(約 42.9 億個)

截止目前為止,IPv4已經全部使用殆盡。

?2011 年 2 月? ?IANA(國際互聯網號碼分配機構)?? 宣布 IPv4 地址池耗盡,最后 5 個 /8 地址塊分配給全球 5 個 RIR(區域互聯網注冊機構)。

?2011 年 4 月? ?APNIC(亞太地區)?? 第一個耗盡 IPv4 地址的 RIR,僅保留少量地址用于過渡。

?2012 年 9 月? ?RIPE NCC(歐洲)?? 宣布 IPv4 地址耗盡。

?2014 年 6 月? ?LACNIC(拉丁美洲)?? 耗盡。

?2015 年 9 月? ?ARIN(北美)?? 耗盡。

而對于這個問題,現在使用的主流解決方法是NAT技術或者升級為IPv6

NAT技術

NAT(Network Address Translation)是一種 ?IP 地址轉換技術,主要用于解決IPv4 地址短缺?問題,并提高網絡安全性。它的核心功能是 ?將私有 IP 地址映射到公網 IP 地址,使多個設備可以共享一個公網 IP 訪問互聯網。

NAT技術將IPv4地址劃分為兩個部分:

私網IP:10.* && 172.16。*-172.31.* && 192.168.*
公網IP:除了上述的都是

公網和私網的關系可以看做是一個包含關系,同一個局域網的私網IP使用同一個公網IP進行上網,公網的IP是唯一的,而私網的IP在不同的局域網中是可以重復的。

?對于同一個局域網的私網IP他是動態變化的,每次上網時都是公網隨機分配給你一個空閑的IP地址,當然你也可以手動設置成固定的一個值(偶爾可能會被占用)。

私網在訪問網絡時,會先通過公網IP,然后使用公網IP再去訪問網絡。

+-------------------+       +---------------------+       +---------------------+
| 私網設備          |       | NAT 路由器          |       | 互聯網服務器        |
| (192.168.1.100)   | --->  | (公網IP: 203.0.113.1)| --->  | (8.8.8.8)           |
|                   | <---  |                     | <---  |                     |
+-------------------+       +---------------------+       +---------------------+

在NAT路由器中,存在一種映射關系,用于私網和公網之間的轉換,不同的私網在使用公網IP時是通過端口號進行區分的。

?在返回響應時也是如此,根據映射關系替換掉IP地址以及端口號,然后轉發給私網的設備。


除此之外,在NAT背景下網絡通信還有以下規則:

1.同一個局域網下,兩個設備可以互相通信

由于同一個局域下,私網IP地址不存在重復的情況,并不會涉及NAT。

2.公網設備A可以訪問公網設備B

公網也不涉及IP地址沖突。

3.不同局域網下的設備A和設備B不允許互相訪問

NAT機制禁止這樣的訪問方式,這也進一步提高了網絡安全。

4.公網設備A不允許訪問私網設備B

并不是絕對的,可以利用內網穿透的方式進行轉發。


IPv6

IPv6(Internet Protocol version 6)是 IPv4 的升級版本,旨在解決 IPv4 地址枯竭問題,并提供更高效、更安全的網絡通信。

IPv6是128位的地址,可以存儲2^128位地址(約 ?340 萬億億億億),這個數量即使給地球上的每一粒沙子都分配一個地址都夠用。

IPv4和IPv6都是網絡層的協議,但是他們的數據包格式不同。

對比項??IPv4??IPv6?
?地址長度?32 位(4 字節)128 位(16 字節)
?地址表示?192.168.1.12001:0db8:85a3::8a2e:0370:7334
?源/目標 IP 字段?各 32 位各 128 位
?頭部大小?20-60 字節(可變)40 字節(固定)

?IPv6數據包格式(部分)

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 版本 (6) | 流量類別 |              流標簽                  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        載荷長度      | 下一個頭部 |      跳數限制            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                       源 IP (128 位)                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                     目標 IP (128 位)                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

IPv6 仍然使用 IP 協議?(只是版本不同),但 IPv6 通常不需要 NAT,因為它的地址空間足夠大(2^128?個地址),每臺設備都可以有全球唯一的公網 IP。


?IPv4和IPv6兩種協議并不兼容,因此IPv6的普及依舊需要時間。

  • ?截至 2023 年?:全球 IPv6 采用率約 ?40%??(中國、印度超 50%,美國僅 30%)。
  • 舊硬件/軟件可能并不支持 IPv6。

長遠角度來看,IPv6是解決該問題的終極方法,NAT技術可能會減少,但是不會完全消失。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/92280.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/92280.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/92280.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

模式結構-微服務架構設計模式

需求&#xff08;Forces)結果上下文(Resulting context)相關模式(Related patterns)需求&#xff1a;必須解決的問題需求部分描述了必須解決的問題和圍繞這個問題的特定上下文環境。需求有時候是相互沖突的&#xff0c;所以不能指望把他們全部都解決&#xff08;必須取舍&#…

30個常用的Linux命令匯總和實戰場景示例

下面匯總常用的 30 個常用的 Linux 命令&#xff0c;每個都附有簡要說明和典型示例&#xff0c;適合日常開發、服務器維護或系統學習使用。30 個常用的 Linux 命令匯總 一、文件與目錄操作&#xff08;基礎&#xff09;命令說明示例ls列出文件和目錄ls -l 顯示詳細信息cd切換目…

Taro 網絡 API 詳解與實用案例

Taro 網絡 API 詳解與實用案例 在現代前端開發中&#xff0c;網絡通信是不可或缺的一環。Taro 作為一款多端開發框架&#xff0c;提供了豐富且統一的網絡 API&#xff0c;幫助開發者在小程序、H5、React Native 等多端環境下高效地進行數據交互。本文將詳細介紹 Taro 的四大網…

Bitbucket平臺的HTTP Access Tokens操作手冊

在Bitbucket平臺添加HTTP Access Tokens&#xff08;用于替代密碼進行認證&#xff09;。 1. 登錄Bitbucket并訪問個人設置 打開 Bitbucket 并登錄賬號。點擊右上角頭像 → 選擇 Manage account。 2. 生成Access Token 在左側菜單中選擇 Access tokens&#xff08;位于 Sec…

低成本、高泛化能力的無人機自主飛行!VLM-Nav:基于單目視覺與視覺語言模型的無地圖無人機導航

作者&#xff1a;Gobinda Chandra Sarker1^{1}1, AKM Azad2^{2}2, Sejuti Rahman1^{1}1, Md Mehedi Hasan1^{1}1單位&#xff1a;1^{1}1達卡大學&#xff0c;2^{2}2伊瑪目穆罕默德伊本沙特伊斯蘭大學論文標題&#xff1a;VLM-Nav: Mapless UAV-Navigation Using Monocular Visi…

Docker Desktop 安裝到D盤(包括wsl)

默認WSL虛擬機位置&#xff1a; C:\Users\<用戶名>\AppData\Local\Docker\wsl重裝DockerDesktop下載安裝包Docker Desktop Installer.exe在D盤創建文件夾D:\Program Files\DockerDesktopD:\Program Files\DockerDesktop\data 在cmd運行 start /w "" "Dock…

網絡協議(三)網絡層 IPv4、CIDR(使用子網掩碼進行網絡劃分)、NAT在私網劃分中的應用

利用子網掩碼進行子網劃分 這是一個模擬搭建的私網&#xff0c;有倆臺主機ab。現在主機a要給云端服務器發送一條消息&#xff0c;這條消息怎么才能到達云端服務器呢&#xff1f;確定這條數據中的源端為本地ip的9000端口&#xff0c;目的端為24.24.24.8888端口&#xff0c;首先&…

8.4 Java 原生 TCP Socket 實現 HTTP 請求解析和請求分發

使用 Java 原生 TCP Socket 實現 HTTP 請求解析和請求分發&#xff0c;是一個理解 HTTP 協議底層原理的好方法。雖然 Java 提供了 HttpServer 類來簡化 HTTP 服務器開發&#xff0c;但如果你想從 TCP 層 開始構建一個簡單的 HTTP 服務器&#xff0c;可以使用 ServerSocket 和 S…

自研能管項目開發界面

自研能管軟件實現一個界面開發 目的&#xff1a; ? 通過接口方式實現展示哪些數據例如&#xff1a; ? 已知制絲車間下的計量電表&#xff0c;在可視化界面通過點擊制絲車間的方式&#xff0c;自動在MySQL存儲制絲車間的電表數據(假設是每分鐘存儲一次)&#xff0c;前端即可以…

【NLP輿情分析】基于python微博輿情分析可視化系統(flask+pandas+echarts) 視頻教程 - 基于wordcloud庫實現詞云圖

大家好&#xff0c;我是java1234_小鋒老師&#xff0c;最近寫了一套【NLP輿情分析】基于python微博輿情分析可視化系統(flaskpandasecharts)視頻教程&#xff0c;持續更新中&#xff0c;計劃月底更新完&#xff0c;感謝支持。今天講解基于wordcloud庫實現詞云圖 視頻在線地址&…

Vue3 面試題及詳細答案120道(31-45 )

《前后端面試題》專欄集合了前后端各個知識模塊的面試題&#xff0c;包括html&#xff0c;javascript&#xff0c;css&#xff0c;vue&#xff0c;react&#xff0c;java&#xff0c;Openlayers&#xff0c;leaflet&#xff0c;cesium&#xff0c;mapboxGL&#xff0c;threejs&…

Proxmox VE 8.3/8.4開啟Intel 核顯的vGPU,搭建vGPU云桌面系統

1. Intel Graphics SR-IOV 介紹Intel Graphics SR-IOV 是 Intel 最新的圖形虛擬化技術。單根 I/O 虛擬化 &#xff08;SR-IOV&#xff09; 通過將設備劃分為多個虛擬功能來定義共享物理設備功能的標準方法。每個虛擬函數都直接分配給一個虛擬機&#xff0c;從而為虛擬機實現接近…

LeetCode 熱題100

文章目錄哈希兩數之和字母異位詞分組最長連續序列雙指針移動零盛最多水的容器滑動窗口子串多刷題 LeetCode 熱題100 哈希 兩數之和 思路分析&#xff1a; 暴力做法&#xff1a;每一個數字都與剩余的數字作比較&#xff0c;時間復雜度是O(n2)O(n^2)O(n2)哈希做法&#xff1a;我…

Idea或Pycharm上.idea的忽略提交的問題總結

文章目錄問題描述如果是首次提交或者之后的提交代碼時把.idea及其文件提交到遠端倉庫中&#xff0c;此時再創建.gitignore會不生效。問題描述 由于在代碼托管平臺上創建的項目&#xff0c;沒有關聯創建.gitignore文件。導致git 克隆到本地電腦上時&#xff0c;項目的根目錄下也…

【鎖】MySQL中有哪幾種鎖?

&#x1f4da; 歡迎來到我的Java八股文專欄&#xff01; &#x1f389; 各位程序員小伙伴們好呀~ &#x1f44b; 我是雪碧聊技術&#xff0c;很高興能在CSDN與大家相遇&#xff01;? &#x1f680; 專欄介紹 這個專欄將專注于分享Java面試中的經典"八股文"知識點 &a…

曠視科技視覺算法面試30問全景精解

曠視科技視覺算法面試30問全景精解 ——AI賦能 智能安防 視覺創新&#xff1a;曠視科技視覺算法面試核心考點全覽 前言 曠視科技&#xff08;Megvii&#xff09;作為全球領先的人工智能公司&#xff0c;專注于計算機視覺、深度學習和智能安防等領域&#xff0c;推動人臉識別、…

docker nginx 部署前端踩坑記錄

文章目錄坑點1&#xff1a;localhost 與127.0.0.1坑點1&#xff1a;localhost 與127.0.0.1 server {listen 80 default_server;client_max_body_size 20M;# 記錄訪問日志和錯誤日志access_log /var/log/nginx/host.access.log main;error_log /var/log/nginx/error.l…

JAVA_TEN-面向對象高級一

一.Static一 定義&#xff1a;叫靜態&#xff0c;可以修飾成員變量、成員方法成員變量按有無static修飾&#xff0c;分為兩種&#xff1a;類變量&#xff1a;有static 修飾&#xff0c;屬于類&#xff0c;在計算機里只有一份&#xff0c;會被類的全部對象共享。實例變量&#x…

幻獸帕魯開服教程

以下均為個人推薦&#xff0c;不喜勿噴&#xff0c;望審核大大明辨開服條件一臺帶公網的vps服務器&#xff08;需開放udp&#xff09;&#xff0c;配置至少為4c16g&#xff0c;推薦8c32g開服需要準備的工具&#xff1a;steamcmd&#xff1a;https://steamcdn-a.akamaihd.net/cl…

lesson21:Python面向對象編程

目錄 引言 一、了解面向對象編程&#xff08;OOP&#xff09;&#xff1a;編程范式的革命 1.1 什么是面向對象編程&#xff1f; 1.2 OOP vs 面向過程&#xff1a;思維方式的差異 1.3 OOP的三大核心特性 二、類與對象&#xff1a;OOP的基石 2.1 類&#xff08;Class&#…