目錄

簡介

必要條件

需求

採用元件

慣例

設定

連線中繼設計注意事項和限制

配置指南

網路圖表

組態

驗證

疑難排解

疑難排解指令

相關資訊

簡介

中繼線（連線）是兩個語音埠之間的永久點對點通訊線路。connection trunk 命令在兩個VoIP網關之間建立永久的IP語音(VoIP)呼叫。它通過在兩個電話端點之間建立虛擬中繼連線來模擬中繼連線。對於連線的系統，T1中繼似乎直接連線在其之間。

必要條件

需求

這些平台支援VoIP連線中繼：

- Cisco 2600、3600和3700系列數位和類比介面

- Cisco 7200/7500系列數位介面

- 思科MC3810數位和類比介面

- Cisco 1750/1751和1760

注意：AS5300/AS5400/AS5800平台不支援或不支援連線中繼，因為它們不適用於具有大量流量的廣域網連線。

採用元件

本文中的資訊係根據以下軟體和硬體版本：

- 採用IP Plus功能集的Cisco IOS®軟體版本12.2(10a)

- Cisco 2610系列路由器

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路正在作用，請確保您已瞭解任何指令可能造成的影響。

慣例

如需文件慣例的詳細資訊，請參閱思科技術提示慣例。

設定

本節提供用於設定本文件中所述功能的資訊。

注意：要查詢有關本文檔中使用的命令的其他資訊，請使用命令查詢工具(僅限註冊客戶)

連線中繼設計注意事項和限制

- T1/E1通道關聯訊號(CAS)介面支援連線中繼模式。使用通用通道訊號傳送(CCS)的T1/E1介面不支援連線主幹；例如，QSIG和PRI Q.931。為接地啟動配置的外部交換局(FXO)埠不支援連線中繼。

- 連線中繼模式是永久連線；voIP呼叫始終保持連線，而不依賴於普通舊式電話服務(POTS)埠掛機或摘機。連線中繼具有靜態配置的終端，不需要使用者撥號來連線呼叫。它還允許附加呼叫信令（如hookflash或點對點hoot-n-holler）在兩個電話裝置之間通過IP網路傳遞。

- 以下語音埠組合支援連線中繼模式：

- 接收和傳輸(E & M)到E & M（相同型別）

- FXO到外部交換站(FXS)

- FXS到FXS（無訊號）

注意：這些語音埠組合允許在模擬到模擬、數字到數字和模擬到數字介面之間使用。此外，當您將FXS設定為FXS時，無法傳輸訊號，因為它不會是透明路徑。連線的裝置(FXO)將嘗試相互發出訊號。如果將語音路徑設定為始終開啟，則可能使此設計生效。將signal-type ext-signal配置為VoIP撥號對等體，並且路由器將不再等待信令而開啟語音路徑。

- 預設情況下，連線中繼T1 CAS到E1 CAS的對映不起作用。必須根據各種ABCD位信令的PBX支援，在網關上執行位順序操作，並且不一定始終有效。

- 連線中繼允許在FXO和FXS埠之間使用專用線路、自動關閉場外擴展(PLAR-OPX)型別的功能。這允許遠端站點（連線到FXS埠）在PBX中顯示為物理連線的站點。如果此遠端站未應答呼叫，則可以將呼叫轉接至集中語音郵件（如果在PBX上配置了該呼叫）。

- 連線中繼（例如PLAR）不需要路由器從電話裝置收集數字。永久性VoIP呼叫是在路由器啟動並建立IP連線時建立的。因此，現有客戶撥號方案不必更改。

- 連線中繼可以傳遞某些電話訊號，例如hookflash，但它不會傳遞專有PBX訊號。這不是透明CCS(T-CSS)功能。

- 每個語音埠定義一個連線中繼，例如PLAR。這表示語音連線埠不能在連線中繼模式和收集撥出數字模式中操作。唯一可能並不完全期望的例項是在遠端辦公室中，該遠端辦公室也需要在本地分機之間撥號，而無需使用集中式PBX。這將要求呼叫的路徑通過VoIP網路回退，而不是在路由器內進行交換。通常，這不應成為問題。

配置指南

必須在中繼的兩端配置連線中繼。使用模擬介面配置連線中繼時，必須按語音埠定義該連線中繼。使用數字介面配置連線中繼時，有以下幾種選擇：

- 您可以為每個DS0（每個時隙）定義單獨的ds0-group命令，並且可以使用connection trunk命令定義建立的每個語音埠。這可確保在數字中繼上保留DS0到DS0的對映。

- 您可以定義單個ds0-group命令來處理所有DS0，也可以在語音埠上定義單個connection trunk命令。這減少了所需的手動配置量，但是無法保證中繼任一端的DS0一對一對映。此外，每次路由器重新載入時，對映可能與上次不同。此外，此配置使故障排除更加複雜，因為如果不斷開整個中繼組，您將無法將問題隔離到單個（甚至幾個）時隙。對於在PBX的任一端具有專有信令的T-CCS，也不建議使用此配置，因為如果沒有一對一對映，它無法可靠地傳送信令通道。

- 建議使用connection trunk string命令後指定的answer-mode關鍵字配置連線的一端。這使得樹幹的一面成為「主面」。 含有answer-mode關鍵字的閘道（路由器）然後是「從屬端」。 answer-mode命令指定網關不會嘗試啟動中繼連線，而是會在建立中繼之前等待傳入呼叫。此配置方案可最大程度地減少路由器啟動中繼所需的時間，並確保當兩個網關之間的連線斷開時，中繼會斷開。否則，當連線再次啟動時，網關可能不會嘗試重新建立中繼。

注意：當您發出connection trunk命令時，必須在語音埠上執行shutdown/no shutdown命令序列。

網路圖表

本檔案使用以下兩種網路設定：

上圖說明數位到數位的情況，其中路由器兩端都有數位連結。

上圖說明了數字到模擬場景，一端是數字，另一端是模擬。

組態

本檔案會使用以下設定：

- 數位到數位

- maui-slt-01

- maui-rtr-07

- 數模轉換

- maui-slt-01

- maui-rtr-07

第一個配置（數字到數字）顯示了具有數字T1介面的兩個路由器之間的連線中繼的典型配置。在本示例中，路由器在PBX之間提供真正的連線線替換。

數字到數字 — maui-slt-01

version 12.2

service timestamps debug datetime msec

service timestamps log datetime msec

service password-encryption

!

hostname maui-slt-01

!

voice-card 1

!

controller T1 1/0

framing esf

linecode b8zs

ds0-group 1 timeslots 1 type e & m-wink-start

ds0-group 2 timeslots 2 type e & m-wink-start

clock source line

!--- The ds0-group command creates the logical voice-ports: !--- voice-port 1/0:1 and voice-port 1/0:2.

!

voice-port 1/0:1

connection trunk 2000

!--- “master side” !--- This starts the trunk connection using digits 2000 to match !--- a VoIP dial-peer. The digits are generated internally by the !--- router and are not received from the voice-port.

!

voice-port 1/0:2

connection trunk 2001

!

dial-peer voice 2 voip

destination-pattern 200.

!--- Matches connection trunk string 2000 and 2001.

dtmf-relay h245-alphanumeric

session target ipv4:192.168.100.2

ip qos dscp cs5 media

!

dial-peer voice 1 pots

destination-pattern 1000

port 1/0:1

!--- This dial-peer maps to maui-rtr-07’s voice-port 1/0:1.

!

dial-peer voice 3 pots

destination-pattern 1001

port 1/0:2

!--- This dial-peer maps to maui-rtr-07’s voice-port 1/0:2.

!

interface Serial0/1

ip address 192.168.100.1 255.255.255.0

數字到數字 — maui-rtr-07

version 12.2

service timestamps debug uptime

service timestamps log uptime

service password-encryption

!

hostname maui-rtr-07

!

voice-card 1

!

controller T1 1/0

framing esf

linecode b8zs

ds0-group 1 timeslots 1 type e & m-wink-start

ds0-group 2 timeslots 2 type e & m-wink-start

clock source line

!

voice-port 1/0:1

connection trunk 1000 answer-mode

!--- “slave side” !--- The answer-mode specifies that the router should not attempt !--- to initiate a trunk connection, but it should wait for an !--- incoming call before it establishes the trunk.

!

voice-port 1/0:2

connection trunk 1001 answer-mode

!

dial-peer voice 1 voip

destination-pattern 100.

dtmf-relay h245-alphanumeric

session target ipv4:192.168.100.1

ip qos dscp cs5 media

!

dial-peer voice 2 pots

destination-pattern 2000

port 1/0:1

!--- This dial-peer terminates the connection !--- from maui-slt-01 voice-port 1/0:1.

!

dial-peer voice 3 pots

destination-pattern 2001

port 1/0:2

!--- This dial-peer terminates the connection !--- from maui-slt-01 voice-port 1/0:2.

!

interface Serial0/1

ip address 192.168.100.2 255.255.255.0

