質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
ネットワーク

ネットワークとは、複数のコンピューター間を接続する技術です。インターネットが最も主流なネットワークの形態で、TCP/IP・HTTP・DNSなどの様々なプロトコルや、ルータやサーバーなどの様々な機器の上に成り立っています。

Q&A

解決済

3回答

21232閲覧

クライアントがポート80番を開放しなくてもウェブサイトが見れるのはなぜですか?

hojo

総合スコア195

ネットワーク

ネットワークとは、複数のコンピューター間を接続する技術です。インターネットが最も主流なネットワークの形態で、TCP/IP・HTTP・DNSなどの様々なプロトコルや、ルータやサーバーなどの様々な機器の上に成り立っています。

2グッド

2クリップ

投稿2016/08/03 02:12

編集2016/08/03 02:21

クライアントのルータの設定でポート80の外側(インターネット)から内側(ローカル)に対する接続を開放しなくてもブラウザでウェブサイトが見れるのはなぜですか?

ポート80番で待ち受けているのはウェブサーバであり、クライアント側は80番ポートを利用してウェブコンテンツの受信を待ち受けるわけではないということですか?

もし、クライアントがウェブコンテンツを受信する際に、ポート80を利用しない場合、例えば11111番ポートを使用して受信を待ち受ける場合、ルータの設定でそれらのポートを開放しなくてもウェブコンテンツを受信できるのはなぜですか?

また、ポートはアプリケーションが独占するものだという認識を持っているのですが、FirefoxやSafari、Chromeを同時に利用しても問題なく通信できるのはなぜですか?

もしかして、自分が知らないだけで、ルータは基本的にウェルノウンポート(1~1023番) を開放しているのですか?

ローカルでウェブサーバを立ち上げ、インターネットからのアクセスを待ち受けた場合にはおそらく、そのポートは特定のIPとそのIP上で動作しているアプリケーションによって束縛されると思いますが、このようにホストするのではなく、逆にインターネットに接続して待ち受けているウェブサーバに対してリクエストを投げる場合、LAN環境で複数台のPCでブラウザを立ち上げても、ウェブサーバからのリクエストを問題なく受信できるのはなぜですか?

よろしくお願いします。

Chironian, DrqYuto👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

こんにちは。

ポート80番で待ち受けているのはウェブサーバであり、クライアント側は80番ポートを利用してウェブコンテンツを受信を待ち受けるわけではないということですか?

その通りです。
インターネットとLANを接続するルータの多くはNAPTルータです。これは、LAN側からWAN側へのバケットを中継する際、LAN側のIPアドレスとポート番号を書き換えます。
IPアドレスはNAPTルータのWAN側のアドレスです。ポート番号はその時使っていない番号に書き換え、そのポート番号へ書き換えた時のLAN側のIPアドレスとポート番号を記録します。

WEBサーバからの応答パケットは、NAPTルータのWAN側IPアドレスへ送られるのでNAPTルータへ届きます。
そして、そのポート番号へ変換した時のLAN側IPアドレスとポート番号へ書き戻してLAN側へ送信します。
これにより、WEBサーバへ要求したPCのアプリへWEBサーバからの応答が届くのです。

投稿2016/08/03 02:23

Chironian

総合スコア23272

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

まず、サーバ・クライアントモデルにおいて
クライアントからだしたリクエストに対するサーバの応答を待ち受けることと
任意のタイミングでサーバがクライアントからリクエストを受け付けることは話が別です。

クライアントからだしたリクエストに対するサーバの応答待ち受け(受信ポート開放の必要なし)
任意のタイミングでサーバがクライアントからリクエストを受け付ける(受信ポート開放の必要あり)

クライアントのルータの設定でポート80の外側(インターネット)から内側(ローカル)に対する接続を開放しなくてもブラウザでウェブサイトが見れるのはなぜですか?

インターネットに対して行ったリクエストに対する応答だからです。

ポート80番で待ち受けているのはウェブサーバであり、クライアント側は80番ポートを利用してウェブコンテンツの受信を待ち受けるわけではないということですか?

クライアントは任意のタイミングでサーバからコンテンツの待ち受けはしません
ウェブサーバに対して行った要求の応答を待ち受けます

もし、クライアントがウェブコンテンツを受信する際に、ポート80を利用しない場合、例えば11111番ポートを使用して受信を待ち受ける場合、ルータの設定でそれらのポートを開放しなくてもウェブコンテンツを受信できるのはなぜですか?

フィルタリングの設定には
内から外に対する通信の設定(外のサーバに対してリクエストを送ってサーバから応答をもらう)
外から内に対する通信の設定(外のクライアントからリクエストを受け取って応答を返す)
の2種類があるからです

また、ポートはアプリケーションが独占するものだという認識を持っているのですが、FirefoxやSafari、Chromeを同時に利用しても問題なく通信できるのはなぜですか?

使っているポートが別だからです

もしかして、自分が知らないだけで、ルータは基本的にウェルノウンポート(1~1023番) を開放しているのですか?

メーカーによるので何とも言えませんがそんなことはないと思います

ローカルでウェブサーバを立ち上げ、インターネットからのアクセスを待ち受けた場合にはおそらく、そのポートは特定のIPとそのIP上で動作しているアプリケーションによって束縛されると思いますが、このようにホストするのではなく、逆にインターネットに接続して待ち受けているウェブサーバに対してリクエストを投げる場合、LAN環境で複数台のPCでブラウザを立ち上げても、ウェブサーバからのリクエストを問題なく受信できるのはなぜですか?

ルータがサーバとクライアントの通信の組み合わせごとに使用しているポートを覚えているからです

投稿2016/08/03 03:06

編集2016/08/03 03:08
kutsulog

総合スコア985

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

クライアントのルータの設定でポート80の外側(インターネット)から内側(ローカル)に対する接続を開放しなくてもブラウザでウェブサイトが見れるのはなぜですか?

LAN側からWAN側に発生した通信については、帰りのパケットも面倒を見る動的なパケットフィルタリング機能を備えたルータがほとんどです。
従って、通常であれば、LAN側 → WAN側に対して80/tcpを開放するのみでWebサイトの閲覧を可能とします。

ポート80番で待ち受けているのはウェブサーバであり、クライアント側は80番ポートを利用してウェブコンテンツの受信を待ち受けるわけではないということですか?

クライアント側は動的ポートを利用し、Webサイト利用であれば80/TCPに接続を試みます。
従って、80/TCPで待ち受けてはいません。

もし、クライアントがウェブコンテンツを受信する際に、ポート80を利用しない場合、例えば11111番ポートを使用して受信を待ち受ける場合、ルータの設定でそれらのポートを開放しなくてもウェブコンテンツを受信できるのはなぜですか?

冒頭で回答した通りです。

また、ポートはアプリケーションが独占するものだという認識を持っているのですが、FirefoxやSafari、Chromeを同時に利用しても問題なく通信できるのはなぜですか?

各アプリケーションは、動的ポートから空ポートを見つけて動作します。

ローカルでウェブサーバを立ち上げ、インターネットからのアクセスを待ち受けた場合にはおそらく、そのポートは特定のIPとそのIP上で動作しているアプリケーションによって束縛されると思いますが、このようにホストするのではなく、逆にインターネットに接続して待ち受けているウェブサーバに対してリクエストを投げる場合、LAN環境で複数台のPCでブラウザを立ち上げても、ウェブサーバからのリクエストを問題なく受信できるのはなぜですか?

こちらは他ご回答者様の回答通り、NAPTの機能で担保しています。

投稿2016/08/03 02:55

over

総合スコア4309

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問