內網穿透原理

2022-08-17 22:33:11 字數 924 閱讀 2494

一、前言

由於工作與網路通訊有關,最近研究了一下內網穿透,下面是自己的一些理解。

二、問題**

首先來說一下常見的網路通訊,內外網通訊。

假如目前有內網客戶端a,外網客戶端b,閘道器nat,因為網路不在同乙個網段內,所以內外網是無法直接連線的,但是閘道器nat充當著中間人的角色,就實現了內外網通訊的功能。

a要連線b,訊息發到 nat 時 nat發現是要連線到外網, 就自己建立乙個socket去連線 b, 從此以後 a發過去的資料都會被修改包頭中的本地位址為 nat的位址, 然後發出去 。 所以 b 實際上一直以為 是nat在給自己發東西。

這是內網和外網進行通訊,那麼問題來了,如果兩個不同的內網之間可以直接通訊嗎?兩個不同內網間建立連線(即內網穿透)。

答案是肯定不能的,因為兩個內網程式都不知道對方外網的外網位址,所以無法連線。那怎麼辦呢?這時我們就找來乙個新角色,乙個外網客戶端n。

內網 la、lb 閘道器 nata,natb 外網 n,la 要連 lb。la先通過閘道器ntaa連線n,lb通過閘道器ntab也連線到n。然後 la在n那裡得到了lb的位址(實際上就是natb的位址)。但是直接給natb發東西不行的。

因為乙個socket只能給乙個socket發東西,而這時natb是在跟n發東西的。於是這時候la就給n說,你讓lb來連線我吧!

然後n對lb說,你再開乙個連線出來,於是n就有了lb的另乙個位址lbaddr,然後告訴la。la這下就可以連線lb了,因為lbaddr是乙個外網位址,也就是natb的位址。而natb是知道這個位址是要**給lb的。

這樣就ok了.....

內網穿透原理

原理 需求場景 讓外網通過特定埠訪問本地伺服器 nat network address translation 網路位址轉換 作用 將本地位址轉換為全球的ip 實現方式 靜態轉換 硬編碼 動態轉換 如 dhcp協議 埠多路復用 port address translation.pat ip 埠 應用...

內網穿透原理

學了網路之後,我們知道了公網和私網。私網是不能在公網傳輸和通訊的。我們乙個學校,乙個小區,都是在自己單獨的私網裡面。通過這個私網內部的路由器 napt方式 和外界通訊。那麼問題來了,假如我要和其他學校的小夥伴通訊,那怎麼辦呢?我和小夥伴都是在單獨的私網裡面,而私網的位址是不能通訊的,那麼我怎麼才能和...

內網穿透原理概要

詳細原理的解析 執行原理流程圖 什麼是內網穿透?內網穿透是我們在進行網路連線時的一種術語,也叫做nat穿透,即在計算機是區域網內的時候,外網與內網的計算機的節點進行連線時所需要的連線通訊,有時候就會出現內網穿透不支的情況。內網穿透的功能就是,當我們在埠對映時設定時,內網穿透起到了位址轉換的功能,也就...