clockrate 128000

!

第二個配置（數位到模擬）顯示兩台相似路由器（一台具有數字T1介面，另一台具有模擬介面）之間的連線中繼的典型配置。介面型別必須相同（例如，E & M切換到E & M切換，E & M切換到E & M立即切換，FXO切換到FXS切換）。 在我們的示例中，FXO環啟動是在數字T1介面上發出信令，並且在相應端存在具有FXS環啟動信令的模擬FXS埠。

數位到模擬 — maui-slt-01

version 12.2

service timestamps debug datetime msec

service timestamps log datetime msec

service password-encryption

!

hostname maui-slt-01

!

voice vad-time 40000

!

voice-card 1

!

controller T1 1/0

framing esf

linecode b8zs

ds0-group 1 timeslots 1 type fxo-loopstart

clock source line

!--- The ds0-group command creates the logical voice-ports: !--- voice-port 1/0:1 and voice-port 1/0:2.

!

voice-port 1/0:1

connection trunk 2000

!--- “master side” !--- This starts the trunk connection using digits 2000 to match !--- a VoIP dial-peer. The digits are generated internally by the !--- router and are not received from the voice-port.

!

!

!

dial-peer voice 2 voip

destination-pattern 200.

!--- Matches connection trunk string 2000 and 2001.

dtmf-relay h245-alphanumeric

session target ipv4:192.168.100.2

ip qos dscp cs5 media

!

dial-peer voice 1 pots

destination-pattern 1000

port 1/0:1

!--- This dial-peer maps to maui-rtr-07's voice-port 1/0/0.

!

!

!

interface Serial0/1

ip address 192.168.100.1 255.255.255.0

!

數字到模擬 — maui-rtr-07

version 12.2

service timestamps debug uptime

service timestamps log uptime

service password-encryption

!

hostname maui-rtr-07

!

!

voice-port 1/0/0

connection trunk 1000 answer-mode

!--- “slave side” !--- The answer-mode specifies that the router should not attempt !--- to initiate a trunk connection, but it should wait for an !--- incoming call before it establishes the trunk.

!

!

dial-peer voice 1 voip

destination-pattern 100.

dtmf-relay h245-alphanumeric

session target ipv4:192.168.100.1

ip qos dscp cs5 media

!

dial-peer voice 2 pots

destination-pattern 2000

port 1/0/0

!--- This dial-peer terminates the connection !--- from maui-slt-01 voice-port 1/0:1.

!

!

!

interface Serial0/1

ip address 192.168.100.2 255.255.255.0

clockrate 128000

!

驗證

本節提供的資訊可用於確認您的組態是否正常運作。

輸出直譯器工具(僅供註冊客戶使用)支援某些show命令，此工具可讓您檢視show命令輸出的分析。

- show voice call summary — 用於驗證所有中繼是否都已啟動並處於S_CONNECT狀態。

當中繼啟動時，控制檯將顯示消息%HTSP-5-UPDOWN:Trunk port(channel)[1/0:1(1)] is up。

以下是show voice call summary命令的輸出示例：

PORT         CODEC    VAD VTSP STATE            VPM STATE

============ ======== === ==================== ======================

3/0:0.1       g729r8    n  S_CONNECT             S_TRUNKED

3/0:1.2       g729r8    n  S_CONNECT             S_TRUNKED

3/0:2.3       g729r8    n  S_CONNECT             S_TRUNKED

未啟動的中繼將顯示為S_TRUNK_PEND:

PORT         CODEC    VAD VTSP STATE            VPM STATE

============ ======== === ==================== ======================

3/0:0.1       -             -      -             S_TRUNK_PEND

3/0:1.2       g729r8    n  S_CONNECT             S_TRUNKED

3/0:2.3       g729r8    n  S_CONNECT             S_TRUNKED

疑難排解

本節提供的資訊可用於對組態進行疑難排解。

疑難排解指令

輸出直譯器工具(僅供註冊客戶使用)支援某些show命令，此工具可讓您檢視show命令輸出的分析。

注意：發出debug指令之前，請先參閱有關Debug指令的重要資訊。

- 顯示呼叫歷史記錄語音 | Include DisconnectText — 顯示最近幾次失敗呼叫的斷開原因。

- show voice call summary — 顯示兩個呼叫段上的活動呼叫。

- show voice dsp — 顯示數位訊號處理器(DSP)正在使用中並且正在處理資料包。

有關VoIP呼叫故障排除的詳細資訊，請參閱VoIP呼叫基礎故障排除和調試和VoIP調試命令。

