日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

浅谈NAT(网络地址转换)原理 + 个人的思考

發布時間:2023/12/14 编程问答 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 浅谈NAT(网络地址转换)原理 + 个人的思考 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

??NAT英文名Network Address Translation,NAT是指網絡地址轉換。NAT可以將內網的地址轉換為外網地址。(不一定是私網地址和公網地址的使用,下文會舉例解釋)

NAT介紹

    • NAT原理介紹
    • NAT不只是私網地址和公網地址的轉換
    • 為什么需要端口映射呢?
    • 虛擬機VMware的NAT設置
    • 由NAT引申的幾個問題,FAQ
    • 文章參考鏈接

NAT原理介紹


NAT分為基本網絡地址轉換(Basic NAT)和網絡地址端口轉換(PAT或者NAPT)。

??基本網絡地址轉換(Basic NAT) 僅支持IP地址轉換,不支持端口映射。 Basic NAT分為靜態NAT和動態NAT,其中靜態NAT是將內網中的IP地址與外網地址進行一對一映射的綁定,由網絡管理員管理,是永久的表項;動態NAT是指一個內網IP地址隨機的綁定到一個外網IP地址,外網IP地址存放在IP地址池中,當IP地址池的合法IP地址都被映射了,內網的終端就無法建立地址映射關系了。

Basic NAT建立的無端口NAT表示例:

內網IP外網IP
192.168.1.55219.152.168.222
192.168.1.59219.152.168.223
192.168.1.155219.152.168.224

??網絡地址端口轉換(PAT或者NAPT)除了支持IP地址轉換,還支持端口映射。 通常說的NAT指的是PAT,采用的是端口多路復用方式,PAT將多個內部地址映射到少量(甚至一個)外部地址。理論上來說,有三種轉換的方式:只轉換IP、轉換IP+映射端口(只映射端口就不是NAT了)。同時,外網的IP可以是一個或者多個。
PAT建立的無端口NAT表示例:

只轉換IP 內網IP內網端口外網IP外網端口
192.168.1.555566219.152.168.2225566
192.168.1.5980219.152.168.22280
192.168.1.594465219.152.168.2224465
轉換IP+映射端口 內網IP內網端口外網IP外網端口
192.168.1.555566219.152.168.2229200
192.168.1.5980219.152.168.2229201
192.168.1.594465219.152.168.2229202

NAT不只是私網地址和公網地址的轉換

NAT作為網絡地址轉換,不一定是私網地址和公網地址的使用。例如我們可以像套娃一樣,在Internet→光貓→路由器→路由器→中端,可以在每一個路由器開啟NAT,此時外網是我們的公網嗎?很明顯不是這樣的。另一個例子,運營商modem→宿舍路由器(路由模式)→筆記本電腦上的VMware虛擬機(NAT模式)→虛擬機,在筆記本電腦上的VMware(NAT模式)也不是私網地址和公網地址的使用呀。但是NAT的提出就是為了解決兩個問題,一個是公網Ipv4的地址稀缺,另一個是實現內網的匿名和隱私。所以,很多人還是有一個誤區,認為NAT的外網就是公網(全球互聯網Internet)。
參考圖片:百度百科-nat(網絡地址轉換)-技術背景https://baike.baidu.com/item/nat/320024

參考圖片來源:《網絡安全基礎》課程PPT


為什么需要端口映射呢?

原因有三點:

  • 首先它可以保證網絡的匿名和隱私(安全效果);
  • 其次端口映射可以讓內網中的一個終端使用多個不同的端口號訪問多臺外網終端(就像我們使用計算機可以同時發郵件、看視頻、聊微信,不同的服務用不同的端口進行區分。Basic NAT也有這個功能,相當于找了一個代理。);
  • 第三內網中的多個終端使用一個外網IP地址(節約外網的IP地址使用)。

??第三點 “節約外網IP” 舉個例子,假設有兩臺內網的終端PC1和PC2,PC1的IP地址分別為192.168.0.1,PC2的IP地址分別為192.168.0.2,假設使用219.152.168.222這一個外網IP地址。當PC1訪問外網的某個服務,NAT做了一個映射192.168.0.1→219.152.168.222,但是如果這個外網的服務響應時,從外網訪問內網的PC1,它只知道外網地址219.152.168.222,那么NAT怎么區分應該發送給PC1還是PC2呢?所以,為了進行區分,需要增加一個維度——端口(TCP或者UDP端口)。這里的思路其實有點像,我們在區分不同的子網時,需要子網掩碼一樣,都是通過增加維度來進行區分。本質上都是收集足夠多特征,來進行判斷。

虛擬機VMware的NAT設置

??下圖是虛擬機VMware中,對于NAT模式網卡的設置,我們可以在“端口轉發”處實現簡單的NAT穿透,使得外網的終端可以訪問NAT網絡中的虛擬機。



由NAT引申的幾個問題,FAQ

  • NAT服務器所支持的連接,必須是內部主機主動發起的,外網不能直接訪問內網,所以需要使用RNAT,或者說NAT穿透。
  • NAT表是有租期(老化時間、生存時間或者超時機制)的。這個點例如路由表、arp表、DHCP表等都是有的,因為動態分配為了保障自己的表不會被占滿。
  • 生成NAT中繼表需要消耗性能。每次都會有查表的操作,不可避免的說,NAT表是會產生延遲的。
  • FTP等功能需要NAT拓展功能ALG才能正常運行。
  • NAT使IPsec更復雜。

  • 文章參考鏈接

  • 維基百科-網絡地址轉換(需要科學上網,或者使用維基百科的鏡像訪問)
  • 百度百科-nat(網絡地址轉換)https://baike.baidu.com/item/nat/320024
  • 網絡地址轉換NAT-動態NAT的使用范圍和配置 作者:IE-LAB網絡實驗室 https://www.bilibili.com/read/cv4658226
  • 【轉載】網絡地址轉換(NAT)和端口映射 https://blog.csdn.net/weixin_37637399/article/details/85243427
  • NAT地址轉換詳解(靜態NAT,端口映射,動態NAT,PAT)https://blog.51cto.com/u_14449524/2443101
  • NAT 協議解析https://baijiahao.baidu.com/s?id=1725514466082236919&wfr=spider&for=pc&searchword=nat
  • 詳解: IPsec 穿越 NAT 之道 https://blog.csdn.net/weixin_38387929/article/details/117586652?utm_source=app&app_version=5.3.1&code=app_1562916241&uLinkId=usr1mkqgl919blen
  • 如何理解NAT使IPsec更復雜?https://www.zhihu.com/question/21042949
  • 參考資料中,[1]、[2]和[6]主要是為了了解NAT技術。[3]和[8]主要是為了說明NAT表的超時機制和保活機制。[4]和[5]主要是為了說明NAT技術的優點和缺點。[7]主要是說明NAT使Ipsec復雜在實現層面上的詳細解析。


    總結

    以上是生活随笔為你收集整理的浅谈NAT(网络地址转换)原理 + 个人的思考的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。