目錄
- 引言
- 測試環境架構圖
- 測試方法
- 無VPN(無加密)連線測試
- L2TPv3(L2TP over IP)測試
- L2TPv3+IPsec測試
- 總結
引言
在某一天,我們的客戶向我們提出了一個問題:「在使用NGN的VPN環境中,客戶端之間的通訊可以在不進行分片的情況下傳輸到什麼程度?」這個問題讓我感到困惑,身為工程師,我決定在查閱相關文件的同時,實際搭建環境進行驗證。
如果你對NGN還不太了解,記住一句話:「因為網內折返,所以速度很快。」這句話可以讓你在某種程度上顯得很專業。
測試環境架構圖
我迅速搭建瞭如下的測試環境:
注意:自行建置測試環境時,請確保簽約「FLET'S v6選項」。
| 專案| 自宅| 公司| | --- | --- | --- | | 迴線| NTT西日本FLET'S 光ネクスト公寓超級高速類型隼| NTT西日本FLET'S 光ネクスト家庭高速類型| | 介面| MTU大小:1600位元組(LAN0, LAN1) | | | L2TPv3 | L2TPv3 over IP(協定號:115) | | | Cookie | 4位元組| | | IPsec | 隧道模式:傳輸| | | ESP加密| ESP-AES-128/192/256 | | | ESP完整性| ESP-SHA-HMAC | | | AH完整性| 無| |
測試方法
首先,我從網路上取得NGN的資料,確認了MTU大小。根據資料顯示,IPv6(IPoE)通訊的MTU值為1500位元組。如果IP通訊網路接收到超過MTU值的封包,網路會丟棄該包。
參考文獻:東日本電信電話株式會社《IP通訊網服務的介面第三分冊(第35版)》,第20頁(連結)
在了解了MTU為1500位元組後,我決定將此資訊回饋給客戶,但為了避免被指責,我還是按照計畫進行了詳細的驗證。
- 使用測試PC01(192.168.0.1)與測試PC02(192.168.0.2)之間的ping指令,靈活調整icmp負載大小進行測試。
- 在測試PC02上啟動WireShark,擷取vpn-mtu02的LAN1介面數據,以觀察通訊狀況。
無VPN(無加密)連線測試
首先,在沒有加密的情況下,檢查路由器之間的MTU大小。 MTU大小1500位元組意味著我可以透過icmp負載大小1452位元組(1518-18-40-8)進行ping測試。
- 乙太網路頭:14位元組
- IPv6頭:40位元組
- ICMP頭:8位元組
- ICMP負載:1452位元組
- FCS :4位元組
計算得出:1518位元組- 18位元組= MTU大小1500位元組。
經過測試,MTU大小1500位元組是可通的。接下來,我嘗試MTU大小1501位元組(icmp負載大小1453位元組),結果無法通行,符合資料的說明。
評論
- 在NGN環境中,確認MTU大小1500位元組是可通的。
- 從MTU大小1501位元組開始,封包將被丟棄。
L2TPv3(L2TP over IP)測試
根據先前的測試結果,NGN的MTU大小上限為1500字節,因此使用NGN VPN時,路由器需要將封包的MTU大小設定為1500位元組。接下來,我將驗證在客戶端發送的資料包中,可以不分片的MTU大小上限。
首先,我使用WireShark擷取測試PC01到測試PC02的ping封包,分析封包結構。 L2TPv3的封包結構為:
- 乙太網路頭:14位元組
- IPv6頭:40位元組
- L2TP會話頭:8位元組
- 原始資料負載:1452位元組
- FCS :4位元組
經過測試,icmp負載大小1410位元組的ping測試確認可通,而icmp負載大小1411位元組的ping測試則無法通行。
評論
在僅使用L2TPv3的環境中,客戶端所傳送的MTU大小最大為1438字節,且不會發生分片。
L2TPv3+IPsec測試
最後,我將驗證L2TPv3與IPsec結合使用的情況。再次使用WireShark擷取IPsec封包並進行分析。由於加密,重要部分看不見。
經過研究,我發現WireShark可以解密IPsec的套件。輸入解密所需的資訊後,再次進行封包捕獲,成功解密。
經過分析,IPsec的套件結構如下:
- 乙太網路頭:14位元組
- 原始IPv6頭:40字節
- SPI(ESP頭) :4位元組
- 序列(ESP頭) :4位元組
- ESP-AES(IV) :16位元組
- L2TPv3頭+ 原始資料負載:1422位元組
根據測試,icmp負載大小1372位元組的ping測試確認可通,而icmp負載大小1373位元組的ping測試則無法通行。
評論
在L2TPv3+IPsec的環境中,客戶端所傳送的MTU大小最大為1400字節,且不會發生分片。
總結
- 在NGN(IPv6 IPoE)環境中,MTU大小1500位元組是可通的。
- 從MTU大小1501位元組開始,封包將被丟棄。
- 在僅使用L2TPv3的環境中,客戶端所傳送的MTU大小最大為1438字節,且不會發生分片。
- 在L2TPv3+IPsec的環境中,客戶端所傳送的MTU大小最大為1400字節,且不會發生分片。
以上就是今天的測驗分析。感謝您閱讀到最後!如果您對VPN技術有更多興趣,請繼續關注我們的文章!