大きなSouthernサイトと小さなNorthernサイトの2つのサイトがあり、それらの間にVPNが2つのCiscoPIXファイアウォールで定義されています。このVPNを介して、ShoretelIP電話のトラフィックは他のすべてのネットワークトラフィックと同様に移動します。最近、小さな北部のオフィスをBt Infinity(ファイバー)に切り替えました。すべてのシステムが完全に機能しました。つまり、先週まで完全に機能していました。その日は何も変わらないことに注意してください。
マンチェスターからVPNを経由するトラフィックは、電話システムを除いて、あらゆる面で機能します。 Shoretelの飼いならされた電話エンジニアは、これはすべて、トラフィックでDF(フラグメント化しない)ビットがオンになっていて、必要なペイロードが1472である電話システムパケットが原因であると言っています。 IPSecオーバーヘッド、1472はラインMTUに適合しません。
南部のオフィスから北部のオフィスにpingMTUテストを実行すると、次のようになります。
C:\>ping <NorthernOfficeServerIP> -f -l 1472
Pinging <NorthernOfficeServerIP> with 1472 bytes of data:
Reply from <OutsideInterfaceOfSourthernPixIP>: Packet needs to be fragmented but DF set.
Packet needs to be fragmented but DF set.
PIXでのVPN設定は次のとおりです。
sysopt connection permit-ipsec
crypto ipsec transform-set chevelle esp-des esp-md5-hmac
crypto map transam 1 ipsec-isakmp
crypto map transam 1 match address 101
crypto map transam 1 set peer <Peer IP>
crypto map transam 1 set transform-set chevelle
crypto map transam interface outside
isakmp enable outside
isakmp key ******** address <Peer IP> netmask 255.255.255.0
isakmp keepalive 10
isakmp nat-traversal 20
isakmp policy 1 authentication pre-share
isakmp policy 1 encryption des
isakmp policy 1 hash md5
isakmp policy 1 group 1
isakmp policy 1 lifetime 86400
PIXで最初に試したのは、次のようにパケットのDFフラグ)をクリアすることでした。
pix(config)# crypto ipsec df-bit clear-df outside
残念ながら、これは次のようになります。
エラー:認識されない使用法:[no] crypto ipsec {transform-set | security-association} ... helpまたは '?'と入力します使用可能なコマンドのリストについては。
しかし、私たちのPIXファームウェアは非常に由緒あるものであり、ショーバージョンは私に次のことを提供します。
Cisco PIX Firewall Version 6.3(5)
Cisco PIX Device Manager Version 3.0(4)
Compiled on Thu 04-Aug-05 21:40 by morlee
chathampix up 14 hours 54 mins
Hardware: PIX-506E, 32 MB RAM, CPU Pentium II 300 MHz
Flash E28F640J3 @ 0x300, 8MB
BIOS Flash AM29F400B @ 0xfffd8000, 32KB
PIXのMTUサイズを変更してみましたが、問題を軽減するために、外部インターフェイスを1500、1492(PPPの場合は8バイト)、BTの推奨値を1458にしました。 VPNの56バイトのオーバーヘッドは、DFビットが1472バイトに設定されているパケットが常にVPNによってドロップされることを意味します。
このファームウェアを使用するPIXの「pix(config)#crypto ipsec df-bit clear-dfoutside」と同等のコマンドを知っている人はいますか?それとも他に何かアイデアはありますか?
更新:
北部PIXのshowcrypto ipsecsaは次のとおりです。
interface: outside
Crypto map tag: transam, local addr. <NorthernOutsideInterfaceIP>
local ident (addr/mask/prot/port): (192.168.16.0/255.255.255.0/0/0)
remote ident (addr/mask/prot/port): (192.168.0.0/255.255.255.0/0/0)
current_peer: <SouthernOutsideInterfaceIP>:500
PERMIT, flags={Origin_is_acl,}
#pkts encaps: 107592, #pkts encrypt: 107592, #pkts digest 107592
#pkts decaps: 114302, #pkts decrypt: 114302, #pkts verify 114302
#pkts compressed: 0, #pkts decompressed: 0
#pkts not compressed: 0, #pkts compr. failed: 0, #pkts decompress failed: 0
#send errors 8, #recv errors 0
local crypto endpt.: <NorthernOutsideInterfaceIP>, remote crypto endpt.: <SouthernOutsideInterfaceIP>
path mtu 1492, ipsec overhead 56, media mtu 1492
current outbound spi: 4ada0b77
inbound esp sas:
spi: 0xe7c2815(243017749)
transform: esp-des esp-md5-hmac ,
in use settings ={Tunnel, }
slot: 0, conn id: 1, crypto map: transam
sa timing: remaining key lifetime (k/sec): (4516828/21982)
IV size: 8 bytes
replay detection support: Y
inbound ah sas:
inbound pcp sas:
outbound esp sas:
spi: 0x4ada0b77(1255803767)
transform: esp-des esp-md5-hmac ,
in use settings ={Tunnel, }
slot: 0, conn id: 2, crypto map: transam
sa timing: remaining key lifetime (k/sec): (4598687/21980)
IV size: 8 bytes
replay detection support: Y
outbound ah sas:
outbound pcp sas:
また、SouthernPIXとNorthernPIXのMTUは次のとおりです。
mtu outside 1500
mtu inside 1500
MTUは、私が信じているPIXによってPPPの8バイト未満に自動的に設定されます。
IPSecオーバーヘッドが追加された後にアウトバウンドインターフェイスMTUを超えるトラフィックの場合、PIX/ASA側にいくつかの「修正」があります。
PIX/ASAのMTUを小さい数値(1380が一般的)に変更して、送信ステーションに反応を強制します。必ずしも望ましい方法であるとは限りません。
MSSを変更します(TCPのみ、UDPには役立ちません)
PIX/ASAフラグメントを使用します。
内部IPヘッダーにdf-bitが設定されていて、IPSecトンネルを通過するためにフラグメンテーションが必要な場合は、PIX/ASAがdf-bitをクリアできるようにすることもオプションです。
df-bitをクリアするには、PIX/ASA OS 7.0以降が必要であることに注意してください。 「由緒ある」PIX6.3(5)はそれをカットしません。
さらに重要な質問は、VoIPトラフィックがMTUをまったくトリップさせている理由です。私が知っているすべてのVoIPコーデック(非常に一般的なG.711およびG.729を含む)は、「パケット」ごとに160バイト未満のコーデックペイロードを生成します。 RTP、UDP、およびIPオーバーヘッドを追加します。合計で約40バイト、L2ペイロードサイズが200バイト以下になります。 IPSec ESP用にさらに56バイトを追加しますが、それでも通常のイーサネットインターフェイスMTUにはほど遠いです。
1472バイトのL2ペイロードを必要とするネットワークを介してプッシュしているVoIP管理者は何ですか?
参照: