NAT NAPT

NAT

NAT(Network Address Translation,網絡地址轉換) 主要用于在不同網絡(如私有網絡和公共互聯網)之間進行 IP 地址轉換,解決IP 地址短缺問題,并提供一定的安全性

  • IPv4 地址是 32 位(最多 2^32 ≈ 43 億 個地址),但全球設備數量遠超這個范圍。
  • 私有 IP 地址(如 192.168.1.0/24)不能直接在公網使用,必須通過 NAT 轉換成公網 IP。

NAT IP轉換過程

當主機A私有IP地址訪問服務器公有IP時,先把數據發給路由器,NAT 路由器將報文的源地址從 10.0.0.10 替換成全局的 IP 202.244.174.37;并在轉換表中建立私有IP和公有IP的映射關系。
當服務器返回報文時,NAT 路由器收到外部的數據時, 再根據轉變表的映射關系,把目標 IP 從 202.244.174.37 替換回10.0.0.10;
當 10.0.0.10 第一次向 163.221.120.9 發送數據時就會生成表中的映射關系;

NAPT

那么問題來了, 如果局域網內, 有多個主機都訪問同一個外網服務器, 那么對于服務器返
回的數據中, 目的 IP 都是相同的. 那么 NAT 路由器如何判定將這個數據包轉發給哪個
局域網的主機?

這時候就不能但使用IP建立聯系,要用IP+port。

同一個子網中每個主機的私有 IP 是唯一的,即使端口號一樣,也能保證唯一性。IP+端口號保證了在同一個子網中,每臺主機以及主機上客戶端的唯一性。

NAPT,轉換的公網IP一樣,但可以分配不同的端口號,也保證了唯一性。

這樣映射雙方都保證了唯一性。

再來想一下,同一子網中主機的私有IP不同,但不同子網的私有IP可能會相同。如果這兩個子網有同一個路由器,在不同子網的兩個主機私有IP相同,端口號也相同,訪問同一個服務器,會怎么樣?

即使不同子網的主機 IP + 端口號相同,NAPT 仍然能基于 NAT 端口號 + 子網信息(NAPT 設備用來區分不同子網的標識信息:入接口eth 源子網?VLAN 標識)唯一映射,確保數據包不會錯誤地送達另一臺主機。

子網 A 的 192.168.1.100:5001 → 203.0.113.1:30001

子網 B 的 192.168.1.100:5001 → 203.0.113.1:30002

服務器返回數據時,NAPT 設備根據 NAT 端口號找到正確的原始子網,并正確轉發回去。

其他 NAT 方案:

  • 策略 NAT(Policy-Based NAT)

    • 不同子網使用不同的 NAT 端口范圍,確保 NAT 端口不重疊。
    • 例如:
      • 子網 A:NAT 端口 30000-31000
      • 子網 B:NAT 端口 31001-32000
  • 使用多個公網 IP

    • 如果 NAT 設備支持多個公網 IP,可以為不同子網分配不同的公網 IP,避免 NAT 端口沖突:
      • 子網 A → 203.0.113.1
      • 子網 B → 203.0.113.2

?

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

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

相關文章

快速排序(二叉樹的前序遞歸遍歷思想)

思路 之前我們從選擇排序,到選擇排序的穩定性優化,到冒泡排序,到插入排序,到插入排序的提前截止時間,到希爾排序,雖然逐步一直都在優化,但是時間復雜度還是N得平方,力扣提交的結果一…

Redis 面試篇

Redis相關面試題 緩存三劍客 面試官:什么是緩存穿透 ? 怎么解決 ? 緩存穿透是指查詢一個一定不存在的數據,如果從存儲層查不到數據則不寫入緩存,這將導致這個不存在的數據每次請求都要到 DB 去查詢,可能導致 DB 掛掉。這種情況…

群暉DS223 Docker搭建為知筆記

群暉DS223 Docker搭建為知筆記,打造你的專屬知識寶庫 一、引言 在數字化信息爆炸的時代,筆記軟件成為了我們管理知識、記錄靈感的得力助手。為知筆記,作為一款專注于工作筆記和團隊協作的云筆記產品,以其豐富的功能和便捷的使用體…

Linux網絡之數據鏈路層協議

目錄 數據鏈路層 MAC地址與IP地址 數據幀 ARP協議 NAT技術 代理服務器 正向代理 反向代理 上期我們學習了網絡層中的相關協議,為IP協議。IP協議通過報頭中的目的IP地址告知了數據最終要傳送的目的主機的IP地址,從而指引了數據在網絡中的一步…

分類評價指標

基礎概念解釋 TP、TN、FP、FN 這里T是True,F是False,P為Positive,N為Negative TP:被模型正確地預測為正樣本(原本為正樣本,預測為正樣本) TN:被模型正確地預測為負樣本&#xff0…

LeetCode 哈希章節

簡單 1. 兩數之和 給定一個整數數組 nums 和一個整數目標值 target,請你在該數組中找出 和為目標值 target 的那 兩個 整數,并返回它們的數組下標。 你可以假設每種輸入只會對應一個答案,并且你不能使用兩次相同的元素。 你可以按任意順序返…

WLAN(無線局域網)安全

WLAN安全涉及到保護無線局域網免受各種威脅和攻擊,以確保數據的保密性、完整性和可用性。以下是關于WLAN安全的多方面介紹: 一、主要安全威脅 竊聽:攻擊者利用特殊設備監聽無線信號,獲取傳輸中的數據,如用戶的賬號密…

