PCリンクスでは、パソコンの設定・修理から組込み機器の受託開発まで承ります。

 

VPNルーター導入時の初期設定

VPNルーターを設置すると、スマートフォン(iPhoneやAndroidを採用した携帯電話)から、自宅(または職場)のひかり電話を利用したり、デスクトップPCへリモートアクセスを行ったりと、いろいろな用途に利用することが出来るようになります。

以前の記事では、サーバにソフトウェア(PacketiX VPN Server)を組込み、VPN接続を実現させましたが、今回は、VPNルーターという’ハードウェア’を採用して、スマートフォンからのVPN接続を実現します。
※ハードウェアには、ヤマハの’RTX1100′というVPNルーターを採用しました。

このルータは、2011年9月30日で販売を終了したモデルですが、今年の3月に、なんとL2TP/IPsecに対応したファームウェアがリリースされました。旧機種でありながら、最新の技術を使用できるようになりました。
フレッツ光ネクストでは役不足ですが、当方の環境(Bフレッツ)では、まだまだ、現役バリバリで使用可能です。

YAMAHA RTX1100 300x140 VPNルーターの初期設定

2005年2月発売  定価:123,900円

CPU : MIPS32 200MHz
RAM : 32MByte
FlashROM : 8MByte

RTX1100 VPN ルーターの概要は、 YAMAHA RTX1100 製品情報 を参照ください。
RTX1100のさらに詳しい内容は、取扱説明書をご覧ください。

YAMAHA VPNルーター 取扱説明書

 

RTX1100 VPNルーターは、以下の手順で設定を行います。

  • 装置の初期化(工場出荷時の設定に戻す)
  • 装置の初期設定(Administratorパスワード等の設定)
  • ファームウェアのアップデート(L2TP/IPSec対応)
  • PPPoE接続設定(ISPへのインターネット接続)
  • VPN接続設定(L2TP/IPsec,PPTP接続に対応させる)
  • ファイアウォール設定(フィルタ設定を行い安全性を確保する)

 

VPNルーター(RTX1100)の初期化

RTX1100を導入時は、最初に、設定の初期化を実施します。背面のINITボタンを押しながら、電源を投入することで、工場出荷時の状態に戻すこと(初期化)が出来ます。

 

VPNルーター(RTX1100)の初期設定

次に、コンソールに接続し、初期設定を行います。初期状態では、シリアルケーブルを使用してコンソール接続を行い、コマンドラインベースで設定を行います。詳細は、以下の資料を参照ください。

ヤマハルーター ~コンソール設定~

シリアルケーブル(クロスケーブル)をパソコンと接続し、Putty(ターミナルクライアントソフトウェア)を起動します。
ターミナルソフトの設定は、

  • 通信ポート         : COM1
  • 通信パラメータ   : 9600bps,8,n,1
  • フロー制御         : Xon/Xoff
  • 文字コード         : Sift_JIS

Windowsパソコン上でPuTTYを起動します。

putty 01 300x266 VPNルーターの初期設定

PuTTYを起動させた状態で、RTX1100の電源を投入します。
すると、下記のような起動メッセージが表示されるので、[Enter]キーを押します。

putty 02 300x198 VPNルーターの初期設定

Password: と表示されたら、[enter]キーを押します。(初期値は、パスワードの設定はありません)

putty 031 270x300 VPNルーターの初期設定

上記の状態は、ユーザ権限(コマンドプロンプト表示が>)でのログイン状態ですので、以下のコマンドを入力し、管理者権限でログインします。

>administrator
Password:
#

次に、管理者パスワードの変更を行います。

# administrator password
Old_Password: (現在のパスワードは、未設定なのでリターンを入力)
New_Password: (新しいパスワード)
New_Password: (新しいパスワードの再入力)

次に、タイムゾーン、日時設定を行います。

# timezone jst
# date 2012/04/02
# Time 17:50:00

次に、Webブラウザからアクセスできるようにしておきます。

# httpd service on
# httpd host lan1
# ip lan1 address 192.168.0.1/24
# httpd host 192.168.0.1-192.168.0.254

最後に、ログインタイマを30分に変更、コンソールプロンプトに[RTX]を表示させるようにして、saveして終了です。

# login timer 1800
#console prompt [RTX]
# save
セーブ中... CONFIG0 終了

設定した内容を確認しておきます。

[RTX]# show config
# RTX1100 Rev.8.03.08 (Tue Jun 14 13:43:24 2005)
# MAC Address : 00:a0:de:xx:xx:xx, 00:a0:de:xx:xx:xx, 00:a0:de:xx:xx:xx,
# Memory 32Mbytes, 3LAN, 1BRI
# main:  RTX1100 ver=c0 serial=xxxxxxxxx MAC-Address=00:a0:de:xx:xx:xx MAC-Addr
ess=00:a0:de:xx:xx:xx MAC-Address=00:a0:de:xx:xx:xx
# Reporting Date: Apr 2 17:51:02 2012
administrator password *
timezone +09:00
console prompt [RTX]
login timer 1800
ip lan1 address 192.168.0.1/24
httpd service on
httpd host 192.168.0.1-192.168.0.254

 

VPNルーター(RTX1100)のファームウェアアップデート

次に、ファームウェアをアップデートします。アップデートは、RTX1100のLAN1にLANケーブルを挿入して、ローカルネットワークに参加させます。ファームウェアのアップロードは、ヤマハが提供している”RT-Tftp Client”を使用して、アップデートを行います。
RT-Tftp Clientを起動する前に以下のコマンドを実行し、Windowsパソコンからの接続を許可しておきます。

[RTX]> administrator
[RTX]# tftp host any

次に RT-Tftp Clientを起動します。ダウンロードしたファーム (.bin ファイル) を指定 -> ルーターの アドレスを指定 -> パスワードに administrator のパスワードを入力して [実行] をクリックします。

tftp 01 300x226 VPNルーターの初期設定

ファイルの転送が正常に終了すると、「転送は正常に終了しました 100%」と表示される。

tftp 02 300x226 VPNルーターの初期設定

ファームウェアのアップデートが終了すると自動的に再起動するので、ファームウェアがアップデートされていることを確認します。

tftp 03 300x190 VPNルーターの初期設定

アップデート作業が完了したら、TFTP の設定は無効にしておきます。

[RTX]> administrator
[RTX]# tftp host none

 

VPNルーター(RTX1100)へssh接続

VPNルーターの設定は、WindowsパソコンからSSHでアクセスするようにします。
この時、ルーターのSSHサーバ機能を利用しますので、あらかじめ以下の設定を行っておきます。

最初に、名前ありユーザとして”admin”ユーザを登録します。

[RTX]# login user admin パスワード

次に、SSHサーバのホスト鍵を生成します。
DSAまたは、RSAの公開鍵および、秘密鍵のペアを生成します。SSHサーバ機能が有効になっていても、ホスト鍵を生成しない限り接続は許可されません。 なお、鍵の生成には、1分ほど時間がかかります。

[RTX]# sshd host key generate
Generating public/private dsa key pair ...
|*******
Generating public/private rsa key pair ...
|*******

次に、sshdサービスをonし、設定をセーブします。
[RTX]# sshd service on
[RTX]# save
セーブ中... CONFIG0 終了

WindowsパソコンからルーターにSSH接続ができることを確認します。

ssh 01 300x205 VPNルーターの初期設定

SSHでの接続が可能となったので、telnetでの接続を禁止しておきます。
また、SSH接続はローカル環境のパソコンのみ、接続を許可するようにします。

[RTX]# telnetd service off
[RTX]# sshd host 192.168.0.1-192.168.0.254
[RTX]# save
セーブ中... CONFIG0 終了

設定した内容を確認しておきます。

[RTX]# show config
# RTX1100 Rev.8.03.08 (Tue Jun 14 13:43:24 2005)
# MAC Address : 00:a0:de:xx:xx:xx, 00:a0:de:xx:xx:xx, 00:a0:de:xx:xx:xx,
# Memory 32Mbytes, 3LAN, 1BRI
# main:  RTX1100 ver=c0 serial=xxxxxxxxx MAC-Address=00:a0:de:xx:xx:xx MAC-Addr
ess=00:a0:de:xx:xx:xx MAC-Address=00:a0:de:xx:xx:xx
# Reporting Date: Apr 2 17:51:02 2012
administrator password *
timezone +09:00
console prompt [RTX]
login timer 1800
telnetd service off
ip lan1 address 192.168.0.1/24
httpd service on
httpd host 192.168.0.1-192.168.0.254
sshd service on
sshd host 192.168.0.1-192.168.0.254
sshd host key generate *

telnetでのログイン接続が禁止されたことを確認しておきます。

ssh 03 300x91 VPNルーターの初期設定

 

VPNルーター(RTX1100)のWeb Asistance機能

初期設定の最後は、Web Assistance を使用して、現在のルーターの状態を確認しておきます。

LANケーブルを接続して、WWWブラウザから、ルーターのアドレスを直接指定して、RTX1100へアクセスします。すると、下記のような、一般ユーザ用の画面が表示されます。
うまく画面を表示できないときには、LANケーブルの挿入場所を再確認します。

一般ユーザ用の画面で、上部のバナーにある「管理者向けトップページへ」という リンクをクリックすると、管理者用の画面が開くので、administrator passwordを入力します。この時、ユーザ名は、入力する必要はありません。

web 01 300x291 VPNルーターの初期設定

 

