前回の記事では実家のネットワークにNECのVPN対応ルータであるIX2215を導入しましたが、その際ひかりTVの対応に少し手間取ったのでメモがてら記事に残しておきます。
もっとも、本記事での設定は公式資料に裏打ちされたものではなく実機の挙動を基にしているため、将来的には仕様変更等により情報が古くなってしまう恐れがある点に注意して下さい。
ひかりTVチューナをIX2215に繋ぐ際の注意点
ひかりTVチューナをIX2215配下のネットワークに接続し、正常に視聴できるよう設定する際の注意点は以下の通りです。
IPv6マルチキャストルーティング
ひかりTVの公式にはIPv6対応ルータを使うとしか書かれていませんが、どうも実機で確認した限りではIPv6マルチキャストで番組内容が配信されているらしく、事実ヤマハ公式サイト掲載の自社製品でひかりTVを視聴する際の設定例でもそれに関する記述があります。
従ってIX2215にひかりTVを繋ぐ際もIPv6マルチキャストルーティングを有効化し、
ipv6 multicast-routing
MLDプロキシ機能を使ってLAN側(ここではGigaEthernet2.0
)に居るひかりTVチューナーの存在をWAN側(GigaEthernet0.0
)へ通知すると良いでしょう。
interface GigaEthernet0.0 ipv6 mld upstream ! interface GigaEthernet2.0 ipv6 mld downstream
DNSの問い合わせ先
ひかりTVの放送内容はNGN*1内のサーバから配信されているのですが、このサーバのアドレスは閉域網の中を指しているために、1.1.1.1や8.8.8.8の様な一般的なDNSサービスには登録されていません。
www.hitachi-systems-fs.co.jp www.ntt-east.co.jp
従ってひかりTVチューナが正しく配信サーバのアドレスを取得できる様に、DHCPv6でLAN側(GigaEthernet2.0
)に通知するDNSサーバにはDHCPv6オプションでWAN側(GigaEthernet0.0
)から降ってきたものを使うか、
ipv6 dhcp client-profile dhcpv6-client information-request option-request dns-servers ! ipv6 dhcp server-profile dhcpv6-server dns-server dhcp ! interface GigaEthernet0.0 ipv6 dhcp client dhcpv6-client ! interface GigaEthernet2.0 ipv6 dhcp server dhcpv6-server
IX2215をDNSプロキシにする場合にはDHCPv6オプションでWAN側から降ってきたDNSに問い合わせるようにしましょう。
とはいえフィッシング対策等で自分の好きなDNSサーバを配布したい場面もあるかと思いますが、その場合IX2215をDNSプロキシとして使い、ひかりTVチューナの参照するドメインだけフレッツ光のDNSに問い合わせるような設定にすると良いでしょう。
proxy-dns ip enable proxy-dns ip request both proxy-dns interface GigaEthernet0.0 url-list hikari-tv priority 200 proxy-dns server 94.140.14.14 proxy-dns server 94.140.15.15 proxy-dns ipv6 enable proxy-dns server 2a10:50c0::ad1:ff proxy-dns server 2a10:50c0::ad2:ff ! url-list hikari-tv permit domain *.iptvf.jp ! ipv6 dhcp server-profile dhcpv6-server dns-server autoconfig ! interface GigaEthernet2.0 ipv6 dhcp server dhcpv6-server
ここでは*.iptvf.jp
のドメインだけフレッツ光由来のDNSに問い合わせていますが、これは実機の挙動から推察して設定したものであり、チューナの参照するドメインはひかりTV側の都合で変わりうる点に注意が必要です。
show dns cacheした感じ*.iptvf.jpだけプロバイダから降ってきたDNSを使えば良さげ pic.twitter.com/Jp1s401ln9
— . (@fetburner) 2023年1月22日
ファイアウォールの設定
ひかりTVの通信内容とUNIVERGE IXシリーズの動的フィルタ機能の相性が悪いのか、動的フィルタ機能を使ってLAN側から開始した通信のみ許可するようなファイアウォールを設定していた場合、明示的にポート解放を行わなければひかりTVの配信データが廃棄されてしまいます。フレッツ光から貸与されるひかり電話ルータは初期設定ではNGN網からのIPv6パケットを素通りさせている様ですが、これもひかりTVに対応するためかもしれませんね。
流石にNGN網からのIPv6パケットを素通しするのは不用心ですから、我が家ではひかりTVの配信データがIPv6マルチキャストで配信される事を念頭に置いてファイアウォールに穴を開けています。
ipv6 access-list hikari-tv permit udp src 2001:a000::/21 sport any dest ff00::/8 dport any ! interface GigaEthernet0.0 ipv6 filter hikari-tv 99 in
余談ですが、ヤマハ公式サイト掲載の自社製品でひかりTVを視聴する際の設定例を見ると、IPv6の通信にファイアウォールが設定されていない様に思えるのですが、大丈夫なんでしょうか…?
まとめ
本記事では、IX2215配下のネットワークにひかりTVチューナを接続し、視聴環境を整える際の注意点をまとめました。ファイアウォールの設定についてはセキュリティ的に改善の余地が残されているかもしれませんが、とりあえず視聴環境を整えるだけなら本記事で列挙した点に気を付ければ良さそうです。
もっとも、本記事での設定は公式資料に裏打ちされたものではなくネット上の記事や実機の挙動を基にしているため、将来的には仕様変更等により情報が古くなってしまう恐れがある点に注意して下さい。実際、ネット上の古い記事を見るとUDPの6310番から6410番までを開放すれば良いとの記述もありましたが、実機で確認するとUDPの20000番より上のポートが使われていたりと情報の錯綜が見られました。