39434


自分のPC上に立てたサーバーに外部からHTTPでアクセスしたいのですが、接続が拒否されます。  
サーバーは起動しているのですが、WAN側IPアドレスを指定してアクセスしようとするとrefused to connectと言われてしまいます。  
どういう可能性があるか教えていただけないでしょうか。

構成は以下の通りです。

##
[![構成](https://i.stack.imgur.com/M9UCh.jpg)](https://i.stack.imgur.com/M9UCh.jpg)

外部のネットワークに繋いだPCのブラウザからアクセスしたく色々試したところ、以下のことが分かりました。  
\- 外部PCからルーターのWAN側IPアドレスへのPNIG: 不可(communication prhibited by filter)  
\- 外部PCのブラウザからWAN側IPアドレスにアクセス：不可(`10.97.***.***:80` へのアクセスがrefued to connect)  
\- サーバーのPCからWAN側IPアドレスへのPING:可(PING `10.97.***.***` はOK)  
\- サーバーのPCのブラウザからWAN側IPアドレスへのアクセス:不可(`10.97.***.***:80` へのアクセスがrefued to
connect)  
\- サーバーのPCのブラウザからLAN側IPアドレスへのアクセス:可(`192.168.100.100:80` へのアクセス OK)


CC BY-SA 3.0
2017-11-08T21:50:17.467
39427
2017-11-09T01:06:28.303
2017-11-09T00:44:44.097
20098
26110
question
network
自分のサーバーに外部からHTTPでアクセスしたいが、できない


記載の事項から推測できるのは以下のことと考えます。

  * PINGが`communication prhibited by filter`とエラーになっているので、ICMPに対し、ルータを含むWAN側ネットワーク(の機器)でアクセス制御がかかっている。(※これは解決しなくてもいいかもしれない)
  * 外部PCからのHTTPアクセスが`refued to connect`とエラーになっているので、ルータもしくはサーバPC(MAC)の80番ポートがLISTEN状態になっていない。

後者の切り分けを行うには、LAN内に別のPCを設置し、`http://192.168.100.100`にアクセスできるか確認するのがよいと思います。  
あるいは、MACであればtcpdumpも可能なので、tcpdumpで80番ポートにパケットが到着しているか確認する方法もあると思います。(到着している場合RSTが戻っていないことも確認)

LANの別のPCからhttpアクセスできるのであれば、ルータのフォワード(NAT)設定がおかしい、アクセスできないのであれば、サーバの設定がおかしいと判断できると思います。


CC BY-SA 3.0
2017-11-08T22:29:29.877
39428
2017-11-08T22:29:29.877
20098
39427
answer


ルータの外側のアドレスが10.97.***.***なので、プロバイダが配布しているのはプライベートアドレスです。インターネットからアクセスすることは出来ません。

(プロバイダが内部宛てトラフィックをNATしてくれれば別ですが、聞いたことないです)


CC BY-SA 3.0
2017-11-09T01:06:28.303
39434
2017-11-09T01:06:28.303
5793
39427
answer