以上で、「RTX1100の初期設定」を終了します。

 

au HOME SPOT CUBE でWi-Fi接続

auのスマートフォンを購入すると、希望すれば”HOME SPOT CUBE”を永年無料で利用することができます。

この商品は、無線LANを搭載したルーターもしくは、アクセスポイントとして利用することができます。
このちょっとオシャレな商品をローカルのLAN環境に設置して、ノートパソコンやスマートフォンから利用します。

70mmほどのCUBE形の商品ですが、無線LANは、3回路を搭載しており、同時に3種類の方式で接続を行うことができます。製造元は、プラネックスコミュニケーションズ(株)で、KDDI向けの専用商品です。

HOME SPOT CUBE の詳細は、取扱説明書をご覧ください。

HOME SPOT CUBE 取扱説明書

HOME SPOT CUBE 01 300x225 HOME SPOT CUBEでWi Fi

HOME SPOT CUBE の設置

当方のLAN環境は、すでに”ひかり電話対応ルーター”を導入済みですので、HOME SPOT CUBEはアクセスポイントとしてローカルネットワーク内に追加します。

箱から取出したら、以下の手順で設置します。STATUSランプが”緑点灯”すれば正常に動作中です。

  • モード切替スイッチを”AP”の位置にセットして、アクセスポイントモードを選択します。
  • LANケーブルをWANポートに接続します。
  • ACアダプタを接続します。

HOME SPOT CUBE 02 300x225 HOME SPOT CUBEでWi Fi

 

 モード切替スイッチを”AP”に切り替えます。

 LANケーブルは”WAN”側に接続します。

HOME SPOT CUBEのIPアドレスの検出方法

電源を投入したら、Windowsパソコンのブラウザからアクセスポイントの管理画面にアクセスします。

初めて接続した時は、アクセスポイントのIPアドレスが判りませんので、何らかの手段で調べる必要があります。
当方は、ネットワーク機器を検出してくれる”NetEnum.exe”というフリーウェアのお世話になっています。

プログラムのダウンロードは、 リアライズ社のWebサイト を参照ください。

NET ENUM 01 HOME SPOT CUBEでWi Fi

アクセスポイントのプライベートIPアドレスは、ローカルLAN環境に設置されている”DHCPサーバ”が割り当てします。普通は、ブロードバンドルーターがDHCPサーバの機能を搭載していて、有効に設定されています。

当方の環境では、”192.168.0.230″ ~ ”192.168.0.254″ のアドレスを割り当てするようにDHCPサーバが設定されており、HOME SPOT CUBEを接続すると、IPアドレスは”192.168.0.230″が割り当てられました。

ただし、1つのインタフェース(MACアドレス)に、IPアドレスが2個割り当てられるようで、”192.168.0.254″でも、アクセスポイントへアクセスすることが可能でした。IPアドレスが不明な場合を考慮して、このような設定がなされているものと思われます。

 

HOME SPOT CUBEの設定

HOME SPOT CUBEのプライベートIPアドレスが判りましたので、Windowsパソコンのブラウザから192.168.0.254(アクセスポイントのIPアドレス)へアクセスし、詳細項目の設定を行います。

ブラウザを起動して、”192.168.0.254″を、直接、入力します。
setup 01 HOME SPOT CUBEでWi Fi

ユーザ名とパスワードを入力します。
ユーザ名とパスワードの初期値は、それぞれ”au” 、”1234″です。

setup 02 HOME SPOT CUBEでWi Fi

初期状態のステータスを確認しておきます。

システム情報の動作モードがAP(アクセスポイント)になっていることを確認します。

setup 03 HOME SPOT CUBEでWi Fi

次に、SSID1~SSID3の設定情報を確認します。
HOME SPOT CUBE では、3種類の無線LAN回路を搭載しており、接続機器に合った無線LAN方式を選択できます。

  • SSID1は、パソコンやスマートフォンなどの接続用です。
  • SSID2は、携帯ゲーム機(WiiやPSPなど)の接続用です。
  • SSID3は、5GHz帯を使用した機器の接続用です。

setup 03a HOME SPOT CUBEでWi Fi

setup 03b HOME SPOT CUBEでWi Fi

setup 03c HOME SPOT CUBEでWi Fi

ステータス確認が終了したら、最初に、ユーザ名とパスワードを変更しておきます。

setup 04 HOME SPOT CUBEでWi Fi

変更した新しいユーザ名とパスワードを入力し、アクセスポイントにログインします。

setup 05 HOME SPOT CUBEでWi Fi

次に、アクセスポイントの時刻設定を行います。

setup 06 HOME SPOT CUBEでWi Fi

次に、Wi-Fi設定を行います。

ここでは、SSIDと暗号化キーの設定とMACアドレスフィルタリング設定を行います。
MACアドレスフィルタリングを実施すると、子機登録を簡単に行える”WPS機能”を使用できなくなりますが、セキュリティーを優先させて、フィルタリングするようにします。
設定はすべて手動で行いますが、要領さえ判れば難しい内容ではありません。

最初に、Wi-Fi基本設定の”無線周波数出力”を最小にします。(8畳間で使用するだけなので、出力を絞ります)

setup 07 HOME SPOT CUBEでWi Fi

次に、SSID1の設定を行います。下記の対応でセキュリティ対応は万全となります。

  • ANY接続は”許可しない”に変更して、SSIDを他者に知られないようにします。(隠蔽)
  • SSID1の文字列は、適当な(好きな)文字列に変更し、自分だけが知っている文字列にします。
  • 通信の暗号化キーは、適当な文字列に変更します。(8~63文字の範囲の半角英数字で指定します)

setup 08 HOME SPOT CUBEでWi Fi

次に、MACアドレスを登録し、登録された機器のみ(ノートPCやスマホ)、無線接続を許可するようにします。

接続するパソコンのMACアドレスは、DOSプロンプトから”ipconfig /all”コマンドを実行して調べます。
赤枠内のPhysical Address がMACアドレスとなりますので、この値をメモします。

setup 12 HOME SPOT CUBEでWi Fi

接続を許可するノートPCのMACアドレスを登録します。

setup 09 HOME SPOT CUBEでWi Fi

次に、WPS PINコードの設定を確認しておきます。(利用しないに薄くチェックが入っているはずです)

WPSとは、”Wi-Fi Protected Setup”の略で、無線LAN子機の接続とセキュリティ設定を簡単に実行するための規格です。
ANY接続を許可し、MACアドレスフィルタリングを行わないようにすれば、この機能を使用することができます。

この機能を使用すると、下記のような2通りの方法で、簡単に無線子機の登録(セットアップ)が行えます。

  • プッシュボタン方式による子機の登録。(スマホに”au Wi-Fi接続ツール”をダウンロードして、アクセスポイントのボタンを押す方式)
  • PINコード方式による子機の登録。(スマホでPINコード調べて、アクセスポイントにそのコードを登録する方式)

今回は、WPS機能は使用しません(できません)が、確認しておきます。

setup 10 HOME SPOT CUBEでWi Fi

最後に、設定した内容を保存しておきます。初期化等を実施しても、設定ファイルから復元できます。

setup 11 HOME SPOT CUBEでWi Fi

 

ファームウェアのアップデート(2012年5月12日追記)

いろいろ問題が指摘されていた、HOME SPOT CUBEのファームウェアが、2012年5月12日アップデートされ、バージョンが “001.001.001″ となりました。

setup 14 HOME SPOT CUBEでWi Fi

ちなみに当方の環境では、Wi-Fi接続していたノートパソコンは、接続が切れるとかの問題もなく正常に動作していました。

setup 13 HOME SPOT CUBEでWi Fi

以上で、「HOME SPOT CUBEでWi-Fi」を終了します。

 

Asteriskでひかり電話を使う(IP-PBXの導入)

前回は、外出先のiPhoneから、自宅(または職場)へVPN接続を行い、ひかり電話を利用しました。

3回目の今回は、ひかり電話の活用事例として、IP-PBXソフトウェアである”Asterisk”をサーバに導入し、ひかり電話対応ルーターのSIPサーバに接続します。
※VPN環境(VPNルーターまたはVPNサーバ)は、導入済みであることを前提とします。

ひかり電話対応ルータを使用すると、最大5台までSIP電話機(ソフトフォンを含む)を接続することができます。
アナログポートの2台と合わせると合計7台まで電話機を接続でき、電話番号は、マイナンバーを契約することで5個まで取得できます。今回は、もっと多くの電話を使用でき、柔軟な運用を行なえる”Asterisk”を導入します。

社員10名程度の会社(営業マン5名、事務員1名、技術者4名)を想定してみます。

営業マンは、全員スマートフォンを携帯しており、Asteriskに収容され内線番号が付与されているものとします。
技術者は、自分のパソコンにインストールしたソフトフォンを利用するものとします。(通話はヘッドセット)
事務員は、ちょっと高機能なSIP対応ビジネス電話を利用するものとします。

出先のiPhoneからは、VPNを使用してAsteriskサーバへ接続するようにします。(セキュリティ的にも安全です)
VPN接続を用いないで、Asteriskサーバをインターネット上に公開すると、下記の資料のような危険を伴いますので、お勧めできません。※Asteriskを社内からのみ利用するのであれば、VPN環境は必要ありません。

不適切な設定で Asteriskを利用した場合に発生し得る不正利用に関する注意喚起