配置連線中繼後，兩台路由器上的關聯語音埠必須是shutdown/no shutdown。如果您將使用者忙碌視為斷開連線的原因，則此操作也會清除語音埠。

以下是show voice dsp命令的輸出示例：

BOOT                     PAK

TYPE DSP CH CODEC   VERS STATE STATE  RST AI PORT    TS ABORT   TX/RX-PAK-CNT

==== === == ======= ==== ===== ====== === == ======= == ===== ===============

C549 000 01 g729r8   3.4 busy  idle     0  0 3/0:12  13     0 3522765/3578769

00 g729r8   .41 busy  idle     0  0 3/0:0    1     0 3505023/3560759

C549 001 01 g729r8   3.4 busy  idle     0  0 3/0:13  14     0 3522761/3578601

00 g729r8   .41 busy  idle     0  0 3/0:1    2     0 3522794/3578579

下一個示例輸出是debug voip ccapi inout命令最常見的調試輸出。此調試是在被叫端缺少POTS對等體的常見錯誤下進行的。在本例中，模擬端路由器沒有POTS對等體來終止中繼；在這種情況下，數字呼叫端將進行以下調試：

maui-slt-01#

*Mar  1 00:11:19.903: cc_api_call_setup_ind (vdbPtr=0x620B2DE8,

callInfo={called=2000,called_oct3=0x81,calling=,calling_oct3=0x0,

calling_oct3a=0x0,calling_xlated=false,subscriber_type_str=RegularLine

,fdest=1,peer_tag=2, prog_ind=3},callID=0x621C45F0)

*Mar  1 00:11:19.903: cc_api_call_setup_ind type 3 , prot 0

*Mar  1 00:11:19.903: cc_process_call_setup_ind (event=0x62332908)

*Mar  1 00:11:19.903: >>>>CCAPI handed cid 3 with tag 2 to app "DEFAULT"

*Mar  1 00:11:19.907: sess_appl: ev(24=CC_EV_CALL_SETUP_IND), cid(3), disp(0)

*Mar  1 00:11:19.907: sess_appl: ev(SSA_EV_CALL_SETUP_IND), cid(3), disp(0)

*Mar  1 00:11:19.907: ssaCallSetupInd

*Mar  1 00:11:19.907: ccCallSetContext (callID=0x3, context=0x621C4E90)

*Mar  1 00:11:19.907: ssaCallSetupInd cid(3), st(SSA_CS_MAPPING),oldst(0),

ev(24)ev->e.evCallSetupInd.nCallInfo.finalDestFlag = 1

*Mar  1 00:11:19.907: ssaCallSetupInd finalDest cllng(1000), clled(2000)

*Mar  1 00:11:19.907: ssaCallSetupInd cid(3), st(SSA_CS_CALL_SETTING),

oldst(0), ev(24)dpMatchPeersMoreArg result= 0

*Mar  1 00:11:19.907: ssaSetupPeer cid(3) peer list:

tag(1) called number (2000)

*Mar  1 00:11:19.907: ssaSetupPeer cid(3), destPat(2000), matched(1),

prefix(), peer(61EE565C), peer->encapType (2)

*Mar  1 00:11:19.907: ccCallProceeding (callID=0x3, prog_ind=0x0)

*Mar  1 00:11:19.907: ccCallSetupRequest (Inbound call = 0x3, outbound

peer =1, dest=, params=0x6233BD30 mode=0, *callID=0x6233C098, prog_ind = 3)

*Mar  1 00:11:19.907: ccCallSetupRequest numbering_type 0x81

*Mar  1 00:11:19.907: ccCallSetupRequest encapType 2 clid_restrict_disable 1

null_orig_clg 1 clid_transparent 0 callingNumber 1000

*Mar 1 00:11:19.907: dest pattern 2..., called 2000, digit_strip 0

*Mar 1 00:11:19.907: callingNumber=1000, calledNumber=2000, redirectNumber=

display_info= calling_oct3a=0

*Mar 1 00:11:19.907: accountNumber=, finalDestFlag=1,

guid=1d0d.9a0f.14f0.11cc.8008.b3df.433e.6402

*Mar 1 00:11:19.911: peer_tag=1

*Mar 1 00:11:19.911: ccIFCallSetupRequestPrivate: (vdbPtr=0x621D74DC, dest=,

callParams={called=2000,called_oct3=0x81, calling=1000,calling_oct3=0x0,

calling_xlated=false, subscriber_type_str=RegularLine, fdest=1,

voice_peer_tag=1}, mode=0x0) vdbPtr type = 1

