「ひかり電話ゲートウェイ iGW-N02」の版間の差分

提供: VoIP-Info.jp
移動先: 案内検索
(アーカイブ展開・コンテナ配置)
(情報提供方法の変更)
 
(同じ利用者による、間の8版が非表示)
2行目: 2行目:
 
[[Category:ひかり電話]]
 
[[Category:ひかり電話]]
  
=はじめに=
+
ひかり電話ゲートウェイ iGW-N02 をご利用いただきありがとうございます。
  
本ページは、ひかり電話接続モジュール 「iGW-N02」インストール手順やセットアップ方法、注意事項などを記載します。<br/>
+
インストール手順やセットアップ方法、注意事項などのドキュメントは、PDF形式ファイルで提供することにいたしました。
Linux OS に対する知識を一定以上所有している方を想定しています。<br/>
+
 
iGW-N02 とは何かについては以下のURLをご参照ください。<br/>
+
最新の情報はこちらをご覧ください。
 
https://ews.jp/works/voice-solution/igw-n02/
 
https://ews.jp/works/voice-solution/igw-n02/
  
=PBX での対応事項=
 
 
iGW-N02 を使用してひかり電話(NGN)に接続する上で、配下PBXでの対応がいくつか必要となります。
 
 
==網ふくそう通知==
 
 
網ふくそう時、INVITE に対し iGW-N02 から、Reason ヘッダに Q.850 ;cause=42 が設定されている 503 をレスポンスします。<br/>
 
配下PBX側にて、ユーザーにふくそう通知を行ってください。
 
 
==着信拒否==
 
 
着信拒否をする場合は 403 応答をしてください。
 
 
==RTP 送信==
 
 
アーリーメディア中、および通話中では常に一定間隔で RTP を送信してください。<br/>
 
発話していない状態であっても RTP を送信するよう、VAD などの機能は解除してください。
 
 
==音声コーデックについて==
 
 
音声コーデックは g.711u-law のみ対応しています。<br/>
 
g.711u-law の送受信を出来るようにしてください。
 
 
==呼び出し時間の制限について==
 
一部の 0120 番号などでは、呼び出し状態で通話が開始されることがあります。(アーリーメディアの状態で、IVR や通話が開始される)<br/>
 
この場合、呼び出し時間の制限を行うと、IVR や通話の途中で切断されますので、自動切断時間を適切にご調整ください。<br/>
 
なお、接続モジュールの設定として、660 秒が設定されていますが、/var/lib/machines/igw-n02/etc/iGW-N02/pbx_vars.xml ファイル中のpbx_call_timeout=660 の設定にて変更できます。
 
 
=システム要件=
 
 
 
{| style="text-align:left"
 
|-
 
! CPU
 
| Intel Celeron CPU N3350 1.10GHz以上(同時通話数により変動します)
 
|-
 
! メモリ
 
| 1[GB] 以上(同時通話数により変動します)
 
|-
 
! ストレージ
 
| 1[GB] 以上の空き容量
 
|-
 
! NIC
 
| 2ポート以上(必須)
 
|-
 
! OS
 
| Linux(systemd-nspawn が利用できること)
 
|}
 
※ OS は、64 ビットにのみ対応します。
 
 
=事前準備=
 
 
==ダウンロード==
 
 
以下のURLよりコンテナイメージのダウンロードをお願いします。<br/>
 
ダウンロード後、インストール先のサーバーへ配置してください。
 
 
https://www2.ews.jp/iGW-N02/igw-n02-20240109.tar.gz
 
 
 
 
==ライセンス発行==
 
 
本製品は、ソフトウェア適合検査に対応するため、ライセンス認証を行います。<br/>
 
ライセンス発行の為、以下の情報が必要となります。<br/>
 