asterisk 01 Asteriskでひかり電話を使う


Asteriskを導入した場合のメリツト

  • 代表番号にかかってきた通話を、営業マンのスマートフォンに内線転送できる。(社内・外出中問わず)
  • 外出先から、会社のひかり電話を使用して、通話することができる。(3G回線でVPN接続を利用する)
  • スマートフォンから社内への通話は、内線扱いとなるので電話代は無料となる。(パケット定額代のみ)
  • 固定(加入)電話宛なら電話代が91%OFFになり、電話代を劇的に節約することができる。

VPNサーバやAsteriskサーバを導入する費用は発生しますが、長期的には大幅なコストダウンになります。iPhoneからの発信は、ひかり電話での発信となり、着信時は、内線として転送も可能です。
個人使用のiPhoneやAndroidを採用した携帯端末では、携帯番号を相手先に知られることもなく、通話料金も会社負担になりますので、会社/従業員共にメリットがあります。

 

インストールの前準備

本サイトのインストール手順は、多少のアレンジはありますが、下記のサイトの手順に従い導入しています。
Asteriskのインストールの詳細は、 Asterisk – VOIP-Info.jp Wiki を参照ください。

最初に、asteriakのインストールに必要なコンパイル環境・カーネル開発環境をインストールします。

[root@ms02 ~]# yum -y install gcc gcc-c++ kernel-devel
[root@ms02 ~]# yum -y install ncurses-devel openssl-devel libxml2-devel subversion

ソースコードの格納先ディレクトリへ移動し、dahdi-linuxのソースファイルをダウンロードします。

[root@ms02 ~]# cd /usr/local/src
[root@ms02 src]# wget http://downloads.asterisk.org/pub/telephony/dahdi-linux/dahdi-linux-2.6.0.tar.gz

ダウンロードした圧縮ファイルを展開します。

[root@ms02 src]# tar zxvf dahdi-linux-2.6.0.tar.gz

dahdi-linux-2.6.0 デイレクトリへ移動します。

[root@ms02 src]# cd dahdi-linux-2.6.0

makeコマンドでソースファイルをコンパイルし、make installコマンドでdahhi-linuxをインストールします。

[root@ms02 dahdi-linux-2.6.0]# make
[root@ms02 dahdi-linux-2.6.0]# make install

 

次に、dahdi-toolsをインストールします。
dahdi-toolsのソースファイルをダウンロードします。

[root@ms02 dahdi-linux-2.6.0]# cd ..
[root@ms02 src]# wget http://downloads.asterisk.org/pub/telephony/dahdi-tools/dahdi-tools-2.6.0.tar.gz

ダウンロードした圧縮ファイルを展開します。

[root@ms02 src]# tar zxvf dahdi-tools-2.6.0.tar.gz

dahdi-tools-2.6.0 デイレクトリへ移動します。

[root@ms02 src]# cd dahdi-tools-2.6.0

configureでmakefileを作成し、makeコマンドでコンパイル後、make installコマンドでインストールします。

[root@ms02 dahdi-tools-2.6.0]# ./configure
[root@ms02 dahdi-tools-2.6.0]# make
[root@ms02 dahdi-tools-2.6.0]# make config

インストールに使用したソースファイルを削除しておきます。

[root@ms02 dahdi-tools-2.6.0]# cd ..
[root@ms02 src]# rm -f *.tar.gz
[root@ms02 src]# cd

 

dahdiの設定ファイルを修正します。
Digium社のハードウェアカードは未搭載なので、タイミング発生用のダミークロックのみを有効にします。

# Contains the list of modules to be loaded / unloaded by /etc/init.d/dahdi.
#
# NOTE:  Please add/edit /etc/modprobe.d/dahdi or /etc/modprobe.conf if you
#        would like to add any module parameters.
#
# Format of this file: list of modules, each in its own line.
# Anything after a '#' is ignore, likewise trailing and leading
# whitespaces and empty lines.

# Digium TE205P/TE207P/TE210P/TE212P: PCI dual-port T1/E1/J1
# Digium TE405P/TE407P/TE410P/TE412P: PCI quad-port T1/E1/J1
# Digium TE220: PCI-Express dual-port T1/E1/J1
# Digium TE420: PCI-Express quad-port T1/E1/J1
# wct4xxp

# Digium TE120P: PCI single-port T1/E1/J1
# Digium TE121: PCI-Express single-port T1/E1/J1
# Digium TE122: PCI single-port T1/E1/J1
# wcte12xp

# Digium T100P: PCI single-port T1
# Digium E100P: PCI single-port E1
# wct1xxp

# Digium TE110P: PCI single-port T1/E1/J1
# wcte11xp

# Digium TDM2400P/AEX2400: up to 24 analog ports
# Digium TDM800P/AEX800: up to 8 analog ports
# Digium TDM410P/AEX410: up to 4 analog ports
# wctdm24xxp

# X100P - Single port FXO interface
# X101P - Single port FXO interface
# wcfxo

# Digium TDM400P: up to 4 analog ports
# wctdm

# Digium B410P: 4 NT/TE BRI ports
# wcb4xxp

# Digium TC400B: G729 / G723 Transcoding Engine
# wctc4xxp

# Xorcom Astribank Devices
# xpp_usb

# DAHDI Dummy 追加
dahdi_dummy

 

Asteriskのグループ・ユーザーを登録します。

[root@ms02 ~]# groupadd -g 5060 asterisk
[root@ms02 ~]# useradd -g 5060 -u 5060 -d /var/lib/asterisk -s /sbin/nologin asterisk

/etc/udev/rules.d に dahdi.rules ファイルがインストールされているはずなので、名前を変更します。

[root@ms02 ~]# mv /etc/udev/rules.d/dahdi.rules /etc/udev/rules.d/99-dahdi.rules

 

DAHDIを起動します。

[root@ms02 ~]# /etc/init.d/dahdi start
Loading DAHDI hardware modules:
  dahdi_dummy:                                         	[  OK  ]

Running dahdi_cfg:                                   	[  OK  ]

オーナとグループがasteriskであることを確認しておきます。

[root@ms02 ~]# ll /dev/dahdi/
crw-rw---- 1 	asterisk asterisk 	196, 254  	2月 11 15:03 	channel
crw-rw---- 1 	asterisk asterisk 	196,   0  	2月 11 15:03 	ctl
crw-rw---- 1 	asterisk asterisk 	196, 255  	2月 11 15:03 	pseudo
crw-rw---- 1 	asterisk asterisk 	196, 253  	2月 11 15:03 	timer

 

Asteriskのインストール

ソースコードの格納先ディレクトリへ移動し、Asterisk 1.8.9.2のソースコードをダウンロードします。

[root@ms02 ~]# cd /usr/local/src
[root@ms02 ~]# wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.8.9.2.tar.gz

ダウンロードした圧縮ファイルを展開します。

[root@ms02 ~]# tar zxvf asterisk-1.8.9.2.tar.gz

ソース格納先ディレクトリへ移動します。

[root@ms02 ~]# cd asterisk-1.8.9.2

configureでmakefileを作成し、makeコマンドでコンパイル後、make installコマンドでインストールします。

[root@ms02 asterisk-1.8.9.2]# ./configure
[root@ms02 asterisk-1.8.9.2]# make
[root@ms02 asterisk-1.8.9.2]# make install

サンプルファイルとコンフィグファイルをインストールします。

[root@ms02 asterisk-1.8.9.2]# make samples
[root@ms02 asterisk-1.8.9.2]# make config

 

Asteriskの日本語対応

日本語メッセージに対応するために、2個のソースファイルにパッチを当てます。
パッチを当てるファイルは、下記のファイルになります

  • app_voicemail.c – ボイスメールメニューの日本語音声ファイル対応
  • say.c        - 音声再生時の日本語音声ファイル対応

日本語パッチを適用するために、パッチファイルをダウンロードします。
まだ、1.8.9.2に対応したパッチが用意されていないので1.8.9.1のパッチファイルをダウンロードします。

[root@ms02 asterisk-1.8.9.2]# wget http://ftp.voip-info.jp/asterisk/patch/1.8.9.1/app_voicemail.c.101025-01.patch
[root@ms02 asterisk-1.8.9.2]# wget http://ftp.voip-info.jp/asterisk/patch/1.8.9.1/say.c.101025-01.patch

最初に、ボイスメールメニューの日本語音声ファイル対応パッチを適用します。

[root@ms02 asterisk-1.8.9.2]# patch -p0 < app_voicemail.c.101025-01.patch
patching file apps/app_voicemail.c
Hunk #1 succeeded at 6797 (offset 233 lines).
Hunk #2 succeeded at 6613 (offset 1 line).
Hunk #3 succeeded at 7555 (offset 269 lines).
Hunk #4 succeeded at 8094 (offset 27 lines).
Hunk #5 succeeded at 9107 (offset 269 lines).

次に、音声再生時の日本語音声ファイル対応パッチを適用します。

[root@ms02 asterisk-1.8.9.2]# patch -p0 < say.c.101025-01.patch
patching file main/say.c
Hunk #7 succeeded at 3297 (offset 8 lines).
Hunk #9 succeeded at 6280 (offset 10 lines).
Hunk #11 succeeded at 7356 (offset 10 lines).
Hunk #13 succeeded at 7556 (offset 10 lines).
Hunk #15 succeeded at 7863 (offset 10 lines).

 

PR-200NE(ルータ)用のパッチ対応