*Mar 1 00:11:19.911: ccIFCallSetupRequestPrivate: (vdbPtr=0x621D74DC, dest=,

callParams={called=2000, called_oct3 0x81, calling=1000,calling_oct3 0x0,

calling_xlated=false, fdest=1, voice_peer_tag=1}, mode=0x0, xltrc=-5)

*Mar 1 00:11:19.911: ccSaveDialpeerTag (callID=0x3, dialpeer_tag=0x1)

*Mar 1 00:11:19.911: ccCallSetContext (callID=0x4, context=0x624C3094)

*Mar 1 00:11:19.911: ccCallReportDigits (callID=0x3, enable=0x0)

*Mar 1 00:11:19.911: cc_api_call_report_digits_done (vdbPtr=0x620B2DE8,

callID=0x3, disp=0)

*Mar 1 00:11:19.911: sess_appl: ev(52=CC_EV_CALL_REPORT_DIGITS_DONE),

cid(3), disp(0)

*Mar 1 00:11:19.911: cid(3)st(SSA_CS_CALL_SETTING)ev

(SSA_EV_CALL_REPORT_DIGITS_DONE)oldst(SSA_CS_MAPPING)

cfid(-1)csize(0)in(1)fDest(1)

*Mar 1 00:11:19.911: -cid2(4)st2(SSA_CS_CALL_SETTING)oldst2(SSA_CS_MAPPING)

*Mar 1 00:11:19.911: ssaReportDigitsDone cid(3) peer list: (empty)

*Mar 1 00:11:19.911: ssaReportDigitsDone callid=3 Reporting disabled.

*Mar 1 00:11:19.947: cc_api_call_disconnected(vdbPtr=0x621D74DC,

callID=0x4, cause=0x1)

*Mar 1 00:11:19.947: sess_appl: ev(11=CC_EV_CALL_DISCONNECTED), cid(4), disp(0)

*Mar 1 00:11:19.947: cid(4)st(SSA_CS_CALL_SETTING)ev(SSA_EV_CALL_DISCONNECTED)

oldst(SSA_CS_MAPPING)cfid(-1)csize(0)in(0)fDest(0)

*Mar 1 00:11:19.947: -cid2(3)st2(SSA_CS_CALL_SETTING)oldst2(SSA_CS_CALL_SETTING)

*Mar 1 00:11:19.951: ssaDiscSetting

*Mar 1 00:11:19.951: ssa: Disconnected cid(4) state(1) cause(0x1)

*Mar 1 00:11:19.951: ccCallDisconnect (callID=0x4, cause=0x1 tag=0x0)

*Mar 1 00:11:19.951: ccCallDisconnect (callID=0x3, cause=0x1 tag=0x0)

*Mar 1 00:11:19.951: cc_api_call_disconnect_done(vdbPtr=0x620B2DE8, callID=0x3,

disp=0, tag=0x0)

*Mar 1 00:11:19.955: sess_appl: ev(12=CC_EV_CALL_DISCONNECT_DONE), cid(3),

disp(0)

*Mar 1 00:11:19.955: cid(3)st(SSA_CS_DISCONNECTING)ev

(SSA_EV_CALL_DISCONNECT_DONE)oldst(SSA_CS_CALL_SETTING)

cfid(-1)csize(0)in(1)fDest(1)

*Mar 1 00:11:19.955: -cid2(4)st2(SSA_CS_DISCONNECTING)oldst2(SSA_CS_CALL_SETTING)

*Mar 1 00:11:19.955: ssaDisconnectDone

*Mar 1 00:11:19.963: cc_api_icpif: expect factor = 0

*Mar 1 00:11:19.963: cc_api_call_disconnect_done(vdbPtr=0x621D74DC,

callID=0x4, disp=0, tag=0x0)

*Mar 1 00:11:19.967: sess_appl: ev(12=CC_EV_CALL_DISCONNECT_DONE),

cid(4), disp(0)

*Mar 1 00:11:19.967: cid(4)st(SSA_CS_DISCONNECTING)ev

(SSA_EV_CALL_DISCONNECT_DONE)oldst(SSA_CS_CALL_SETTING)

cfid(-1)csize(1)in(0)fDest(0)

*Mar 1 00:11:19.967: ssaDisconnectDone

相關資訊

- 配置VoIP網關的連線面板

- 疑難排解與偵錯 VoIP 通話基本功能

- VoIP Debug指令

- 語音技術支援

- 語音和IP通訊產品支援

- Cisco IP電話故障排除

- 技術支援 - Cisco Systems