将 Asterisk PJSIP 中继连接到 IllyVoIP

理解 registration、auth、endpoint 和 AOR,建立受限通话路径并区分注册与路由故障。

适用于直接管理、使用 res_pjsip 的 Asterisk,不使用旧 chan_sip 语法。若 FreePBX 等界面生成配置,请使用该界面,不要编辑生成文件;参阅 FreePBX 指南。应用前检查安装版本及对应文档。

开始前

本例使用密码认证线路。在 SIP Lines 获取 SIP 用户名、密码、服务器、目标端口和传输。不要用门户邮箱或密码。现有线路使用 IP 认证时,先检查依赖设备再考虑切换。

需要管理员权限、私人配置备份及可用内部分机。IllyVoIP SIP 线路连接 PBX 与 IllyVoIP;分机连接员工电话与 PBX,两者不是同一账户。

门户截图:主叫号码和音频选项,订阅信息已遮蔽。
门户截图:主叫号码和音频选项,订阅信息已遮蔽。

从一个测试分机和受控目标开始,不要立即迁移全办公室。PBX 已承载通话时,测试结束前保留原路由。

1. 建立相关对象

PJSIP 注册只是中继的一部分。使用 illy-auth、illy-registration、illy-aor、illy-endpoint 等明确名称。名称关联对象,不是凭据。具体文件取决于现有 includes 和配置管理方式。

字段使用值
authtype=auth;auth_type=userpass;username 和 password 来自线路
registrationoutbound_auth 指向 auth;server_uri 是服务器 SIP URI;client_uri 标识服务器上的用户
aor静态 contact 指向呼出所用 IllyVoIP 服务器 SIP URI
endpointaors 指向 aor;outbound_auth 指向 auth;context 指定受限呼入拨号计划
transport引用已正确配置的传输,不要在占用的地址/端口新增监听器
identify用 IP 识别 endpoint 时,仅关联已批准的入站 SIP 源地址

2. 在两处关联认证

将用户名和密码放入 auth,同时由 registration 和呼出 endpoint 引用。若只有注册引用凭据,可能注册成功但呼出失败。URI 形式为 sip:SIP_USERNAME@SIP_SERVER(client_uri)及 sip:SIP_SERVER(server_uri),加上所需端口/传输。以真实值替换占位符。

非必要保留现有传输。有些传输变更不仅需要 reload。不要仅因账户对象错误重启工作中的 PBX。先备份,遵循对应版本部署流程。

3. 隔离呼入与呼出 context

创建 from-illyvoip 等专用呼入 context,仅将预期标识发给已知分机、振铃组或 IVR,不要包含无限制内部/呼出 context。IP 识别前取得已批准信令来源;注册服务器名不代表所有入站来源。

编写 DID 匹配前观察受控来电的实际标识,可能是注册 contact 标识而非显示号码。匹配实际预期标识,不要添加能拨任意外线的万能规则。

4. 添加有限呼出测试路由

在仅测试分机可用的 context 中匹配指定目标,通过 endpoint 发送。形式:PJSIP/NUMBER@illy-endpoint。NUMBER 为归一化后目标。不要把拨号操作放入公开呼入 context。成功后仅扩大到业务需要的号码模式及分机。

5. 再修改前先检查状态

在 Asterisk CLI 查看 pjsip show registrations、pjsip show endpoints 和 pjsip show aors。检查对象及预期 AOR contact。注册状态不验证呼出计划。endpoint 缺失是配置/加载问题,不必然是密码被拒。

需要失败测试的 SIP 日志时,由管理员短暂收集私人跟踪后关闭 logger。日志可能有号码和认证信息。修改全局计时器、NAT 或编解码器前,对照门户记录中的目标和响应。

音频、主叫号码和安全

SIP 传输与媒体加密独立。门户音频模式需匹配 PBX;RTP、SDES-SRTP、DTLS-SRTP 不可互换。不要同时修改传输、编解码器和网络,以免无法判断哪个变更修复或破坏连接。

仅使用账户允许的呼出主叫号码。填入 PBX 不代表已验证。禁止匿名入站访问公开呼出路由,不要关闭防火墙。需要源 IP 限制时向支持取得当前允许地址,不要猜测。

员工使用前验收

  1. 分别检查中继和测试电话分机注册。
  2. 从指定分机呼叫并确认所用中继。先查余额和费率,测试可能收费。
  3. 检查双向音频和对方看到的号码,在获授权菜单测试按键。
  4. 对呼入,将活动 IllyVoIP 号码路由到 PBX SIP 线路,从外部拨打并确认内部目标。
  5. 确认无权限分机不能使用测试路由,然后再扩大员工访问。

记录时间、时区、分机、路由及公开通话编号。失败时连同 PBX 型号/版本交支持。SIP 响应码指南有助于描述错误,不要公开密码或未脱敏日志。

本指南依据官方文档和门户流程,不表示所有 PBX 版本都经过真实通话测试。紧急服务和特殊设备需独立配置及验证。

官方文档

FreePBX 请用图形界面指南