次に、asteriskでPR-200NEを使用するためのパッチを適用します。

当初、最新版のAsteriskでパッチが正しく動作せず、”VoIP-Info.jp”の掲示板のお世話になりました。
詳細は、 PR-200NEにレジストできない(400 Bad Request) を参照ください。

Asterisk 1.8系の最新版のパッチをダウンロードします。このパッチは、1.8.9.2でも正しく動作します。

[root@ms02 asterisk-1.8.9.2]# wget http://ftp.voip-info.jp/asterisk/patch/local/1.8/channelschan_sip.rt200ne.110205-01.patch

ダウンロードしたパッチを適用し、PR-200NEを使用できるようにします。

[root@ms02 asterisk-1.8.9.2]# patch -p0 < chan_sip.rt200ne.110205-01.patch
patching file channels/chan_sip.c
Hunk #3 succeeded at 18050 (offset 8 lines).
Hunk #4 succeeded at 19042 (offset -31 lines).
Hunk #5 succeeded at 19093 (offset 8 lines).
Hunk #6 succeeded at 27966 (offset -31 lines).
Hunk #7 succeeded at 28445 (offset 8 lines).
Hunk #8 succeeded at 29665 (offset -31 lines).
patching file channels/sip/include/sip.h

日本語対応パッチとPR-200N用のパッチを当てましたので、再度、configure、make、make installコマンドを実行します。
<注意事項>
Asterisk 1.8.9.0以降では、openssl-devel パッケージがインストールされていないと、sipチャネルドライバが組み込まれません。

[root@ms02 asterisk-1.8.9.2]# ./configure
[root@ms02 asterisk-1.8.9.2]# make
[root@ms02 asterisk-1.8.9.2]# make install

最後に、日本語音声ファイルをインストールします。
Asterisk 1.8用の音声ファイルは、2012年3月現在、用意されていませんので1.6用のものを使用します。

/var/lib/asterisk/soundsディレクトリへ移動します。

[root@ms02 ~]# cd /var/lib/asterisk/sounds

日本語音声ファイルをダウンロードします。

[root@ms02 sounds]# wget ftp://ftp.voip-info.jp/asterisk/sounds/1_6/asterisk-sound-jp_16_pre.tar.gz

ダウンロードした圧縮ファイルを展開します。

[root@ms02 sounds]# tar zxvf asterisk-sound-jp_16_pre.tar.gz

展開に使用した圧縮ファイルを削除しておきます。

[root@ms02 sounds]# rm -f asterisk-sound-jp_16_pre.tar.gz

追加した日本語音声ファイルを使用するために、/etc/asterisk/asterisk.confを修正します。
[options]セクションにlanguageprefix=yesを有効にします。(コメント扱いをやめる)

[root@ms02 sounds]# pico /etc/asterisk/asterisk.conf
languageprefix = yes            	; Use the new sound prefix path syntax.

 

サンプル設定ファイルの作成

Asteriskに標準添付されている設定ファイルは、わかりにくいのでシンプルな設定ファイルを使用するするようにします。
ここでは、オリジナルのAsteriskディレクトリをバックアップしておき、設定ファイル保存先で、サンプルの設定ファイルをダウンロードして展開し、オリジナルファイルを上書きします。

/etcディレクトリへ移動します。

[root@ms02 ~]# cd /etc

Asteriskディレクトリをasterisk.bakというディレクトリ名でバックアップしておきます。

[root@ms02 etc]# cp –r asterisk asterisk.bak

Asteriskディレクトリへ移動し、サンプル設定ファイルをダウンロードし、展開します。

[root@ms02 etc]# cd asterisk
[root@ms02 asterisk]# wget http://ftp.voip-info.jp/asterisk/conf/conf-sample-1.6_01.tar.gz
[root@ms02 asterisk]# tar zxvf conf-sample-1.6_01.tar.gz

サンプルの設定ファイルの展開が出来ましたので、ダウンロードした圧縮ファイルを削除しておきます。

[root@ms02 asterisk]# rm -f conf-sample-1.6_01.tar.gz

rootディレクトリへ戻ります。

[root@ms02 asterisk]# cd

 

Asteriskのパーミッション設定

Asteriskで使用するディレクトリとファイルの所有者・グループをAsteriskへ変更します。

[root@ms02 ~]# chown -R asterisk. /var/lib/asterisk
[root@ms02 ~]# chown -R asterisk. /var/log/asterisk
[root@ms02 ~]# chown -R asterisk. /var/spool/asterisk
[root@ms02 ~]# chown -R asterisk. /var/run/asterisk
[root@ms02 ~]# chown -R asterisk. /etc/asterisk

Asteriskで使用するディレクトリとファイルのパーミッションを変更します。

[root@ms02 ~]# chmod -R u=rwX,g=rX,o= /var/lib/asterisk
[root@ms02 ~]# chmod -R u=rwX,g=rX,o= /var/log/asterisk
[root@ms02 ~]# chmod -R u=rwX,g=rX,o= /var/spool/asterisk
[root@ms02 ~]# chmod -R u=rwX,g=rX,o= /etc/asterisk
[root@ms02 ~]# chmod -R u=rwX,g=rX,o= /var/run/asterisk

Asteriskの設定ファイルを変更します。
最終行の[options]に、runuser = asteriskとrungroup = asteriskの設定を追加します。

[root@ms02 ~]# pico /etc/asterisk/asterisk.conf
[directories]
astetcdir => /etc/asterisk
astmoddir => /usr/lib/asterisk/modules
astvarlibdir => /var/lib/asterisk
astagidir => /var/lib/asterisk/agi-bin
astspooldir => /var/spool/asterisk
astrundir => /var/run/
astlogdir => /var/log/asterisk

[options]
languageprefix=yes
runuser = asterisk
rungroup = asterisk

ここで、一旦、サーバを再起動させて、dahdiとasteriskが正しく起動することを確認しておきます。

[root@ms02 ~]# reboot

 

Asteriskの動作確認

Asteriskの動作を確認します。
udp:5060他が起動していれば、正しく動作しています。

[root@ms02 ~]# netstat -an -udp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local 	Address 	Foreign Address	State   	PID/Program name
Udp	0	0 	0.0.0.0:	5060	0.0.0.0:*		2617	/asterisk
udp 	0 	0	0.0.0.0:	4569	0.0.0.0:*		2617	/asterisk

起動が確認できたら、”asterisk -vvvr”と入力して、Asteriskのコンソールが起動できることを確認しておきます。
(vの数がログの多さの指定となります)
下記のような表示がでれば、正しく起動できています。終了時は、”quit”と入力するとコンソールを終了します。

[root@ms02 ~]# asterisk -vvvvvr
sterisk 1.8.9.2, Copyright (C) 1999 - 2011 Digium, Inc. and others.
Created by Mark Spencer
Asterisk comes with ABSOLUTELY NO WARRANTY; type core show warranty for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type core show license for details.
=========================================================================
  == Parsing /etc/asterisk/asterisk.conf:   == Found
Running as groupasteris
Connected to Asterisk 1.8.9.2 currently running on localhost (pid = 2617)
Verbosity is at least 4

ms02*CLI> sip show
channel        channels       channelstats   domains        history        inuse
mwi            objects        peer           peers          registry       rt200ne
sched          settings       subscriptions  tcp            users          user

localhost*CLI> sip show rt200ne
RT-200NE at ..
-	192.168.0.1 

localhost*CLI> quit
Executing last minute cleanups

 

PR-200NE(ルータ)の設定

ルータの電話設定 - 内線設定 を選択して、Asteriskをひかり電話の子機(SIPクライアント)として登録します。
下記の設定のユーザIDとパスワードはメモしておきます。Asteriskのsip.conf設定で使用します。

内線番号 : 7
端末属性 : 音声専用端末
MACアドレス : asteriskをインストールしたサーバのMACアドレス
ユーザID : 0007
パスワード : パスワードを設定します

pr 200ne 011 Asteriskでひかり電話を使う

sip.conf ファイルの設定

ひかり電話対応ルータに認証するための設定や、SIPユーザを登録するためのファイルとなります。
子機(ユーザ)の追加、削除、変更はこのファイルを編集することで実現します。

sip.confファイルを変更する前に、初期状態のファイルをバックアップしておき、サンプル設定を修正します。

[root@ms02 ~]# cp /etc/asterisk/sip.conf /etc/asterisk/sip.conf.org
[root@ms02 ~]# pico /etc/asterisk/sip.conf
[general]
maxexpirey=3600
defaultexpirey=3600
context=default
port=5060
bindaddr=0.0.0.0
srvlookup=yes
allowguest=no
disallow=all
allow=ulaw
allow=alaw
allow=gsm
language=ja
localnet=192.168.0.0/255.255.255.0

;iPhoneでの待ち受け対応
tcpenable=yes
transport=udp,tcp

;PR-200NE のプライベートIPアドレスの指定
rt200ne=192.168.0.1

;ひかり電話対応ルータの内線設定
register => 7:ルータへ登録したパスワード:0007@hikari-denwa/200

[201]
type=friend
defaultuser=201
secret=内線201のパスワード
canreinvite=no
host=dynamic
dtmfmode=rfc2833
callgroup=1
pickupgroup=1
;mailbox=201

[202]
type=friend
defaultuser=202
secret=内線202のパスワード
canreinvite=no
host=dynamic
dtmfmode=rfc2833
callgroup=1
pickupgroup=1
;mailbox=202

