投げ銭

★当サイトへの投げ銭(PayPal)★

LINK


(無償)
logo
世界中で使われるISO標準オフィスソフト(MSオフィス互換)
The Document Foundation Wiki

人気の投稿(1ヶ月間)

Ad

Ad

投げ銭

★当サイトへの投げ銭(PayPal)★

2014年5月22日木曜日

Asterisk11でsnomのIP電話機から発信できないSRTP問題が解決した

Asterisk 11 の子機として、snom社のデフォルトに設定されたIP電話機を使ったとき、エラーで発信できない問題が発生したが対処できた。

そのとき、次のようなエラーがAsterisk 11のコンソールに現れて発信できなかった。
"We are requesting SRTP for audio, but they responded without it!"

snom社のIP電話機は、snom360、snom370を使っていた。
Asterisk 1.8(SRTPモジュールをインストールせず) を使っていたときには、発信ができない問題はなかった。
Asterisk 11 に変更すると、SRTP関係のエラーで発信ができなくなってしまった。

Asterisk 11は、次のリンク先の方法で行っている。
http://akira-arets.blogspot.jp/2014/05/centos65asterisk11yum.html


調べたところ、どうやら、snomのIP電話機は現時点では、このAsterisk 11に標準設定では対応していないらしいことがわかった
対応させるには、snom電話機のGUIで、設定を一箇所変更する必要がある。



■設定方法

対処方法は二つあるので、いずれかを用いる。
いずれも、snom電話機のGUIから設定を行う。
変更後には、snom電話機を子機としてAsterisk 11で、ただちに発信できるようになった。


○方法1

メディアパケット(RTP)を暗号化して運用したい場合にはこの方法を採用する。

ただし、Asterisk 11では発信できるようになっても、逆に旧バージョンのAsterisk 1.8(SRTPなし) では発信できなくなった。
Asterisk 11での運用に完全に切り替える場合にはこの方法を採用すればよいと思う。


Setup項目から、SIP接続を管理している各Identityを開き、RTPタブにある次の二項目を変更する。
・「RTP/SAVP:」の値を、「optional」(もしくは、「mandatory」)に設定する。
・「RTP Encryption:」の値を、「on」に設定する。
変更後、saveボタンを押して保存しておく。



○方法2

メディアパケット(RTP)を暗号化せずに運用する場合にはこの方法を採用する。

Asterisk 1.8(SRTPなし) でも発信できた。


Setup項目から、SIP接続を管理している各Identityを開き、RTPタブにある次の項目を変更する。
・「RTP Encryption:」の値を、「off」に設定する。
変更後、saveボタンを押して保存しておく。



■設定したオプション値についての説明

「RTP encryption」 が、"on"になっている場合、「RTP/SAVP」の設定が次のように考慮される。

"mandatory"に設定すると、snom電話機はAsteriskとのセッション構築において、そのSDPで、RTP/SAVPを含む「m= 」ラインのみを取り扱うようになる。

"optional"に設定すると、snom電話機はAsteriskとのセッション構築において、そのSDPで、複数の「m= 」ラインを取り扱うようになる。
これによって、RTP/SAVP(優先) と、RTP/AVPが共に取り扱えるようになる。


現時点で、snom電話機でデフォルトでは、「RTP/SAVP」の設定は、"off"になっている。
このような設定になっているのは、snom社のSIPプロキシが、RTP/SAVP や複数の「m= 」を扱うことができないためらしい。



(参考)

・[Resolved] SRTP not compliant with Asterisk 1.8 and 10 - RFC4568
< https://forum.snom.com/index.php?showtopic=10381 > 2014年05月21日

・SRTP not working with some devices (Eg snom320) - Message "We are requesting SRTP for audio, but they responded without it!"
< https://issues.asterisk.org/jira/browse/ASTERISK-20234 > 2014年05月21日

・Settings/user savp
< http://wiki.snom.com/wiki/index.php/Settings/user_savp > 2014年05月21日

2014年5月21日水曜日

