簡介
本文描述當呼叫流包括整合服務路由器(ISR)4431作為網關且保持音樂(MOH)失敗且被保持方保持靜默時所需的配置。
必要條件
需求
思科建議您瞭解:
採用元件
本檔案中的資訊是根據以下軟體版本:
- CUCM 9.x及更高版本
- 採用IOS XE軟體的ISR4431
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您已瞭解任何指令可能造成的影響。
問題
組播MOH配置在CUCM上,ISR4431配置為H.323網關。當外部呼叫方處於保持狀態時,它們不會聽到音樂,而是聽到靜音。
解決方案
步驟1.使網關上的H.323調試記錄到緩衝區,如下所示。
config t
no logging console
no logging monitor
no logging rate-limit
no logging queue-limit
logging buffered 2000000 debug
exit
debug voip ccapi inout
debug h225 asn1
debug h245 asn1
debug isdn q931
步驟2.運行命令clear log以清除日誌。
步驟3.運行show log命令以確認緩衝區已清除。
步驟4.發出測試呼叫,當呼叫被置於保留狀態時,檢查網關是否收到IP設定為「network '00000000'H」的H.245 OpenLogicalChannelAck消息
Jan 26 03:12:07.558: H245 MSC INCOMING PDU ::=
value MultimediaSystemControlMessage ::= response : openLogicalChannelAck :
{
forwardLogicalChannelNumber 4
forwardMultiplexAckParameters h2250LogicalChannelAckParameters :
}
mediaControlChannel unicastAddress : iPAddress :
{
network '00000000'H
tsapIdentifier 1
}
步驟5.上面顯示的代碼片斷表示:
- CUCM傳送帶有假IP地址的OpenLogicalChannelAck(全部為零(如上所述)或<CUCM_ip_address>作為MOH佔位符)
- 這是傳送單純媒體流的預設行為
- 如果呼叫流程中存在ISR 4431,無論其是單向還是雙向,CUCM都需要讓網關知道MOH IP地址和埠,以避免惡意攻擊
- ISR第2代(G2)平台(如2900和3900)從不檢查傳入即時傳輸協定(RTP)資料包的源IP地址和埠。但是,ISR 4431是第3代(G3)平台,它根據信令中確定的媒體IP地址/埠檢查傳入的RTP資料包
- 如果它們不匹配,ISR G3將丟棄資料包,這將在呼叫被置於保持狀態時導致靜默
步驟6.因此,要避免MOH故障,請在CUCM上使用以下替代方法為MOH啟用雙工流
- 登入到Cisco Unified CM管理頁面
- 選擇System > Service Parameters
- 選擇Server下拉選單,然後選擇Publisher節點
- 選擇Service下拉選單,然後選擇Cisco CallManager(Active)
- 按一下Advanced按鈕
- 找到「集群範圍引數(服務)」部分
- 已啟用雙工流:預設值為False(更改為True),然後按一下Save
附註:在上述配置更改後不需要重新啟動任何服務,並且不會對業務造成任何影響,因此可以在生產時執行。