1. 程式人生 > >為什麼ESP能夠穿越NAT,而AH則不能

為什麼ESP能夠穿越NAT,而AH則不能

嚴格地說,只能是隧道模式下的ESP才能穿越NAT。

首先需要了解的是IPSEC的作用,即資料的機密性、完整性、認證性。機密性就是保證資料包的原始內容不被看到;完整性即保證資料包的內容不會被修改;認證性保證資料來自被信任的客戶端。
IPSEC中的封裝格式有2種(AH和ESP), AH在IP資料包中插入了一個包頭,其中包含對整個資料包內容的校驗值;ESP使用者加密整個資料包內容,同時也可以對資料包進行認證。
IPSec有2 種不同的模式:傳輸模式和隧道模式。
一種是傳輸模式,主要用於主機到主機之間的直接通訊。
另一種是隧道模式主要用於主機到閘道器或閘道器到閘道器之間。傳輸模式和隧道模式主要在資料包封裝時有所不同。
無論傳輸模式還是隧道模式,AH都會認證整個資料包。並且AH還會認證位於AH頭之前的IP 頭。當NAT 裝置修改了IP 頭之後,IPSec 就會認為這是對資料包完整性的破壞,從而丟棄資料包。因此AH是不可能和NAT 在一起工作的。
而ESP在傳輸模式時會保護TCP/UDP頭,但是並不保護IP 頭,因此修改IP 地址並不會破壞整個資料包的完整性。但是如果資料包是TCP/UDP資料包,NAT裝置就需要修改資料包的校驗值,而這個校驗值是被ESP 所保護的,這樣卻會導致完整性校驗失敗。 所以最終可能和NAT一起工作的只能是隧道模式下的ESP。

相關推薦

為什麼ESP能夠穿越NATAH不能

嚴格地說,只能是隧道模式下的ESP才能穿越NAT。 首先需要了解的是IPSEC的作用,即資料的機密性、完整性、認證性。機密性就是保證資料包的原始內容不被看到;完整性即保證資料包的內容不會被修改;認證性保證資料來自被信任的客戶端。 IPSEC中的封裝格式有2種(AH和ESP)

為什麼域名能夠訪問網站直接使用IP不可以

背景介紹 在訪問杭電官網杭電官網的時候,直接在瀏覽器上,輸入域名是可以得到訪問結果的。因此,產生了一種猜測,既然網路中實際上是根據域名轉換的IP來直接訪問伺服器的,那麼我直接通過IP來訪問杭電官網是否可以?? 通過nslookup 解析出杭電官網的ip地址,然

Python練習題9(密碼判斷):請寫一個密碼安全性檢查的程式碼程式碼: 首先判斷密碼的強度如果結果是低或中列印如何提升密碼安全級別的提示直接退出

'''請寫一個密碼安全性檢查的程式碼程式碼:首先判斷密碼的強度,如果結果是低或中則列印如何提升密碼安全級別的提示,而高則直接退出 # 密碼安全性檢查程式碼## 低階密碼要求:# 1. 密碼由單純的數字或字母組成# 2. 密碼長度小於等於8位## 中級密碼要求:# 1. 密碼必須由數字、字母或特殊字元(僅限:

請實現一個函式用來匹配包括'.'和'*'的正表示式。模式中的字元'.'表示任意一個字元,而'*'表示它前面的字元可以出現任意次(包含0次)。 在本題中匹配是指字串的所有字元匹配整個模式。

題目描述 請實現一個函式用來匹配包括'.'和'*'的正則表示式。模式中的字元'.'表示任意一個字元,而'*'表示它前面的字元可以出現任意次(包含0次)。 在本題中,匹配是指字串的所有字元匹配整個模式。例如,字串"aaa"與模式"a.a"和"ab*ac*a"匹配,但是與"aa.a"和"ab*a"均

請實現一個函式用來匹配包括'.'和'*'的正表示式。模式中的字元'.'表示任意一個字元,而'*'表示它前面的字元可以出現任意次(包含0次)。 在本題中匹配是指字串的所有字元匹配整個模式。例如

本題源自劍指offer ----------------------------------------------------------------------------------- 如果模式串遇到*字元則有兩種狀態,第一匹配字元,則字串後移一位,模式串不變,第二,

TCP基礎 —— 為什麼建立連線需要三次握手斷開連線需要四次?能不能是三次?

一、TCP包概述 一個 segment 包含 header 和 data 兩個部分,對於這篇文章需要理解的就是,Sequence

顯然唔會系佢嘅對手家睇落陳娥目前能夠扤拖住嘅就得返

一分鐘 people 放大 之一 就會 不堪 垃圾 .com 原本 陳娥對於呢句說話都相當贊同,但點先可以殺咗佢?呢對於陳娥嚟講,根本就毫無頭緒,贊同歸贊同,但真系要講出殺咗對方嘅話,陳娥系做唔到嘅,因為佢知道自己嘅能力,喺對方面前不堪一擊,呢度若是莫問城,或者系任何地方都

休息的一天你不應該只知道休息

紮實 有時 dex 練習 學生 隆重 val tex 學會   時間過的很快,不知不覺已經學習了三天了,想想剛開始第一天真的一臉的問號,現在算是對基本知識懂點了,突然發現當你掌握一點知識的時候,哪怕是很小的一點,你也會覺得很高興,都會自己想去用僅有的這點知識去練習,去研究。

如果父類中有構造函數並且構造函數有參數子類沒有因為子類繼承了這個構造函數那麽創建子類對象的時候要傳參

bsp class nbsp 參數 int init log ini elf 1 class a(): 2 def __init__(self,aa): 3 self.aa = aa 4 class b(a): 5 def do(self)

你的團隊須要一個領袖不是一個主管

mas 不想 生物 森林 pad 意見 翻譯 group size   怎樣成倍提升員工的效率?國際人力資源咨詢公司Hay Group研究發現。合適的”領袖“是74%的企業提升效率最直接的方法。但是你的公司有這種”領袖“嗎?或者。他們是讓員工人人自危的還有一種可怕生物

優先使用單表查詢非聯合查詢

gda 優先 下大雨 crud 架構 關聯查詢 鏈式操作 column 一個 優先使用單表查詢,而非聯合查詢 發表於2016/7/4 17:49:09 1866人閱讀 分類: 研發架構 一、小雷的見解 1.編碼規範 CRUD,命名規範,可以通用。 比如類名、方

為什麽別人一周搞定Linux你卻做不到

shell腳本我給大家精選準備了4段Shell實戰腳本 / 基礎Linux常用命令;也許能解決你很多實際工作問題;如果看到這些你不知道它能用來幹嘛,先收藏、先記住吧,以後用的上~實戰命令一:在實際的工作中,我們經常需要將多個文件同時移動到一個指定的目錄下,如果一個一個移動,太折騰...你應該要知道:mv 有一

騰訊:人力資源要的是服務不是管理

馬化騰 薪酬 會有 對數 關註 每一個 早期 .... 調研 2016年全年,騰訊總收入為人民幣1519.38億元。現在這只企鵝到底已經龐大到怎樣的程度呢? 被譽為“互聯網女王”的瑪麗·米克(Mary Meeker)發布了“2016互聯網女皇報告”,盤點了過去一年全世界互聯

試著理解規則不是記住規則

eat http mozilla fin 說明 user 修正 rom ref MDN上有一段關於li元素的說明: The HTML <li> element is used to represent an item in a list. It must be

專註服務非容器

服務 容器 模塊化 docker rancher 現階段而言,容器聽起來可能很酷,但這種現狀或許不會持續太久。可以預見的是,容器將來也僅僅是一種基礎設施。經驗豐富的開發人員對部署應用程序的方法和其它幾種類型的基礎設施可能已經很熟悉了。容器對他們來說沒什麽大不了的。 然而,通過容器架構應用程

SIP穿越NAT SIP穿越防火墻-SBC

和源 消息 alt spl sim 連接建立 穿透 creat nec FireWall&NAT FireWall是一種被動網絡安全防衛技術,位於網絡的邊界。在兩個網絡之間運行訪問控制策略。防止外部網絡對內部信息資源的非法訪問,也能夠阻止特定

[fixed] 解決 slf4j + log4j eclipse 可以打印日誌在雲服務器上不能打印

.com 單獨 com img 雲服務器 -1 設置 日誌 logs 今天發現服務上沒有打印任何日誌,而log4j已經設置為了INFO 很奇怪,在eclipse中是可以打印的,也能輸出到單獨的日誌中 後來發現原來是沖突了 把log4j註釋掉即可 保留slf4j即可 [

指定某個div隨著指定大div滾動不是隨著整個窗口固定不動

ons oat mil all script 而不是 var off padding <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title

RDO遠程連接時提示“遠程計算機需要網絡級別身份驗證您的計算機不支持該驗證請聯系您的系統管理員或者技術人員來獲得幫助”

tro 限制 edit 重啟 註冊 屏幕 重裝 controls border 當服務器重裝操作系統後使用RDO遠程連接時會出現錯誤提示“遠程計算機需要網絡級別身份驗證,而您的計算機不支持該驗證,請聯系您的系統管理員或者技術人員來獲得幫助” 如下圖所示