【Linux CentOS 6.5 64bit minimal】Asterisk11をYUMを使って専用リポジトリからダウンロードしインストールする

Asterisk公式リポジトリは廃止された。(2017年5月4日時点)
リポジトリのパッケージは最新のものに更新されていない。しかし、それでも利用することは可能だった。

下に挙げるページでは、CentOS 6.9 64bit minimalに、Asterisk 11.17.1 をyumで導入する手順を記している。

http://akira-arets.blogspot.jp/2017/04/centos68-asterisk-from-repo.html



※ところで、以下は、まだリポジトリが公式だったときに、Asteriskを導入した記録である。

Asteriskは、YUMを使ってCentOS 6などにインストールすることができる。
YUM用いることで、インストールやアップデートがとても容易になる。
Asterisk専用のリポジトリを追加したCentOS 6.5で、YUMコマンドを実行するだけだ。

対応するAsteriskのバージョンは、Active Repositories に書いてある通り。


以下の手順は、CentOS 6.5 64bit minimal に、Long Term SupportのAsterisk 11をインストールするものだ。

Asterisk本体(依存するパッケージを含む)、設定ファイル、保留音をインストールしている。

インストールの前には、システムのアップデートを行った。



■CentOS 6.5 64bit minimal のバージョン情報を表示させた

[root@asterisk ~]# uname -a
Linux asterisk 2.6.32-431.11.2.el6.x86_64 #1 SMP Tue Mar 25 19:59:55 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux




■CentOS 6.5 64bit minimal に、Asterisk専用YUMリポジトリを追加した

[root@asterisk ~]# yum localinstall http://packages.asterisk.org/centos/6/current/i386/RPMS/asterisknow-version-3.0.1-2_centos6.noarch.rpm
Installed:
  asterisknow-version.noarch 0:3.0.1-2_centos6

Dependency Installed:
  dnsmasq.x86_64 0:2.48-13.el6

Complete!



■Asterisk11本体と設定ファイルをインストールした

すでに自分で、epelリポジトリの設定を行っていたため、
一部のパッケージでepelに存在する新しいバージョンのものが取得されてしまった。
(エラーが発生する場合は、epelリポジトリを一時的に無効にしておく必要があった。)

[root@asterisk ~]# yum install asterisk asterisk-configs --enablerepo=asterisk-11
 * base: ftp.iij.ad.jp
 * epel: ftp.riken.jp
 * extras: ftp.iij.ad.jp
 * updates: ftp.iij.ad.jp
Setting up Install Process
Resolving Dependencies

Dependencies Resolved

========================================================================================================================================================================
 Package                                          Arch                  Version                                                   Repository                       Size
========================================================================================================================================================================
Installing:
 asterisk                                         x86_64                11.8.1-1_centos6                                          asterisk-11                     3.6 k
 asterisk-configs                                 x86_64                11.8.1-1_centos6                                          asterisk-11                     189 k