;[203]
;type=friend
;defaultuser=203
;secret=内線203のパスワード
;canreinvite=no
;host=dynamic
;dtmfmode=rfc2833
;callgroup=1
;pickupgroup=1
;mailbox=203

; PR-200NE ひかり電話の設定
[hikari-denwa]
type=friend
secret=ルータへ登録したパスワード
port=5060
defaultuser=0007
fromuser=7
host=192.168.0.1
fromdomain=192.168.0.1
context=default
insecure=invite,port
dtmfmode=inband
canreinvite=no
disallow=all
allow=ulaw
callgroup=1
picupgroup=1
session-expires=300
session-minse=300

 

PR-200NE(ルータ)へのRegister確認

sip.confファイルを修正し、ひかり電話対応ルータのSIPサーバへAsteriskをSIPクライアントとして接続する準備が整いましたので、ここで、正しく認証されることを確認します。
修正した”sip.conf”ファイルをAsteriskに読み込ませるために、ここで一旦、Asteriskを再起動させます。

[root@ms02 ~]# service asterisk restart
Stopping safe_asterisk:                                    	[  OK  ]
Shutting down asterisk:                                    	[  OK  ]
Starting asterisk:                                         	[  OK  ]

sipサーバに認証されていることを確認します。
->Asterisk管理コンソールを使用して、動作の詳細を確認することができます(vの数がログの多さの指定となります)

[root@ms02 ~]# asterisk -vvvvr
Asterisk 1.8.9.2, Copyright (C) 1999 - 2011 Digium, Inc. and others.
Created by Mark Spencer
Asterisk comes with ABSOLUTELY NO WARRANTY; type core show warranty for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type core show license for details.
=========================================================================
  == Parsing /etc/asterisk/asterisk.conf:   == Found
Running as group asterisk
Connected to Asterisk 1.8.9.2 currently running on ms02 (pid = 3083)
Verbosity was 3 and is now 4

localhost*CLI> sip show rt200ne
RT-200NE at ..
- 192.168.0.1

localhost*CLI> sip show registry
Host           	dnsmgr 	Username    Refresh 	State 		Reg.Time
hikari-denwa:5060 N     7           3600 	Registered 	Sat, 11 Feb 2012 16:25:43
1 SIP registrations.

localhost*CLI> sip show peers
Name/username 		Host		Dyn Forcerport ACL Port		Status
201/201  		(Unspecified) 	D          	0        	Unmonitored
202/202  		(Unspecified)  	D          	0        	Unmonitored
hikari-denwa/0007	192.168.0.1  			5060     	Unmonitored
3 sip peers [Monitored: 0 online, 0 offline Unmonitored: 1 online, 2 offline]

 

3CXPhone(ソフトフォン)の設定

3CXPhoneを起動して、アカウントを設定します。
sip.confファイルに設定したID、パスワードとAsteriskをインストールしたサーバのプライベートIPアドレスを設定します。

3CXPhone 023 200x300 Asteriskでひかり電話を使う

 Acount name : 内線番号に対応する適当な名前を付けます。

 Caller ID : 内線番号に対応する適当な識別名を付けます。

 Extension : SIPアカウントの内線番号を記述します。

 ID : SIPアカウントのdefult user を記述します。

 Password : SIPアカウントのパスワードを記述します。

 My location : サーバのプライベートIPアドレスを記述します。

正しくAsteriskに接続できると、”On Hook” と表示します。

3CXPhone 03 Asteriskでひかり電話を使う

iPhoneにSIPアプリ(Acrobits Softphone)をインストール

SIPアプリとして、Acrobits Softphone をiPhoneにインストールします。
この有料アプリを採用する理由は、回線スピードが遅い状況でも、音声が途切れにくい(音質が良い)ところがポイントでした。また、プッシュ通知に対応しており、アプリが起動していない状態でも着信を受けることができます。

Acrobits Softphone アプリをインストールします。

acrobits 01 Asteriskでひかり電話を使う

アプリのインストールが完了したら、アカウントを設定します。

acrobits 031 Asteriskでひかり電話を使う

 

AsteriskサーバにRegisterすると、電話マークが緑表示となります。

acrobits 02 Asteriskでひかり電話を使う

 

 

 

 

 

簡単な通話テスト(エコーテスト)

ソフトフォンとiPhoneのアカウント設定が完了しましたので、エコーテストを実施します。
“333″をダイヤルすると、日本語のメッセージが流れた後、エコーテストで回線状態を確認することができます。

  • 200 内線201~209の一斉呼び出し
  • 201~209 内線
  • 201*1~209*1 ボイスメール録音
  • 298 ボイスメール再生(パスワード認証あり)
  • 299 ボイスメール再生(パスワード認証なし)
  • 300 音声会議
  • 301 音声会議(会議室を動的に生成)
  • 317 時報
  • 333 エコーテスト

 

外線発信の設定

Asteriskでは、外線発信の設定を”extensions.conf”ファイルに記述します。
設定ファイル格納先ディレクトリへ移動し、オリジナルの設定ファイルをバックアップした後、extensions.confを修正します。

[root@ms02 ~]# cd /etc/asterisk/
[root@ms02 asterisk]# cp extensions.conf extensions.conf.org
[root@ms02 asterisk]# pico extensions.conf

extensions.conf 2 Asteriskでひかり電話を使う

 

外線への発着信テスト

iPhoneから、携帯電話に発信してみます。正しく動作していれば、自宅のひかり電話の番号で着信するはずです。
今度は、携帯電話から先ほど着信した番号(自宅のひかり電話の番号)に折り返し、発信してみます。

 == Using SIP RTP CoS mark 5
    -- Executing [携帯電話番号@default:1] Set("SIP/201-00000010", "CALLERID(num)=ひかり電話番号") in new stack
    -- Executing [携帯電話番号@default:2] Set("SIP/201-00000010", "CALLERID(name)=ひかり電話番号") in new stack
    -- Executing [携帯電話番号@default:3] Dial("SIP/201-00000010", "SIP/携帯電話番号@hikari-denwa,120,T") in new stack
  == Using SIP RTP CoS mark 5
    -- Called SIP/携帯電話番号@hikari-denwa
    -- SIP/hikari-denwa-00000011 is making progress passing it to SIP/201-00000010
    -- SIP/hikari-denwa-00000011 is ringing
    -- SIP/hikari-denwa-00000011 is making progress passing it to SIP/201-00000010
  == Spawn extension (default, 携帯電話番号, 3) exited non-zero on 'SIP/201-00000010'
 == Using SIP RTP CoS mark 5
    -- Executing [200@default:1] Dial("SIP/hikari-denwa-0000000d", "SIP/201&SIP/202&SIP/203&SIP/204&IAX2/201&IAX2/202&IAX2/203&IAX2/204") in new stack

 

以上で、「Asteriskでひかり電話を使う(IP-PBXの導入)」を終了します。

 

iPhoneでPacketiX VPN Serverを使う

前回、iPhoneを自宅(または職場)のWi-Fiに接続して、ひかり電話の子機として使用できるようにしました。

2回目の今回は、外出先のiPhoneから3G回線(または、Wi-Fi接続)で、自宅(または職場)のひかり電話を使用できるようにします。発信だけでなく着信もでき、また、内線同士の通話の場合は、電話代も”無料”(パケット定額代のみ)となります。自宅にVPNサーバを設置することで、このような利用方法を実現することができます。

今回は、ソフトイーサ社の”PacketiX VPN Server “というソフトウェアをLinuxサーバへインストールします。
IPsec機能に対応したベータ版(使用期限:2012年6月30日)ですが、 iPhoneから自宅(または職場)に設置したサーバなどに、安全に接続することが出来ます。ベータ版ですので、無償で使用することができます。

詳細は、こちらの PacketiX VPN 3.0 IPsec対応ベータ版 ホームページ  を参照ください。

※ヤマハ等から販売されているVPNルーター機器(ハードウェア)を設置しても、”PacketiX VPN Server”と同様なVPN接続を実現することができます。設置のしやすさは、”PacketiX VPN Server”のほうが簡単です。
ヤマハの詳細は、 スマートフォン/タブレット端末との接続 を参照ください。

インターネットVPNをヤマハルータで構築

 

VPN接続の概要

VPN(Virtual Private Network)を判り易く表現すると、「外出先から、すご~く長いLANケーブルで、自宅(または職場)のスイッチングハブに接続している状態」というイメージです。インターネットをあたかも、専用回線であるかのごとく利用することができます。(下図を参照ください)

VPN接続すると、自宅(または会社)のローカルネットワークに接続している状態になりますので、iPhoneをひかり電話の子機として使用することができます。回線は、3GでもWiFi経由でも、VPN接続を行うことができます。
ただし、3G回線経由では、回線速度が極端に遅いと、音声に遅れが出て会話にならない場合があります。

インターネット上の通信内容は暗号化されていますので、安心してアクセスすることができます。

VPN 1 iPhoneでVPN接続(PacketiX編)

ここで注意しなければいけない点が2点あります。

  • ひかり電話対応ルータの設定を変更し、”ポート開放”を行う必要があります。
  • サーバ上でパケットファイルタリングを行っている場合は、設定を変更する必要があります。

 

PacketiX VPN サーバのインストール(Linux版)

今回は、MicroServerのCentOS5.7上に、PacketiX VPN サーバをインストールします。
PacketiX VPNサーバの管理は、ネットワーク上のWindowsパソコンから行えますので、らくちんです。

まず最初に、サーバにpacketiXのソースコードをダウンロードします。

[root@ms02 ~]# cd /usr/local/src/
[root@ms02 src]# wget http://download.softether.co.jp/folder/vpn3_ipsec_beta/v3.04-7768-beta-2012.01.19/Japanese/Linux/PacketiX%20VPN%20Server%203.0/64bit%20-%20Intel%20x64%20or%20AMD64/vpnserver-v3.04-7768-beta-2012.01.19-ja-linux-x64-64bit.tar.gz

ダウンロードした圧縮ファイルを展開します。

[root@ms02 src]# tar zxvf vpnserver-v3.04-7768-beta-2012.01.19-ja-linux-x64-64bit.tar.gz

ソースコードの展開先へ移動します。

[root@ms02 src]# cd vpnserver

makeコマンドを実行して、ソースコードをコンパイルします。

[root@ms02 vpnserver]# make

コンパイルが正常に完了したら、vpnserverディレクトリを/usr/local 配下に移動します。

[root@ms02 vpnserver]# cd ..
[root@ms02 src]# mv vpnserver /usr/local

/usr/localvpnserverディレクトリへ移動して、パーミッションをroot権限でなければ読み書きできないように変更します。

[root@ms02 src]# cd /usr/local/vpnserver/
[root@ms02 vpnserver]# chmod 600 *
[root@ms02 vpnserver]# chmod 700 vpncmd
[root@ms02 vpnserver]# chmod 700 vpnserver

 

ここで、動作チェックを行います。

[root@ms02 vpnserver]# ./vpncmd
vpncmd コマンド - PacketiX VPN コマンドライン管理ユーティリティ
PacketiX VPN コマンドライン管理ユーティリティ (vpncmd コマンド)
Version 3.04 Build 7768 Beta 1 (Japanese)
Compiled 2012/01/19 22:33:51 by yagi at pc25
Copyright (C) 2004-2010 SoftEther Corporation. All Rights Reserved.

vpncmd プログラムを使って以下のことができます。

1. VPN Server または VPN Bridge の管理
2. VPN Client の管理
3. VPN Tools コマンドの使用 (証明書作成や通信速度測定)

1 - 3 ?選択: 3

VPN Tools を起動しました。HELP と入力すると、使用できるコマンド一覧が表示できます。

VPN Tools> check
Check コマンド - PacketiX VPN の動作が可能かどうかチェックする
---------------------------------------------------
PacketiX VPN 動作環境チェックツール

Copyright (C) 2004-2010 SoftEther Corporation.
All Rights Reserved.

この動作環境チェックツールを実行したシステムがテストに合格した場合は、PacketiX VPN ソフトウェアが動作する可能性が高いです。チェックにはしばらく時間がかかる場合があります。そのままお待ちください...

カーネル系のチェック中...
              [合格] ○
メモリ操作系のチェック中...
              [合格] ○
文字列処理系のチェック中...
              [合格] ○
ファイルシステムのチェック中...
              [合格] ○
スレッド処理システムのチェック中...
              [合格] ○
ネットワークシステムのチェック中...
              [合格] ○

すべてのチェックに合格しました。このシステム上で PacketiX VPN Server / Bridge が正しく動作する可能性が高いと思われます。

コマンドは正常に終了しました。

VPN Tools> exit
[root@ms02 vpnserver]#

 

次に、vpnserver をデーモンプロセスとして Linux に登録するために、スタートアップスクリプトを /etc/init.d/vpnserver という名前で新規ファイルとして作成します。

[root@ms02 vpnserver]# pico /etc/init.d/vpnserver
#!/bin/sh
# chkconfig: 345 98 01
# description: PacketiX VPN Server 3.0

DAEMON=/usr/local/vpnserver/vpnserver
LOCK=/var/lock/subsys/vpnserver

test -x $DAEMON || exit 0

case "$1" in
start)
$DAEMON start

touch $LOCK
;;
stop)
$DAEMON stop

rm $LOCK
;;
restart)
$DAEMON stop
sleep 3
$DAEMON start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0

パーミッションを755に変更し、root 権限を持たないユーザによる書き換えを禁止します。

[root@ms02 vpnserver]# chmod 755 /etc/init.d/vpnserver

最後に、「chkconfig」コマンドを使用して、上記のスタートアップスクリプトが Linux カーネル起動時に、自動的にバックグラウンドで起動するようにします。

[root@ms02 vpnserver]# chkconfig --add vpnserver
[root@ms02 vpnserver]# chkconfig vpnserver on

vpnserverを起動します。

[root@ms02 vpnserver]# service vpnserver start
PacketiX VPN Server Service Started.

 

PacketiX VPN サーバの設定

PacketiXVPNサーバは、「PacketiX VPN サーバ管理マネージャ(以後、サーバ管理マネージャ)」を使用して、ローカルのWindowsパソコンからGUIで簡単に管理することができます。

PacketiX VPN サーバのWindows版配布パッケージには、インストーラなしの”Exe-Only版”が用意されています。
Windowsサーバ版(32bit)は、こちらの VPNサーバ管理マネージャのダウンロード  からダウンロード出来ます。

この”Exe-Only”版のパッケージをダウンロードして、実行するすると、任意のディレクトリに PacketiX VPN サーバの実行ファイルが展開されます。

vpnsmgr iPhoneでVPN接続(PacketiX編)

このファイルの中の上記の 2 つのファイル(vpnsmgr.exeとhamcore.se2)だけで、サーバ管理マネージャを実行することができます。

サーバ管理マネージャを用いて、インストール後全く設定されていない PacketiX VPN Serverに接続し、簡易セットアップウィザードを使用して、リモートアクセス用の VPN サーバの設定を簡単に行うことができます。

Windowsパソコン上でvpnsmgr.exeを実行して、サーバ管理マネージャを起動させます。
サーバ管理マネージャが起動したら、[新しい接続設定]をクリックして、VPNサーバの設定を行います。

vpnsmgr 02 271x300 iPhoneでVPN接続(PacketiX編)

新しい接続設定を作成します。必要事項を記述したら、[OK]ボタンをクリックします。
ホスト名は、PacketiX VPNサーバをインストールしたサーバのプライベートIPアドレスを指定します。

vpnsmgr 031 300x192 iPhoneでVPN接続(PacketiX編)

ここではパスワード無しでOKボタンをクリックします。

vpnsmgr 042 300x230 iPhoneでVPN接続(PacketiX編)

簡易セットアップを行います。

vpnsmgr 051 300x220 iPhoneでVPN接続(PacketiX編)

確認メッセージが出るので、[はい]をクリックします。

vpnsmgr 06 300x54 iPhoneでVPN接続(PacketiX編)

仮想HUB名を決定します。
ここで指定した名前は、iPhoneのVPN登録時のユーザ名と一緒に使用するので控えておきます。

vpnsmgr 07 300x136 iPhoneでVPN接続(PacketiX編)

ユーザを作成します。

vpnsmgr 08 300x242 iPhoneでVPN接続(PacketiX編)

ユーザ名:xxxxx パスワード:xxxxxx を入力し[OK]ボタンをクリックします。
ここで指定したユーザ名とパスワードはiPhoneのVPN登録時に使用しますので控えておきます。
認証方式は、パスワード認証を指定します。

vpnsmgr 09 300x209 iPhoneでVPN接続(PacketiX編)

新しいユーザが作成されたことを確認し、[閉じる]ボタンをクリックします。

vpnsmgr 10 300x170 iPhoneでVPN接続(PacketiX編)

IPSecの設定を行いますか?と聞いてくるので、[はい]ボタンをクリックします。

vpnsmgr 11 300x52 iPhoneでVPN接続(PacketiX編)

IPsec/L2TPサーバの設定を行います。
L2TPサーバ機能を有効にするのチェックボックスにチェックを入れ、IPsec事前共有鍵を設定し、[OK]ボタンを押します。
ここで指定したIPsec事前共有鍵は、iPhoneのVPN登録時に使用しますので、控えておきます。

vpnsmgr 13 300x230 iPhoneでVPN接続(PacketiX編)

管理マネージャの管理画面に戻りますので、仮想HUBが”オンライン”と表示されていれば、ここまでの設定はOKです。

vpnsmgr 141 300x229 iPhoneでVPN接続(PacketiX編)

ここで、一旦、管理マネージャを終了し、再度、起動させ[接続]ボタンをクリックします。

vpnsmgr 15 271x300 iPhoneでVPN接続(PacketiX編)

管理者パスワードの設定を行います。パスワード欄は空欄のままで、[OK]ボタンをクリックします。

vpnsmgr 161 300x230 iPhoneでVPN接続(PacketiX編)

サーバ管理者パスワードを設定しますか?と聞いてきますので、[はい]ボタンをクリックします。

vpnsmgr 17 300x60 iPhoneでVPN接続(PacketiX編)

新しく設定するパスワードを入力し、[OK]ボタンをクリックします。

vpnsmgr 181 300x135 iPhoneでVPN接続(PacketiX編)

次に、ローカルブリッジの設定を行います。
VPN サーバでは、作成した仮想 HUB と物理的な LANカードとの間を「ローカルブリッジ接続」することで、VPN接続が可能とります。

vpnsmgr 191 300x229 iPhoneでVPN接続(PacketiX編)

