自宅内にWebサーバを設置し、ルータにてポート開放(ポートフォワーディング設定)したところ、
LAN内からはアクセスできましたがWANからはアクセスできませんでした。
ポートフォワーディングではなくDMZ設定したところ、WANからもアクセスできるようになりました。
ポートフォワーディングでWANからアクセス出来ない理由としてどのようなことが考えられますでしょうか。
テスト時のネットワーク環境は以下のようです。ただし、IPアドレス表示は仮想のものです。
[ネットワーク図]
外部PC | WAN側 | ルータのグローバルIP:123.45.67.89 --------------------------------------------------------- | LAN | ルータ 192.168.10.1 ))) Wi-Fi | ((( 別PC サーバーPC 192.168.10.2 192.168.10.3
ここで、ルータの型番は ELECOM製 WRC-1167GS2 です。
試したこと
サーバーPCにDebian(LMDE5)をインストールし、
nodejs(現時点でのlatest版)をインストールし、簡易的なWebサーバを作成しました。
JavaScript
1// FILENAME: server.js 2var http = require('http'); 3var server = http.createServer(function(request, response){ 4 response.writeHead(200,{'Content-Type': 'text/html'}); 5 response.end('<h1>OK!</h1>'); 6}); 7server.listen(80,'0.0.0.0');
これを以下のように実行しました。
bash
1$ sudo node server.js
上記のネットワーク図にある同じLAN内の別PCからアクセスすると、
接続できました。(Webブラウザのアドレスバーにhttp://192.168.10.1 と入力して「OK!」と表示されました)
次に、ルータにてポートフォワーディング設定を行いました。
ローカルIP:192.168.10.2 ポート:80 タイプ:TCP
なお、サーバPCのIPアドレスはルータにてDHCP対象外(192.168.10.2固定)です。
この状態でWAN側の 外部PC にて、WebブラウザのアドレスバーにグローバルIPアドレス http://123.45.67.89
を入力したところ、接続できませんでした。(正常に接続できませんでした との表示)
次に、ルータにて、前述のポートフォワーディング設定を削除し、その代わりにDMZ設定を行いました。
DMZ:有効 DMZ IPアドレス:192.168.10.2
この状態でWAN側の 外部PC にて、http://123.45.67.89 にアクセスすると接続できました。
DMZは、そのPC(上記例だと192.168.10.2)のすべてのポートを開放しているようなものという認識です。
以上の内容について、
ポートフォワーディングではWANからアクセス出来ない理由としてどのようなことが考えられますでしょうか。
HTTPの場合、80以外のポートで開放するべきポートは無いと思っていますが、あるのでしょうか。
回答2件
あなたの回答
tips
プレビュー