Installing for dependencies:
 asterisk-core                                    x86_64                11.8.1-1_centos6                                          asterisk-11                     8.2 M
 asterisk-dahdi                                   x86_64                11.8.1-1_centos6                                          asterisk-11                     884 k
 asterisk-doc                                     x86_64                11.8.1-1_centos6                                          asterisk-11                      13 k
 asterisk-sounds-core-en                          noarch                1.4.25-1.el6                                              epel                             19 k
 asterisk-sounds-core-en-gsm                      noarch                1.4.25-1.el6                                              epel                            2.1 M
 asterisk-voicemail                               x86_64                11.8.1-1_centos6                                          asterisk-11                     269 k
 dahdi-firmware                                   noarch                2.0.6-1_centos6                                           digium-current                  2.4 k
 dahdi-firmware-hx8                               noarch                2.06-1_centos6                                            digium-current                   28 k
 dahdi-firmware-oct6114-032                       noarch                1.05.01-1_centos6                                         digium-current                  156 k
 dahdi-firmware-oct6114-064                       noarch                1.05.01-1_centos6                                         digium-current                  155 k
 dahdi-firmware-oct6114-128                       noarch                1.05.01-1_centos6                                         digium-current                  155 k
 dahdi-firmware-oct6114-256                       noarch                1.05.01-1_centos6                                         digium-current                  161 k
 dahdi-firmware-tc400m                            noarch                MR6.12-1_centos6                                          digium-current                  1.7 M
 dahdi-firmware-te133                             noarch                6f0017-1_centos6                                          digium-current                  220 k
 dahdi-firmware-te134                             noarch                6f0017-1_centos6                                          digium-current                  175 k
 dahdi-firmware-te820                             noarch                1.76-1_centos6                                            digium-current                   53 k
 dahdi-firmware-vpmoct032                         noarch                1.12.0-1_centos6                                          digium-current                  436 k
 dahdi-linux                                      x86_64                2.9.0-1_centos6                                           asterisk-current                2.5 k
 gnutls                                           x86_64                2.8.5-13.el6_5                                            updates                         346 k
 gsm                                              x86_64                1.0.13-4.el6                                              base                             27 k
 iksemel                                          x86_64                1.4-2.el6                                                 epel                             48 k
 kmod-dahdi-linux                                 x86_64                2.9.0-1_centos6.2.6.32_279.14.1.el6.x86_64                asterisk-current                4.2 M
 kmod-dahdi-linux-fwload-vpmadt032                x86_64                2.9.0-1_centos6.2.6.32_279.14.1.el6.x86_64                digium-current                  129 k
 libopenr2                                        x86_64                1.2.0-1_centos6                                           asterisk-current                101 k
 libpri                                           x86_64                1.4.14-1_centos6                                          asterisk-current                440 k
 libsrtp                                          x86_64                1.4.4-4.20101004cvs.el6                                   asterisk-current                273 k
 libss7                                           x86_64                1.0.2-1.el6                                               epel                             53 k
 libtonezone                                      x86_64                2.9.0.1-1_centos6                                         asterisk-current                 18 k
 speex                                            x86_64                1.2-0.12.rc1.1.el6                                        base                             96 k

Transaction Summary
========================================================================================================================================================================
Install      31 Package(s)

Total download size: 21 M
Installed size: 102 M

Installed:
  asterisk.x86_64 0:11.8.1-1_centos6                                             asterisk-configs.x86_64 0:11.8.1-1_centos6


Dependency Installed:
  asterisk-core.x86_64 0:11.8.1-1_centos6                                                     asterisk-dahdi.x86_64 0:11.8.1-1_centos6
  asterisk-doc.x86_64 0:11.8.1-1_centos6                                                      asterisk-sounds-core-en.noarch 0:1.4.25-1.el6
  asterisk-sounds-core-en-gsm.noarch 0:1.4.25-1.el6                                           asterisk-voicemail.x86_64 0:11.8.1-1_centos6
  dahdi-firmware.noarch 0:2.0.6-1_centos6                                                     dahdi-firmware-hx8.noarch 0:2.06-1_centos6
  dahdi-firmware-oct6114-032.noarch 0:1.05.01-1_centos6                                       dahdi-firmware-oct6114-064.noarch 0:1.05.01-1_centos6
  dahdi-firmware-oct6114-128.noarch 0:1.05.01-1_centos6                                       dahdi-firmware-oct6114-256.noarch 0:1.05.01-1_centos6
  dahdi-firmware-tc400m.noarch 0:MR6.12-1_centos6                                             dahdi-firmware-te133.noarch 0:6f0017-1_centos6
  dahdi-firmware-te134.noarch 0:6f0017-1_centos6                                              dahdi-firmware-te820.noarch 0:1.76-1_centos6
  dahdi-firmware-vpmoct032.noarch 0:1.12.0-1_centos6                                          dahdi-linux.x86_64 0:2.9.0-1_centos6
  gnutls.x86_64 0:2.8.5-13.el6_5                                                              gsm.x86_64 0:1.0.13-4.el6
  iksemel.x86_64 0:1.4-2.el6                                                                  kmod-dahdi-linux.x86_64 0:2.9.0-1_centos6.2.6.32_279.14.1.el6.x86_64
  kmod-dahdi-linux-fwload-vpmadt032.x86_64 0:2.9.0-1_centos6.2.6.32_279.14.1.el6.x86_64       libopenr2.x86_64 0:1.2.0-1_centos6
  libpri.x86_64 0:1.4.14-1_centos6                                                            libsrtp.x86_64 0:1.4.4-4.20101004cvs.el6
  libss7.x86_64 0:1.0.2-1.el6                                                                 libtonezone.x86_64 0:2.9.0.1-1_centos6
  speex.x86_64 0:1.2-0.12.rc1.1.el6

