【 ポートフォワーディング 】 外出先からQNAP TS-251D( NAS に直接アクセスさせようとしたけど断念した話【IPv4 over IPv6】

QNAP TS-251Dを外出先からアクセスする設定を以前こちらで紹介しましたが、紹介した手順はmyQNAPcloud LinkというQNAPのアプリを使ってmyQNAPcloud経由で NAS に接続するやり方でした。

myQNAPcloud Linkを使えばルーターのめんどくさい設定は不要なのです。

しかしながら、myQNAPcloud経由でのアクセスになるので、速度が遅くなることや使い勝手が悪くなることが懸念されます。

今回は直接外部からNASにアクセスする方法について説明します。なお、我が家はインターネット接続方式の関係で現在の環境ではポート開放できず断念しました。。。その件についても触れておきます。




myQNAPcloud の設定手順

myQNAPcloud Linkを無効化する

NASの管理画面でmyQNAPcloud Linkを無効化します。

myQNAPcloud Linkを無効化

自動ルーター構成の設定

自動ルーター構成の設定ではUPnPを利用したポートフォワーディングの設定ができます。そもそもポートとは何か?

ポートとはインターネットから我が家宛てにやってきたデータを家の中の適切な機器に受け渡すための概念。(逆もしかり)

データを受け取る側(今回は家のNAS)はポートを解放してデータ待つ。インターネット経由でデータ送る側(例えばスマホのブラウザとか)はポートを指定してデータを送る。

ポートは番号で指定し、番号毎に機能がある程度決められている。

つまり、外出先からインターネットブラウザとかを使ってインターネット経由でアクセスする場合はブラウザアクセスに適したポートをNASが開けておく必要があります。

また、ルーターはインターネットから送られてきたデータのポート番号を見て、「このポート番号はNASにデータを送ろう」といった具合にポートフォワードする設定をしておかなければなりません。これがポートフォワーディングの設定です。

もし家のルーターがUPnPに対応しているのであればUPnPを有効にしてポート設定を簡単に設定することができます。

自動ルーター構成の設定

UPnPポートフォワーディングを有効にするにチェックを入れて

UPnPポートフォワーディング設定

ここでどのポートをフォワーディングするか設定します。ブラウザからhttpでアクセスしたい場合はWebサーバーにチェックを付けておきます。

DDNSの設定

DDNSはダイナミックDNSの略です。外部から(例えばブラウザ)でアクセスする際、http://サイト名のようにサイト名を入れてアクセスするかと思います。その”サイト名”をIPアドレスに変換してくれるのがDNSです。

家庭に割り当てられたグローバルなIPアドレスは固定かもしれませんし、不変かもしれません。その変化する可能性があるIPアドレスを動的に名前解決する仕組みがDDNSです。

具体的にはmyqnapcloud.comに家のグローバルIPを定期的に送信して、外部からアクセスする際、「http://サイト名」を最新の家のIPアドレスに変換できるようにするための設定になります。

設定は簡単でMy DDNSを有効にします。

有効にして下の更新ボタンを押すと、家の最新のグローバルIPアドレスがmyqnapcloudに登録されているのを確認することができます。更新は10分置きに自動で更新され続けます。

出先から管理画面にアクセスしてみる

これらNASの設定が一通り完了していれば外部のネットワークからアクセスすることができます。

例えばスマートフォンを使って外部からhttp://xxxxx.myqnapcloud.com のようにアドレスを入力すると家のNASにアクセスできるかと思います。

ここでアクセスができない場合は何かしらネットワークに問題があるはずです。例えば、UPnPに対応していないルーターは自分でルーターのポートフォワーディング設定をする必要がありますが、それができていないとか、そもそもポートが解放できない環境であるとか。

ここからは私が断念した理由について説明していきます。

つながらない時はまずインターネット接続方式を確認してみる

うちはドコモ光+プロバイダDTIでIPv6(IPoE + IPv4 over IPv6)という接続方式で戸建てのネットの契約をしています。接続先はOCNバーチャルコネクトです。ルーターはIPoE対応で無料レンタルできるELECOM WRC-1167GST2です。

調べていくうちにこの構成では、前で説明したポートフォワーディング設定は全く使えない、そもそも設定できないということがわかりました。ルーターには以下のような設定メニューがあるのに。。。理解していない私が悪いのですが。。。

ポートフォワーディング設定

では、なぜ、IPoE + IPv4 over IPv6だとポートフォワーディングの設定ができないのか?どういった環境であれば設定できるのかについて説明します。

ポートフォワードできるネットワーク環境とそうでない環境

ポートフォワードできるネットワーク環境は、PPPoEと呼ばれるIPv4を使った接続方式であれば、スムーズにポートフォワード設定ができると思います。

IPoEでもIPv6しか使わないのであれば、IPv4同様にポートを割り当てることができます。

逆にポートフォワードできないネットワーク環境はどのような環境かというとIPoEでIPv4の通信を扱うための通信規格、IPv6プラスやIPv4 over IPv6というネットワーク接続方式を使っている場合は簡単にポートフォワードすることができません

IPoE+ IPv4 over IPv6はなぜ簡単にポートフォワードできないのか?

なるべく簡単に説明してみます。

まず、IPoEというのは従来よりも高速にインターネットを使える方式で、IPv6というアドレスを使用しています。高速なのはいいのですが、従来方式で使っていたIPv4というアドレスは使えないので、IPv4しかサポートしていないサーバーなどとは接続することができません

これを解決するのがIPv4 over IPv6やIPv6プラスという方式です。IPoEで通信するデータの中に従来のIPv4のパケットを包んでしまって、必要に応じてほどいて使うというやり方です。

このやり方であればIPv6を使いつつ、従来のIPv4の相手にもアクセスすることができます。

さて、IPoE方式を使っている場合、家庭に割り振られるアドレスはIPv6のアドレスになります。なぜならIPoEはIPv6しか使えないから。

IPv4 over IPv6を使う場合は、IPv6アドレスに加えて、IPv4のアドレスも割り振る必要があります。しかしIPv6はIPv4よりもたくさんのアドレスを表現できるため、IPv4のアドレスが枯渇してしまいます。

そのため、IPv4アドレス+ポート番号(ある一定の範囲)を各家庭に割り当てることで、送信元は送信する家庭を識別しています。

このように通信の仕組みでポート番号を使っているので、家庭のルーターでは自由に使うことがそもそもできないのです。

ただ、ルーターやプロバイダによっては割り振られているポート番号範囲内でポートを解放することもできるようです。なので簡単にポートフォワードできない という表現にしてあります。

おわりに

ネットワークド素人の私が試行錯誤しながらたどり着いたのがポート開放できないという結論です。もし私が間違っていて「できるよ!」という方がいたら、是非コメント欄で教えていただきたいです。

また、ネットワークの解説も間違っている箇所があったら、教えていただけると助かります。

本題であったNASのネットワーク公開についてはmyQNAPcloud Linkを使ってしばらくは運用していきます。とりあえず、許容できる速度でデータが参照できているので、滅多に使うものでもないので、これでよしとしておきたいと思います。

コメント

タイトルとURLをコピーしました