物理的なLANカードへのローカルブリッジ接続を作成します。LANカードは、”eth0″を選択し、[ローカルブリッジを追加]ボタンをクリックします。

vpnsmgr 20 300x249 iPhoneでVPN接続(PacketiX編)

サーバの再起動を促すメッセージを表示しますので、ローカルブリッジが追加されたことを確認した後、サーバを再起動させておきます。

vpnsmgr 21 300x62 iPhoneでVPN接続(PacketiX編)

ローカルブリッジが追加されたことを確認しておきます。

vpnsmgr 22 300x278 iPhoneでVPN接続(PacketiX編)

 

2枚目のネットワークアダプタ(LANカード)の追加

Linux版のPacketiX VPN サーバをインストール時、以下のような注意点があるようです。
マニュアルの「3.6.11 Linuxにおけるローカルブリッジの注意事項」を以下に示します。

今回は、サーバ上でAsteriskサーバも同時に動作させたいので、LANカードを1枚追加し、2枚構成としました。
LANカード2枚構成のほうが、使い勝手が良いようです(何事も”Simple is best.”ですね)

packetix 02 iPhoneでVPN接続(PacketiX編)

なにやら難しい記述ですが、要約すると以下のような内容となります。

  • サーバにPacketiX VPNサーバのみをインストールして使用する場合は、LANカードは1枚でOKだよ。
  • サーバ上で他のサーバアプリ(ウェブサーバなど)を同時に動かしたい場合は、LANカードを1枚追加してね。追加しないと、VPN接続した端末からウェブサーバにアクセスできないよ。

※仮想LANカード(tapデバイス)を追加して、仮想HUBにローカルブリッジさせ、Linux上でtapデバイスと物理的なLANカード(eth0)をブリッジさせ、IPアドレスをブリッジデバイスに割り当てることで、LANカードは1枚でも動作させることが可能でした。ただし、この方式では、通信速度の低下を招くようです。

マニュアルの詳細は、こちらの PacketiX VPN 3.0 Web版オンラインマニュアル を参照ください。

 

次に、物理的なネットワークアダプタ(LANカード)をサーバに追加します。
今回は、Broadcom社のNetXtremeカード(コントローラはBCM5751でPCIe x1対応のカード)を追加しました。

BCM5751 300x225 iPhoneでVPN接続(PacketiX編)

ハードウェアの追加が完了したら、ネットワーク設定を変更します。
IPアドレスは、追加したLANカード(eth1)に割り当てます。オンボードの元々のLANコントローラ(eth0)にはIPアドレスを割り当てません。

まず、ネットワーク設定スクリプト格納先へ移動します。最初に、eth0のネットワーク設定を変更します。

[root@ms02 ~]# cd /etc/sysconfig/network-scripts/
[root@ms02 network-scripts]# pico ifcfg-eth0
# Broadcom Corporation NetXtreme BCM5723 Gigabit Ethernet PCIe onboad NIC
# PacketiX VPN Server 用に変更 LAN#1

DEVICE=eth0
TYPE=Ethernet
BOOTPROTO=static
ONBOOT=yes

HWADDR=3C:4A:92:xx:xx:xx

# BROADCAST=192.168.0.255
# IPADDR=192.168.xx.xx
# NETMASK=255.255.255.0
# NETWORK=192.168.0.0

# GATEWAY=192.168.0.1
# DNS=192.168.xx.xx

次に、eth1のネットワーク設定を追加します。MACアドレスはボードの値に合わせます

[root@ms02 network-scripts]# pico ifcfg-eth1
# Broadcom Corporation NetXtreme BCM5751 Gigabit Ethernet PCIe x1 slot
# PacketiX VPN Server 用に変更 LAN#2

DEVICE=eth1
TYPE=Ethernet
BOOTPROTO=static
ONBOOT=yes

HWADDR=00:10:18:xx:xx:xx

IPADDR=192.168.xx.xx
BROADCAST=192.168.0.255
NETMASK=255.255.255.0
NETWORK=192.168.0.0

GATEWAY=192.168.0.1
DNS=192.168.xx.xx

ネットワーク設定ファイルの修正が完了したら、記述にミスがないことを確認し、ネットワークを再起動させます。

[root@ms02 network-scripts]# service network restart

ネットワークが再起動したら、ifconfigコマンドで、ネットワーク設定を確認しておきます。

[root@ms02 network-scripts]# ifconfig
eth0      Link encap:Ethernet  HWaddr 3C:4A:92:xx:xx:xx
          UP BROADCAST RUNNING MULTICAST  MTU:1454  Metric:1
          RX packets:277 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:19186 (18.7 KiB)  TX bytes:0 (0.0 b)
          Interrupt:169 Memory:fe9f0000-fea00000

eth1      Link encap:Ethernet  HWaddr 00:10:18:xx:xx:xx
          inet addr:192.168.xx.xx  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1454  Metric:1
          RX packets:526 errors:0 dropped:0 overruns:0 frame:0
          TX packets:454 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:80516 (78.6 KiB)  TX bytes:96333 (94.0 KiB)
          Interrupt:177 Memory:fe8f0000-fe900000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:265226 errors:0 dropped:0 overruns:0 frame:0
          TX packets:265226 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:10705834 (10.2 MiB)  TX bytes:10705834 (10.2 MiB)

 

ブロードバンドルータのポート開放(ポートフォワーディング)

ブロードバンドルータ(以後、ルータ)の内側にVPN サーバを設置する場合は、インターネットからグローバル IP アドレス宛(ルータ)に届いたVPN関係のパケットを、VPN サーバに割り当てているプライベートIPアドレスに転送するようにしてやらなければなりません。
この操作のことを俗に”ポート開放”(ポートフォワーディング)などと言います。当方でレンタルしているルータ(PR-200NE)の場合、”静的IPマスカレード”という名称を使用しています。

PaketiX VPN サーバでは、下記のポートを開放する必要があります。

【LAN側のホスト】: 192.168.xx.xx (VPNサーバのプライベートIPアドレス)
【プロトコル】    : UDP
【ポート番号】    : 500

【LAN側のホスト】: 192.168.xx.xx (VPNサーバのプライベートIPアドレス)
【プロトコル】    : UDP
【ポート番号】    : 4500

Windowsパソコンのブラウザから、ルータの管理画面にアクセスして、設定を変更します。
最後に、忘れずに保存ボタンをクリックします。

pr 200ne 011 297x300 iPhoneでVPN接続(PacketiX編)

 

パケットフィルタリング(iptables)

LinuxOS上でパケットフィルタリング(iptables)を実行している場合、設定を変更する必要があります。

下記のパケットを許可します。

iptables -A INPUT -p udp –dport 500 -j ACCEPT

iptables -A INPUT -p udp –dport 4500 -j ACCEPT
iptables -A INPUT -p udp –dport 1701 -j ACCEPT
iptables -A INPUT -p esp -j ACCEPT
iptables -A INPUT -p all -s 192.168.0.0/24 -d 192.168.0.0/24 -j ACCEPT

 

iPhoneの設定

VPNサーバに接続するために、iPhoneの設定を行います。
設定 – 一般 – ネットワーク – 下の方にあるVPN – VPN構成の追加を選択します。
L2TPを選択してアカウント情報を入力します。サーバの項目は、自宅のルータに割り当てられているグローバルIPアドレスを入力します。
その他の項目は、PAcketiX VPNサーバを設定時にメモしておいた内容を打ち込みます。

iphone 01 200x300 iPhoneでVPN接続(PacketiX編)

VPNサーバに接続します。
設定 – 一般 – ネットワーク – VPN を選択してVPN接続をONします。正しく接続されると、最上段の電池残量表示の横にVPNと表示します。Statusを確認すると、ローカルネットワーク上のDHCPサーバが割り当てた、プライベートIPアドレスを確認することができます。

iphone 091 300x212 iPhoneでVPN接続(PacketiX編)

 

VPNネットワーク試験

iPhoneにpingアプリをインストールして、簡単なネットワーク試験を実施します。
使用するpingアプリは、無償アプリの “Network Ping Lite” を使用します。赤丸内は、DHCPサーバが割り当てたiPhoneのプライベートIPアドレスとなります。

iphone 05 iPhoneでVPN接続(PacketiX編)

Startボタンを押して、VPNサーバへpingを飛ばします。ここでは、サーバのローカルIPアドレスを指定します。
一番下のパケットロス表示が0%なら正しく動作しています。

iphone 061 200x300 iPhoneでVPN接続(PacketiX編)

 

サーバ管理マネージャでの動作確認

サーバ管理マネージャを開き、セッション管理ボタンをクリックします。
iphoneからVPN接続があれば、赤枠内に接続元の情報が表示されます。

vpnsmgr 23 300x215 iPhoneでVPN接続(PacketiX編)

さらに詳しい接続ログを調べたい場合は、ログファイル一覧ボタンをクリックすると、詳しいログ情報を確認することが出来ます。

vpnsmgr 24 300x240 iPhoneでVPN接続(PacketiX編)

 

iPhoneの3G回線でひかり電話

iPhoneの3G回線を使用して、自宅のVPNサーバへ接続することができましたので、AGEphoneから外線発信してみます。回線スピードが1Mbits/sec以上あれば、普通の電話と何ら変わることなく利用できるはずです。

“Ready”と表示されれば、ひかり電話で通話ができます。(ルータのSIPサーバへ接続している状態です)