下記項目を 当社Webサイトの問合せフォーム (https://ews.jp/company/contact/) よりご連絡ください。<br/>
 
 
* 会社名
 
* 連絡先担当者氏名
 
* 連絡先担当者メールアドレス
 
* 連絡先担当者住所
 
* 連絡先担当者電話番号
 
* iGW-N02の設置場所名称
 
* ひかり電話を収容するNICのインターフェース名・MACアドレス
 
* 用途(評価用または本運用)
 
* ch数(評価用の場合は1chのみ)
 
 
=サーバー側設定=
 
 
サーバー(iGW-N02 をインストールする Linux PC)側の設定手順です。
 
以下に Ubuntu22 と Rocky8 の場合の手順を示します。
 
 
<!-- それ以外の OS でのセットアップ手順が必要でしたらお問い合わせください。 -->
 
 
==Ubuntu22==
 
 
Ubuntu Server22 LTS のケースについて手順を記述します。
 
 
===systemd-nspawn インストール===
 
 
 
<blockquote><pre>
 
apt install systemd-container
 
</pre></blockquote>
 
 
===アーカイブ展開・コンテナ配置===
 
 
<blockquote><pre>
 
tar -zxf igw-n02-v1.0.tar.gz -C /var/lib/machines
 
</pre></blockquote>
 
 
igw-n02-v1.0.tar.gz の部分は、前述の【事前準備】で入手したコンテナイメージファイルを指定してください。
 
 
===ネットワーク・NIC設定例===
 
 
前提・設定条件として以下があります。
 
 
* IPアドレスはDHCPにより取得
 
** 固定IPとする場合はnetplanのドキュメントを参照の上、設定してください。
 
 
* NIC "eno1" : 社内LANへ接続するNIC
 
* NIC "enp1s0" : ひかり電話を収容するNIC
 
* ブリッジ "br0" : iGW-N02コンテナを社内LANに接続するためのブリッジ
 
 
上記設定はあくまで一例となるため、導入先の環境により適宜読み替えてください。
 
 
 
 
「/etc/netplan/99-igwn02-config.yaml」を設定します。
 
 
 
<blockquote><pre>
 
vi /etc/netplan/99-igwn02-config.yaml
 
</pre></blockquote>
 
 
以下はファイル内容例です。
 
 
<blockquote><pre>
 
network:
 
  ethernets:
 
    eno1:
 
      dhcp4: true
 
    enp1s0:
 
      dhcp4: false
 
  version: 2
 
 
  bridges:
 
    br0:
 
      interfaces:
 
        - eno1
 
      dhcp4: true
 
      gateway4: 192.168.1.1
 
      nameservers:
 
        addresses:
 
          - 192.168.1.2
 
</pre></blockquote>
 
 
 
 
設定後、下記コマンドにより設定反映をしてください。
 
 
<blockquote><pre>
 
netplan apply
 
</pre></blockquote>
 
 
===コンテナ設定===
 
 
「/etc/systemd/nspawn/igw-n02.nspawn」を設定します。
 
 
5.1.2 項で配置したコンテナディレクトリ名(例:/var/lib/machines/igw-n02/)と、nspawn 設定ファイル名は一致している必要があるため、もしディレクトリ名などを変更した場合はファイル名と揃えてください。
 
 
<blockquote><pre>
 
mkdir -p /etc/systemd/nspawn
 
vi /etc/systemd/nspawn/igw-n02.nspawn
 
</pre></blockquote>
 
 
以下はファイル内容です。
 
 
<blockquote><pre>
 
[Network]
 
Bridge=br0
 
Interface=enp1s0
 
</pre></blockquote>
 
 
5.1.3 項で設定した NIC・Bridge 名を指定してください。
 
 
==Rocky8==
 
 
Rocky Linux 8.8 のケースについて手順を記述します。
 
 
===systemd-nspawn インストール===
 
 
<blockquote><pre>
 
dnf install systemd-container
 
</pre></blockquote>
 
 
===アーカイブ展開・コンテナ配置===
 
 
<blockquote><pre>
 
tar -zxf igw-n02-v1.0.tar.gz -C /var/lib/machines
 
</pre></blockquote>
 
 
4.1 項にて配置したコンテナイメージファイルを指定してください。
 
 
===SELinux無効化===
 
 
SELinuxが有効だとコンテナが起動できないため無効化する。
 
 
<blockquote><pre>
 
vi /etc/selinux/config
 
</pre></blockquote>
 
 
以下の通り変更
 
 
<blockquote><pre>
 
SELINUX=enforcing
 
 
SELINUX=disabled
 
</pre></blockquote>
 
 
設定が反映されるのは再起動後となります。
 
次項にて再起動をするため現段階では不要です。
 
 
===ネットワーク・NIC設定例===
 
 
前提・設定条件として以下があります。
 
 
* IPアドレスはDHCPにより取得
 
** 固定IPとする場合はNetworkManagerのドキュメントを参照の上設定してください。
 
 
* NIC "enp0s3" : 社内LANへ接続するNIC、DHCP有効設定
 
* NIC "enp0s8" : ひかり電話を収容するNIC
 
* ブリッジ "br0" : iGW-N02コンテナを社内LANに接続するためのブリッジ
 
 
上記設定はあくまで一例となるため、導入先の環境により適宜読み替えてください。
 
 
 
 
NetworkManager を使用した設定例を以下に示します。
 
 
====仮想ブリッジインタフェースの作成・設定====
 
 
ブリッジインターフェース br0 の作成。
 
 
<blockquote><pre>
 
nmcli con add type bridge ifname br0
 
</pre></blockquote>
 
 
NIC enp0s3 をブリッジ br0 に接続
 
 
<blockquote><pre>
 
nmcli con add type bridge-slave ifname enp0s3 master br0
 
</pre></blockquote>
 
 
自動接続設定をONに
 
 
<blockquote><pre>
 
nmcli con mod bridge-br0 connection.autoconnect yes
 
</pre></blockquote>
 
 
====物理ポート設定の削除、および再起動====
 
 
SSHで接続している場合、接続が切断されます。
 
そのため、設定後即座に再起動をして設定を反映させます。
 
 
<blockquote><pre>
 
nmcli con del enp0s3;reboot
 
</pre></blockquote>
 
 
===コンテナ設定===
 
 
「/etc/systemd/nspawn/igw-n02.nspawn」を設定します。
 
 
5.2.2 項で配置したコンテナディレクトリ名(例:/var/lib/machines/igw-n02/)と、nspawn 設定ファイル名は一致している必要があるため、もしディレクトリ名などを変更した場合はファイル名と揃えてください。
 
 
<blockquote><pre>
 
mkdir -p /etc/systemd/nspawn
 
vi /etc/systemd/nspawn/igw-n02.nspawn
 
</pre></blockquote>
 
 
以下はファイル内容です。
 
 
<blockquote><pre>
 
[Network]
 
Bridge=br0
 
Interface=enp0s8
 
</pre></blockquote>
 
 
5.2.4 項で設定した NIC・Bridge 名を指定してください。
 
 
=モジュール設定=
 
 
==コンテナ起動設定==
 
 
<blockquote><pre>
 
machinectl enable igw-n02
 
machinectl start igw-n02
 
machinectl shell igw-n02 # root で実行することでコンテナ内のコンソールに遷移
 
</pre></blockquote>
 
 
上記コマンド実行後、母艦側立ち上げ時にコンテナも起動する設定となります。
 
 
以降、iGW-N02 コンテナ内での操作となります。
 
 
==ネットワーク・NIC設定==
 
 
<blockquote><pre>
 
nano /etc/network/interfaces
 
</pre></blockquote>
 
 
インストール時、ファイル内容は以下のようになっています。
 
 
<blockquote><pre>
 
source /etc/network/interfaces.d/*
 
 
#### host0 は、 /etc/iGW-N02/if_conf.sh の pbx_if1 の設定値に合わせる。
 
auto host0
 
 
#### IPアドレスをDHCPで取得する場合:
 
 
#iface host0 inet dhcp
 
 
#### IPアドレスを固定で設定する場合:
 
#### * gateway は、必要ならば設定する。
 
 
#iface host0 inet static
 
#    address 192.168.230.230/24
 
#    gateway 192.168.230.1
 
</pre></blockquote>
 
 
ご利用の環境に合わせて、コメントを外すなど編集をお願いいたします。
 
 
編集後以下のコマンドにて反映をします。
 
 
<blockquote><pre>
 
systemctl restart networking
 
</pre></blockquote>
 
 
==インターフェース設定==
 
 
<blockquote><pre>
 
nano /etc/iGW-N02/if_conf.sh
 
</pre></blockquote>
 
 
以下はファイル内容例です。
 
 
<blockquote><pre>
 
# pbx side interface
 
export pbx_if0=host0    # physical
 
export pbx_if1=host0    # logical
 
 
# hikari side interface
 
export hikari_if0=enp0s8    # physical
 
export hikari_if1=enp0s8    # logical
 
</pre></blockquote>
 
 
pbx_if:PBXサーバーへアクセス可能なNICを指定してください。
 
hikari_if:ひかり電話を収容するNICを指定してください。
 
 
==PBX サーバー接続設定==
 
 
ご利用の環境に合わせ、設定してください。
 
設定方法が不明な場合はサポートまでお問い合わせください。
 
 
===設定例===
 
 
<blockquote><pre>
 
nano /etc/iGW-N02/pbx_vars.xml
 
</pre></blockquote>
 
 
以下はファイル内容例です。
 
 
<blockquote><pre>
 
<include>
 
  <!-- pbx ip address -->
 
  <X-PRE-PROCESS cmd="set" data="pbx1_ip=192.168.1.1"/>
 
 
  <!-- register -->
 
  <X-PRE-PROCESS cmd="set" data="pbx1_register=false"/>
 
  <X-PRE-PROCESS cmd="set" data="pbx1_username="/>
 
  <X-PRE-PROCESS cmd="set" data="pbx1_password="/>
 
 
  <!-- realm, domain -->
 
  <X-PRE-PROCESS cmd="set" data="pbx1_realm=$${pbx1_ip}"/>
 
  <X-PRE-PROCESS cmd="set" data="pbx1_domain=$${pbx1_ip}"/>
 
 
  <!-- proxy -->
 
  <X-PRE-PROCESS cmd="set" data="pbx1_proxy=$${pbx1_ip}"/>
 
  <X-PRE-PROCESS cmd="set" data="pbx1_reg_proxy=$${pbx1_ip}"/>
 
  <X-PRE-PROCESS cmd="set" data="pbx1_out_proxy=$${pbx1_ip}"/>
 
 
  <!-- features -->
 
  <X-PRE-PROCESS cmd="set" data="pbx_100rel=false"/>
 
  <X-PRE-PROCESS cmd="set" data="pbx_session_timer=false"/>
 
 
  <!-- timeout -->
 
  <X-PRE-PROCESS cmd="set" data="pbx_rtp_timeout_sec=120"/>
 
  <X-PRE-PROCESS cmd="set" data="pbx_rtp_hold_timeout_sec=300"/>
 
  <X-PRE-PROCESS cmd="set" data="pbx_call_timeout=660"/>
 
</include>
 
</pre></blockquote>
 
 
上記設定例は以下のような設定となります。
 
 
{| class="wikitable"
 
! 設定項目
 
! 設定値
 
|-
 
| PBX アドレス
 
| 192.168.1.1
 
|-
 
| 利用する SIP ポート
 
| PBX 側 UDP/5060
 
|-
 
| レジスター
 
| しない
 
|-
 
| 接続認証
 
| IP アドレスによる認証
 
|-
 
| セッションタイマ
 
| 無し
 
|-
 
| 100rel
 
| 無し
 
|}
 
 
===項目説明===
 
{| class="wikitable"
 
! 項目
 
! 意味
 
! 既定値
 
! 備考
 
|-
 
| pbx1_ip
 
| 接続先 PBX の IP アドレス
 
|
 
|
 
|-
 
| pbx1_register
 
| レジスターの有効・無効
 
| false
 
|
 
|-
 
| pbx1_username
 
| レジスターの認証情報
 
|
 
|
 
|-
 
| pbx1_password
 
| レジスターの認証情報
 
|
 
|
 
|-
 
| pbx1_proxy
 
| プロキシサーバーの IP アドレス
 
| pbx1_ip と同値
 
| ※1
 
|-
 
| pbx1_reg_proxy
 
| レジスターの送信先 IP アドレス
 
| pbx1_ip と同値
 
| ※1
 
|-
 
| pbx1_out_proxy
 
| INVITE の送信先 IP アドレス
 
| pbx1_ip と同値
 
| ※1
 
|-
 
| pbx_100rel
 
| 100rel の有効・無効
 
| false
 
|
 
|-
 
| pbx_session_timer
 
| セッションタイマの有効・無効
 
| false
 
|
 
|-
 
| pbx_rtp_timeout_sec
 
| RTP タイムアウト時間(秒)
 
| 120
 
|
 
|-
 
| pbx_rtp_hold_timeout_sec
 
| 保留中の RTP タイムアウト時間(秒)
 
| 300
 
|
 
|-
 
| pbx_call_timeout
 
| 呼出しタイムアウト時間(秒)
 
| 660
 
|
 
|}
 
 
※1  PBX サーバーの待ち受けポートが 5060 以外の場合、下記3つの設定値にポート番号を追加してください。
 
 
* pbx1_proxy
 
* pbx1_reg_proxy
 
* pbx1_proxy
 
 
例:5070ポートへ変更する場合、該当箇所を下記のように変更します。
 
 
<blockquote><pre>
 
  <X-PRE-PROCESS cmd="set" data="pbx1_proxy=$${pbx1_ip}:5070"/>
 
  <X-PRE-PROCESS cmd="set" data="pbx1_reg_proxy=$${pbx1_ip}:5070"/>
 
  <X-PRE-PROCESS cmd="set" data="pbx1_out_proxy=$${pbx1_ip}:5070"/>
 
</pre></blockquote>
 
 
 
==接続元制限==
 
 
<blockquote><pre>
 
nano /etc/iGW-N02/pbx_acl.xml
 
</pre></blockquote>
 
 
以下はファイル内容です。
 
 
<blockquote><pre>
 
<list name="pbx" default="deny">
 
  <node type="allow" cidr="$${pbx1_ip}/32"/>
 
</list>
 
</pre></blockquote>
 
 
発信要求を許可するアドレス帯の設定です。
 
標準では上記のように、ゲートウェイ対象となる PBX サーバーからの発信要求のみを許可する設定となります。
 
ご利用される環境に合わせ、アドレス帯の変更をしてください。
 
 
==ライセンス設定==
 
 
本ドキュメント3項の「ライセンス発行について」を参照の上、ライセンスを取得してください。
 
 
取得後、ライセンス内容を以下のファイルに書き込んでください。
 
 
注意:余計な空白(イコールの前後や、行末など)を入れないようご注意ください
 
 
<blockquote><pre>
 
nano /etc/iGW-N02/license.txt
 
</pre></blockquote>
 
 
 
==設定反映==
 
 
iGW-N02 モジュールを再起動し、設定反映を行ってください。
 
その際、話中の通話は切断され、起動完了まで通話が不可となる点にご留意ください。
 
 
<blockquote><pre>
 
systemctl restart igw-n02
 
</pre></blockquote>
 
 
==状態確認==
 
 
===動作状態===
 
 
iGW-N02 は systemd により起動管理を行っているため、下記コマンドにて動作状態を確認可能できます。
 
 
<blockquote><pre>
 
systemctl status igw-n02
 
</pre></blockquote>
 
 
===ひかり電話へのレジスター状態===
 
 
<blockquote><pre>
 
fs_cli -x "sofia status"
 
</pre></blockquote>
 
 
上記コマンドにより以下のように出力されます。
 
「hikari::hikari gateway」行の State が REGED となっていれば、ひかり電話にREGが通っている状態です。
 
 
<blockquote><pre>
 
                    Name          Type                                      Data      State
 
=================================================================================================
 
                  hikari      profile                sip:mod_sofia@10.0.0.2:5060      RUNNING (0)
 
          hikari::hikari      gateway              sip:0551111111@ntt-east.ne.jp      REGED
 
                      pbx      profile        sip:mod_sofia@192.168.171.100:5060      RUNNING (0)
 
                pbx::pbx1      gateway              sip:FreeSWITCH@192.168.171.2      NOREG
 
=================================================================================================
 
</pre></blockquote>
 
 
===モジュール状態確認===
 
 
起動してからの稼働時間、セッション数、最大セッション数などを確認することができます。
 
 
<blockquote><pre>
 
fs_cli -x "status"
 
</pre></blockquote>
 
 
=その他=
 
==SIP 仕様==
 
{|
 
|-
 
|IP バージョン    ||IPv4
 
|-
 
|SIP ポート     ||5060
 
|-
 
|音声コーデック   ||G.711(μlaw)
 
|-
 
|DTMF         ||みなし音声方式(インバンド方式)
 
|-
 
|ISDN サブアドレス  ||未対応
 
|-
 
|FAX         ||みなし音声方式
 
|}
 
  
 
=お問い合わせ先=
 
=お問い合わせ先=

2024年12月27日 (金) 20:49時点における最新版


ひかり電話ゲートウェイ iGW-N02 をご利用いただきありがとうございます。

インストール手順やセットアップ方法、注意事項などのドキュメントは、PDF形式ファイルで提供することにいたしました。

最新の情報はこちらをご覧ください。 https://ews.jp/works/voice-solution/igw-n02/


お問い合わせ先

下記URLのお問い合わせフォームからお問い合わせ内容について「ひかり電話ゲートウェイiGW-N02」を選択し、必要事項を入力の上お問い合わせください。

https://ews.jp/company/contact/