ネットワーク

トンネルインターフェースのMTU、MSS

参考
https://jpn.nec.com/univerge/ix/faq/ipsec-ike.html#Q1-8

数値は上記サイトを参照

  • X + B + C + D + E = 出力回線MTUサイズ
  • X = TunnelインターフェースMTU + A
  • A = 2byte(固定値):パディング長(1byte) + 次ヘッダ番号(1byte)
  • B = 認証データ:MD5/SHA1(12byte)
  • :SHA256(16byte)
  • :SHA384(24byte)
  • :SHA512(32byte)
  • C = Initial Vector:DES/3DES(8byte)、AES(16byte)
  • D = ESPヘッダ:8byte固定
  • E = IPヘッダ:IPv4(20byte)、IPv6(40byte)

①出力回線MTU=1500byte、認証データ=SHA512(32byte)、Initial Vector=AES(16byte)、IPヘッダ:ipv4(20byte)の場合、
X=1500-B-C-D-E=1500-32-16-8-20=1424
トンネルインターフェスMTU=(1424/16の整数部(少数点以下切り捨てした値))×16-2=89.0の整数部89×16-2=1424-2=1422byte になる。


②出力回線MTU=1454byte、認証データ=SHA512(32byte)、Initial Vector=AES(16byte)、IPヘッダ:ipv4(20byte)の場合、
X=1500-B-C-D-E=1454-32-16-8-20=1378
トンネルインターフェスMTU=(1378/16の整数部(少数点以下切り捨てした値))×16-2=86.125の整数部86×16-2=1376-2=1374byte になる。

なぜ16で割って整数部のみに再度16を書けているかというと、
AESのデータは、16byteの倍数である必要があるため、上記②でいうと1378の中で最大の16の倍数を計算する必要がある。
そのため、16で割って、その整数部に再度16をかけてあげる。

-ネットワーク