江科大51單片機筆記【11】AT24C02(I2C總線)

一、存儲器 1.介紹 RAM的特點是存儲速度特別快,但是掉電會丟失;ROM的特點是存儲速度特別慢,但是掉電不會丟失 SRAM是所有存儲器最快的,一般用于電腦的CPU高速緩存,容量相對較少,成本較高;DRAM…

【C++指南】一文總結C++類和對象【中】

🌟 各位看官好,我是egoist2023! 🌍 種一棵樹最好是十年前,其次是現在! 🚀 今天來學習C類和對象的語法知識。注意:在本章節中,小編會以Date類舉例 👍 如果覺得…

PgSql 操作技巧

1、查詢數據導出csv數據 \COPY (SELECT w.* from t_sys_warn w ) TO /home/cuadmin/warn_output.csv WITH CSV HEADER;2、導出sql Insert語句 pg_dump -U 用戶名 -h 主機名 -p 端口號 -d 數據庫名 --inserts -t 表名 > 導出文件.sqlpg_dump -U username -d dbname -t tabl…

Unity ES3保存類的問題

有以下一個物品類 public class Item_Base//基礎物品 { public string ID; private Attribute_Data Item_attribute new(); } 當使用ES3保存這個類時,Item_attribute的數據不會被保存,因為它是私有private ES3保存類時,只會保存…

react基本功

useLayoutEffect useLayoutEffect 用于在瀏覽器重新繪制屏幕之前同步執行代碼。它與 useEffect 相同,但執行時機不同。 主要特點 執行時機:useLayoutEffect 在 DOM 更新完成后同步執行,但在瀏覽器繪制之前。這使得它可以在瀏覽器渲染之前讀取和修改 DOM,避免視覺上的閃爍…

Spring Boot筆記(上)

01 概要 Spring Boot 是 Java 領域最流行的 快速開發框架,專為簡化 Spring 應用的初始搭建和開發而設計。 一、Spring Boot 解決了什么問題? 傳統 Spring 痛點 ? 繁瑣的 XML 配置 ? 需要手動管理依賴版本 ? 部署依賴外部 Web 服務器(如 …

目標檢測YOLO實戰應用案例100講-基于毫米波雷達的多目標檢測 (續)

目錄 3.2 改進的CFAR目標檢測算法 3.3 算法步驟描述 3.4 實驗結果與分析 基于VGG16-Net的毫米波雷達目標檢測算法 4.1 VGG16-Net網絡模型 4.2 改進VGG16-Net網絡的目標檢測算法 4.3 算法步驟描述 4.4 實驗結果與分析 知識拓展 基于毫米波雷達的多目標檢測:使…

gitsubtree怎么添加新的子倉庫

要使用 git subtree 添加一個新的子倉庫&#xff0c;可以按照以下步驟操作&#xff1a; 1. 添加子倉庫 使用 git subtree add 命令將子倉庫的內容添加到主倉庫的指定目錄中。命令格式如下&#xff1a; git subtree add --prefix<子目錄路徑> <子倉庫地址> <子…

文本轉語音-音畫適時推送rtsp并播放

文本語音 rtsp適時播放叫號系統的底層邏輯 發布Linux, unix socket 和window win32做為音頻源的 python10下的(ffmpeg version 7.1) 可運行版本. 這兩天在弄這個&#xff0c;前2篇是通過虛擬聲卡&#xff0c;達到了最簡單的一個邏輯&#xff0c;播放文本就從聲卡發聲&#xff0…

從0開始的操作系統手搓教程33:掛載我們的文件系統

目錄 代碼實現 添加到初始化上 上電看現象 掛載分區可能是一些朋友不理解的——實際上掛載就是將我們的文件系統封裝好了的設備&#xff08;硬盤啊&#xff0c;SD卡啊&#xff0c;U盤啊等等&#xff09;&#xff0c;掛到我們的默認分區路徑下。這樣我們就能訪問到了&#xff…

【圖片批量轉換合并PDF】多個文件夾的圖片以文件夾為單位批量合并成一個PDF,基于wpf的實現方案

項目背景: 多個圖片分布在不同文件夾,如何以文件夾為單位批量合并成一個PDF,還要保證文件夾里面圖片大小和順序 實現功能: 1、單張圖片的轉換PDF:一張圖臨時轉一下 2、多張圖片轉換成PDF:多張圖單獨轉成PDF 3、多級目錄多張圖轉換成PDF:多級目錄多張圖單獨轉成多個PDF…

如何用Kimi生成PPT?秒出PPT更高效!

做PPT是不是總是讓你頭疼&#xff1f;&#x1f629; 快速制作出專業的PPT&#xff0c;今天我們要推薦兩款超級好用的AI工具——Kimi 和 秒出PPT&#xff01;我們來看看哪一款更適合你吧&#xff01;&#x1f680; &#x1f947; Kimi&#xff1a;讓PPT制作更輕松 Kimi的生成效…

從 MongoDB 到 TDengine,沃太能源實現 18 倍寫入性能提升

導讀 沃太能源是國內領先儲能設備生產廠商&#xff0c;數十萬儲能終端遍布世界各地。此前使用 MongoDB 存儲時序數據&#xff0c;但隨著設備測點增加&#xff0c;MongoDB 在存儲效率、寫入性能、查詢性能等方面暴露出短板。經過對比&#xff0c;沃太能源選擇了專業時序數據庫 …