IAX2を使って拠点間接続。

仕事の電話回線はさくらVPSにAsteriskを設置してFusionIP電話え運用してます。
さくらVPSの東京第2リージョンだとFUSION IP-PHONEのサーバへのPingが1で通るのでPBX運用サーバを置くには最適ですw

しかし、フリーダイヤル等固定回線必須の連絡先とかもあるので…自宅のひかり電話もIP-PBXに収容して使用しています。

今まではVPS側から自宅にVPN接続してひかり電話にレジストしていたのだけど…
ルーターを再起動した時等にIPアドレスが変動してしまうのでその対策等もあったり、IP変動の検知後しばらく電話が通じなくなったりと不便が…

そこで、自宅にRaspberryPiでAsteriskを設置してIAX2を利用してVPS上のAsteriskに接続するように変更。
通常、AsteriskのIAX2拠点間接続は双方向にレジストをするのですが、今回はIPアドレス変動対策ということで片側からのレジストのみで発着信対応を実装します。

設定はいつも通りのFreePBXで行うので通常のトランク収容や内線設定は完了している前提で進めます。

※この設定はナンバーディスプレイが使えない前提の設定です。

まず、VPS上のAsteriskにIAX2内線を作ります。
今回は内線番号500番で作成しました。
内線設定(VPS)

基本的には通常の内線設定でcontextだけ「from-pstn」に書き換えます。
これによってこの内線の通話は外部トランクとの通信として扱われます。

続いてインバウンドルート(VPS)

内線からの発信をそのまま外線着信のコンテキストに切り替えているのでこの設定の場合はすべて500番からの着信になります。
インバウンドルートのCallerIDを500にしてなり分けを設定。

続いて、カスタムトランクを作って内線500番をトランクと認識させます。

カスタムダイヤル文字列に「IAX2/500/$OUTNUM$」を設定。
このカスタムトランクで発信しようとした場合、IAX2の内線500番で電話をかける設定となります。

アウトバウンドルート(VPS)

アウトバウンドルートは普通に設定。
条件を指定してさっき作ったカスタムトランクを指定。

これでVPS側の設定は完了。
続いて、自宅に設置する中継用PBXの設定。

トランク(自宅)

トランク設定にVPSとひかり電話を設定。
ここは特に難しい設定はなく普通に設定。

続いてインバウンドルート(自宅)

着信をの宛先をVPS側のトランクに設定。

アウトバウンドルート(自宅)

これも普通に設定。
発信条件を設定してトランクにひかり電話を設定するだけ。

設定は以上。

普通は双方向にトランク設定をしてレジストするのを一方を内線として設定しているので自宅側からレジストするだけで発着信可能になります。
コンテキストをカスタムすれば番号通知も出来るはず。

これで、自宅IPアドレスが変動しても特に設定をいじる事無くひかり電話を維持でる!