Complete!

■soundsディレクトリへのリンクを作成した

Asteriskが、playbackアプリケーションなどによって、サウンドファイルを必要とするとき、
デフォルトで、/var/lib/asterisk/sounds ディレクトリ内のファイルを探索する。
しかし、以上の方法でインストールした場合には、下記のように別のディレクトリに存在している。
そのため、シンボリックリンクを張っておく必要があった。
(そうしなければ、file.c:701 ast_openstream_full: File beep does not exist in any format のようなエラーが表示された。)

# ln -s /usr/share/asterisk/sounds /var/lib/asterisk/sounds



■Asteriskが使用する保留音を取得した

保留音はAsterisk本体といっしょにダウンロードされなかった。
保留音が存在しなければ、次のエラーが発生した。
Music class default requested but no musiconhold loaded.

保留音を含むパッケージの情報を表示させた。
(ほかの種類のコーデックもあったが、ulawのものを選択した。)

[root@asterisk ~]# yum info asterisk-sounds-moh-opsound-ulaw --enablerepo=asterisk-11
Name        : asterisk-sounds-moh-opsound-ulaw
Arch        : noarch
Version     : 0.0
Release     : 5_centos6
Size        : 6.5 M
Repo        : asterisk-current
Summary     : Asterisk Music on Hold - opsound - ulaw.
URL         : http://www.asterisk.org
License     : GPL
Description : This package contains Asterisk Music on Hold - opsound - ulaw.


[root@asterisk ~]# yum install asterisk-sounds-moh-opsound-ulaw --enablerepo=asterisk-11
Installed:
  asterisk-sounds-moh-opsound-ulaw.noarch 0:0.0-5_centos6

Complete!


■動作テスト

Asterisk 11の設定ファイルも、/etc/asteriskに生成されているので、変更する前には、
/etc/asterisk.orgにコピーをとってバックアップしておくと良い。

私は、以前はAsterisk 1.8で運用していた。この設定ファイルのうち、
sip.conf、extensions.conf などで、Asterisk 11の設定ファイル(/etc/asterisk内にあるもの)を一部上書きした。
(これで以前使っていた機能の全てが正しく動作するかはわからないが、とりあえず動作した。)


Asterisk 11の設定ファイルの準備したのち、サービスを起動した。
[root@asterisk ~]# service asterisk start

システムブート時に自動起動させたい場合は、次のように設定しておく。
[root@asterisk ~]# chkconfig asterisk on

Asteriskのコンソールを起動するには、次のようにパラメーター付でコマンドを入れる。
(vvvvvvvのように入れないと、詳細情報が上がってこなくなった。)
[root@asterisk ~]# asterisk -rvvvvvvv

このコンソールで動作状態をチェックしてみて、変なエラーで警告されたら、
設定ファイルなどのデバッグなどが必要である。


ところで、Asterisk 1.8からAsterisk 11に切り替えてすぐに、
Snom製の電話機の初期設定では、Asterisk 11でうまく発信できない問題に遭遇した。
これは、電話機の設定をGUIで修正するだけで対応できた。
http://akira-arets.blogspot.jp/2014/05/asterisk11snomipsrtp.html


(参考)
・Asterisk Packages
< https://wiki.asterisk.org/wiki/display/AST/Asterisk+Packages > 2014年4月24日

投げ銭

★当サイトへの投げ銭(PayPal)★

Ad

Ad