はるさめ氏の日常

主に弱電とマイコンを扱っています.たまにネットワークやサーバなども.

IX2215 を自宅で使用しながらひかり電話も使えるようにしたい記事

最近、自宅のインターネットで使用するルータを ONU 付随の HGW から IX2215 に変更しました。その状態でしばらく使っていたところ、契約しているひかり電話が使えないということに気付いたので、現在の状況の整理がてら、対処法を書き残しておこうと思います

問題が発生していた構成

以前、このような構成を組みました。IX2215(以後単に IX と表記)をメインルータとし、いわゆる UNI 出しと呼ばれる構成を取っています

尚、固定電話と接続している線はそのまま ONU 内蔵のひかり電話ルータに接続されたままです

実機の写真はこちら

ルータ

ONU の背面付近(白い線が UNI と GE0.1 を接続している線)

当然ながら、内蔵ルータ側のインジケータは PPP もひかり電話も消えたままです

このような状態で運用を始め数週間がたったある日、祖母にこう言われました
「あんた、家の電話がなんかおかしいらしいんやけど見てくれん?」

そう言われて初めて、ひかり電話が使えない状態になっていることに気づきました
(管理者としてはダメダメですが、そもそも使用頻度がものすごく低いことと、勉強を始めたばかりの学生でもあるということでお許しください)

今回は、思いついた解決策を 2 つ検証することができたので、それぞれについて書き残します

解決策①|UNI からの線を分岐させ、ひかり電話ルータも接続する

あまりものを使用することで、追加コストゼロで実現できました。変更後の配線は以下の通り(自室へ向かう線と Wi-Fi ルータへ向かう線は変更していないのと今回の話とは関係ないので省きました)

UNI と GE0.1 の間にその辺に転がってた Buffalo の 5 ポートのハブを挟んでいます
下の画像左側から順に UNI から出ている線(緑の頭の白い線)、元は中で繋がっていたひかり電話ルータへの線(水色の線)、IX の GE0.1 に向かう線(黒い頭の白い線) となっています

こういうやつですね

配線はやや無理矢理感はありますが、こうすることでひかり電話が復活しました
ちゃんとひかり電話のインジケータが光り、発着信も問題なく行なえています

本来 IX 側だけでいいはずの PPPoE の通信が内蔵ルータにも行ってしまっているため、PPP のインジケータも光っています
HGW とパソコンを直接つないで http://192.168.1.1/ へアクセスし、念のため IPv4IPv6 双方の通信を止めます

IPv6 の通信を止めた様子

PPP のインジケータが消えました

これにて、無事ひかり電話が復活し、IPv4, IPv6 双方の通信も問題なく行える状態にまで復帰させることができました

https://v6test.docomonet.jp/

※この方法で対応できるのは PPPoE 通信のみで、HGW では IPv6 IPoE の通信は切れないらしく、IPoE に関しては依然 DHCPv6-PD の取り合いとなりますが、後述の通り仮措置なのと、現状特段の影響は出てないので、まあ気休めということで

解決策②|NVR500 を導入する

解決策①は、実はこれをするまでの繋ぎとしての措置で、本命はこっちだったりします。そもそもひかり電話ルータ側に通信が行かないようにしてやることで、気にしなくてすむようになるという作戦です
そんなことはさておき、配線図は以下の通り。NVR500 (以後単に NVR と表記)にひかり電話関連の処理をさせています

本来であれば IX の GE1 に NVR を接続し、IX に GE1 へ向かう通信のうち IPv6 をブロックさせ、のこりはブリッジさせるつもりだったんですが、何故かうまく行かなかったので UNI から分岐させ、後述する設定項目を投入し使用することにしました

IX 側については何も変わっていないので割愛

今回訳あって NVR500 を提供いただけたので、上図の通り配線し、設定を投入します
実際の機器配置と配線はこちらをご覧ください

全景
ONU 背面
NW 機器前面
NVR 背面

投入した設定

ip lan1 address 192.168.1.1/24
ip lan2 address dhcp
ngn type lan2 ntt
dhcp service server
dhcp server rfc2131 compliant except remain-silent
dhcp scope 1 192.168.1.101-192.168.1.200/24
dhcp client release linkdown on
analog arrive number display 1 off
analog sip arrive permit 1 myname
analog sip arrive myaddress 1 1 sip:0[0-9]{9}@ntt-(east|west).ne.jp
analog arrive number display 2 off
analog sip arrive permit 2 myname
analog supplementary-service pseudo call-waiting
analog extension emergency-call-dial type normal-number
analog extension dial prefix routing route-table=1 ngn lan2
analog extension dial prefix port=1 routing route-table=1 ngn lan2
analog extension dial prefix port=2 routing route-table=1 ngn lan2
analog call route-table 1 1
analog call route 1 * * ngn lan2 * line
sip use on
sip codec permit lan2 g711u

SIP の項目は正規表現で代用しています

この設定を投入し、UNI と WAN を直結させて発着信テストを行います。Web GUI から行うのが良いと思います
もし、発信・着信ができない場合は何かがおかしいので公式サイト等を見てやり直してみましょう。今回は問題なく行ったので次に進みます

続いて、IPv6 の通信を止める設定を投入します

no ipv6 route default gateway dhcp lan2
no ipv6 prefix 1 dhcp-prefix@lan2::/64
no ipv6 lan1 address dhcp-prefix@lan2::1/64
no ipv6 lan1 rtadv send 1
no ipv6 lan2 address dhcp
no ipv6 lan2 dhcp service client

できたら、save で保存し、電源を落とします
そして、IX の配線をもとに戻し、起動させます

再び発着信を行います。多分ここで問題が出てくることはあまりないと思ってはいますが一応

あるいは、コンソールで以下のコマンドを実行して確認する方法もあります

# show status ngn

もし、うまく行っていない場合、このように帰ってくると思います

# show status ngn
NGN(UNI)に関する情報が足りません
# 

うまく行っている場合はこうなります

# show status ngn
NGN status

  LAN2
    sip:0*********@ntt-west.ne.jp
    起動OK

# 

これにて、自宅回線での通信を IX で収容しつつ、ひかり電話も使用できる環境が整いました。やったね!