agephone 01 iPhoneでVPN接続(PacketiX編)

3G回線経由での接続では、回線の状態によつては、通話品質が悪く会話が成立しない場合もあるようです。

当方の地域(東毛地区)では、昼間の回線のスピードは、55kbits/sec程で使い物になりませんでした。
回線状態が良い時は、2.2Mbits/sec程度のスピードがでますので、普通に通話できました。
Wi-Fi接続は、11.9Mbits/secでまったく問題ありませんでした。この場合は、音声の遅れもほとんどありませんでした。

speedtest 02 iPhoneでVPN接続(PacketiX編)

 

ネットワーク設定をミスした場合のリカバリ方法

PacketiX VPN サーバの設定をミスしてしまい、ネットワークへのアクセスが出来なくなってしまった場合は、サーバに直接ログインして、復旧させることができます。
マニュアルの「3.11.5 コンフィグレーション内容のロールバック」の記述を以下に示します。

packetix 03 iPhoneでVPN接続(PacketiX編)

インストール先へ移動し、vpn_server.configファイルをバックアップファイルに置き換えることで、復旧させることができます。

[root@ms02 ~]# cd /usr/local/vpnserver/
[root@ms02 vpnserver]# ll
-rw------- 1 root root    1408  1月 19 22:49 Makefile
-rw------- 1 root root   62919  1月 19 22:49 ReadMeFirst_License_EUC.txt
-rw------- 1 root root   62917  1月 19 22:49 ReadMeFirst_License_GB2312.txt
-rw------- 1 root root   62918  1月 19 22:49 ReadMeFirst_License_SJIS.txt
-rw------- 1 root root   72173  1月 19 22:49 ReadMeFirst_License_UTF8.txt
drwx------ 2 root root    4096  2月 20 15:01 backup.vpn_server.config
drw------- 2 root root    4096  2月 15 15:24 code
-rw------- 1 root root 2585186  1月 19 22:49 hamcore.se2
drw------- 2 root root    4096  2月 15 15:24 lib
drwx------ 3 root root    4096  2月 15 18:36 packet_log
drwx------ 4 root root    4096  2月 15 16:30 security_log
drwx------ 2 root root    4096  2月 20 08:46 server_log
-rw------- 1 root root    9378  2月 20 15:26 vpn_server.config
-rwx------ 1 root root 3328292  2月 15 15:24 vpncmd
-rwx------ 1 root root 3328240  2月 15 15:24 vpnserver

[root@ms02 vpnserver]# cd backup.vpn_server.config
[root@ms02 vpnserver]# cp 00000091_vpn_server.config ../vpn_server.config

正常に動作していたvpn_server.configファイルをコピーしたら、VPNサーバをリブートさせます。見事、復活です!

 

PacketiX VPN サーバのアンインストール

今回インストールに使用したPacketiX VPNサーバは、IPsecに対応したベータ版で試用期間がありますので、アンインストール方法について記述しておきます。オープンソース版の公開が楽しみです!

/etc/init.d/vpnserver stop コマンドを実行して、VPN サーバを停止させます。

[root@ms02 ~]# /etc/init.d/vpnserver stop

chkconfig –del vpnserver コマンドを実行して、vpnserver をサービスとして登録解除します。

[root@ms02 ~]# chkconfig --del vpnserver

/etc/init.d/vpnserver ファイルを削除します。

[root@ms02 ~]# rm –f /etc/init.d/vpnserver

上記の作業の後、vpnserver がインストールされているディレクトリを削除します。

[root@ms02 ~]# rm-rf /usr/local/vpnserver

 

以上で、「iPhoneでPacketiX VPN Serverを使う」を終了します。

 

iPhoneでひかり電話を使用する

NTTのひかり回線(Bフレッツ/フレッツ光ネクスト)を申し込むと、ひかり電話を使用することができます。

この電話は、メタル配線を使用した昔ながらのアナログ電話とは違い、インターネットを使用した最新のIP(Internet Protocol)電話となります。SIPという規格に対応した電話機(ソフトフォンを含む)なら使用することができます。

インターネットに接続できる環境さえあれば、日本だろうが海外だろうがどこにいても、自宅のひかり電話から、電話がかけられるようになり、電話代を劇的に節約することができます。固定電話への発信時は、なんと91%OFFとなります。

No. 発信元 通話先 料金/3分 割引率 備考
1 ひかり電話 固定(加入)電話 8.4円 91% OFF  
2 ひかり電話 携帯電話 50.4円 43% OFF NTTドコモの場合
3 携帯電話 固定(加入)電話 88.2円 -  
4 携帯電話 携帯電話 88.2円 -  


この夢のようなシステムの参考記事を、備忘録を兼ねて、紹介していきたいと思います。

最終的なシステム構成図は、下図のような構成となります。
※構成のポイントは、外出先のスマホからVPN接続を行い、自宅のひかり電話を利用するところにあります。
※無線LANのアクセスポイントは、ルーターのスロットへ無線LANカードを挿入(レンタルで月額315円)することでも設置できますが、コストを優先して個別に設置します。(機能的には、まったく問題ありません)

hoiseizu 1 iPhoneでひかり電話を使う

スマホdeひかり電話の概要

初回の今回は、自宅のひかり電話をiPhoneとSIPフォン(ソフトフォン)から利用できるようにします。
必要となる機材は、無線LANのアクセスポイント、iPhoneなどのスマートフォンとSIPアプリとなります。
※スマートフォンは、事前に自宅内のアクセスポイントへ、Wi-Fi接続しておきます。

<前提条件>
 1) ひかり回線(Bフレッツもしくは、フレッツ光ネクスト)とひかり電話に加入している。
 2) スマートフォンは、無線LAN(WiFi)でローカルネットワークへ接続済み。

ひかり電話のルーターは、SIP (Session Initiation Protocol) サーバ機能を内蔵しており、SIP電話機を最大5台まで接続できます。最近のNTTは、Webサイトで盛んに宣伝しています。

hikari 2 iPhoneでひかり電話を使う

詳細はこちらの フレッツ公式ホームページ  を参照ください。

SIP電話機を接続する方法には、下記のようないろいろな方法があります。

  • NTTのフレッツフォンを使用します(VP100/VP2000などのひかり電話専用機はテレビ電話もできます)
  • SIPに対応した電話機を使用します(パナソニック社のKX-UT123Nなどを接続します)
  • iPhoneなどのスマートフォンに、AGEphone などのアプリをインストールして使用します。
  • パソコンに、3CXPhoneなどのSIPフォン(ソフトフォン)をインストールして使用します。

 

ルータの設定

Windowsパソコンのブラウザからルーターにアクセスします。

PR 200NE 11 300x180 iPhoneでひかり電話を使う

 電話設定 - 内線設定 のページを開きます。

未使用の内線番号にiPhoneをアサインします。
編集をクリックして、設定を行います。

今回は、内線6に設定します。

PR 200NE 2 300x213 iPhoneでひかり電話を使う

内線番号     : 6
ニックネーム   : 適当な名前にします。
端末属性     : 音声専用端末を選択します。
MACアドレス    : 端末のMACアドレスを記述します。
ダイジェスト認証 : 行うを選択します。
ユーザID      : 適当なIDを記述します。
パスワード     : 適当なパスワードを記述します。

iPhoneの設定

 Appleストアから無料のsip電話アプリである”AGEphone”をインストールします。
アプリのインストールが完了したら、ルータの内線情報に従い、SIPアカウントを設定します。

agephone 1 200x300 iPhoneでひかり電話を使う

   

  User ID              : 内線番号を設定します。

  Authorization ID : ユーザIDを設定します

  Password           : パスワードを設定します。

  その他の項目は、初期値でも問題ありません。

AGEphoneを使用する前に、回線をWiFiでに切り替えておきます。

keypadをタップすると認証が行われ、”Ready” と表示されれば、電話が使えます。
“Ready”以外が表示される場合は、設定を見直します。

agephone 2 199x300 iPhoneでひかり電話を使う

3CXPhone(ソフトフォン)の設定

 iPhoneの時と同じように、ルーターに3CXPhoneを登録します。

PR 200NE 3 300x213 iPhoneでひかり電話を使う

 

発信に使用する番号(通知番号)は、iPhoneの場合と同じ番号を指定しても、問題ありません。
別の番号を指定することもできます。

次に、3CXPhone(SIPフォン)をWindowsパソコンにインストールします。

こちらの 3CXのダウンロードサイト  から入手することができます。

 インストールが完了したら、設定を行います。

3CXPhone 1 200x300 iPhoneでひかり電話を使う   Account name : 内線番号等の識別名を設定します。

  Caller ID     : 主にこの電話を使用する個人名などを設定します。

  Extension    : ルーターの内線番号を設定します。

  ID         : ユーザIDを設定します。

  Password    : パスワードを設定します。

  My location   : ルータのIPアドレスを設定します。

  その他の項目は初期値でOKです。

3CXPhoneを起動し、”On Hock” と表示されれば、ひかり電話を使用することができます。

3CXPhone 2 171x300 iPhoneでひかり電話を使う

 

ルーターの設定で、内線番号5と内線番号6を共に有効にすることで、”3CXPhone”と”iPhone”との間で、内線通話をおこなうことが出来ます。

PR 200NE 4 300x174 iPhoneでひかり電話を使う

 

以上で、「iPhoneでひかり電話を使う」を終了します。