• ベストアンサー
  • 暇なときにでも

インターネットのHTTPの仕組みについて

ネットワークの勉強で困ってます。 ホームページを見るときには、サーバのIPと80番ポートで通信をするんだと思ってました。 そして、自分のパソコンにネットワーク監視ツールを入れて観察したところ 家からサーバには、サーバのIPと80番ポート指定でリクエストしている事がわかりました。 でも、こちらのパソコンの受け口ポートが80番では無く、1331番ポートなど様々なポートで来ます。 サーバが家のパソコンに送信する場合は、家のパソコンのIPと80番で返送するわけでなくて 家のパソコンが指定したポート番号で送信するのでしょうか? 今、家にはルータが動いているので、その為なのでしょうか? もしくは、普通に80番ポートで通信をしていてパソコン上だけが1331などのポートを使っているのでしょうか? どうか、よろしくお願いいたします。

共感・応援の気持ちを伝えよう!

  • 回答数3
  • 閲覧数89
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.3
  • N_Shima
  • ベストアンサー率62% (53/85)

私はネットワーク構築を仕事にしているものです。 一般的なWebサーバは80/tcpで待ち受けをしており、サーバ側のポートは常に固定されています。 #1でご回答の方はポートが動的であるような書かれ方をされていますが、私が普段触っているApache(UNIX/Linuxの著名Webサーバ)やIIS(Win2000やWinSv2003)で、通常設定のサーバがそのような動的動作をすることはありません。 一方クライアント側は、自分が使えるポートの中(1024番以降/tcp)で動的に開いているポートを使用して、Webサーバの80/tcpへ接続しています。 これは、TCP/IP上でサービスを受ける側としては一般的な手法の1つで(アプリによってクライアント側もポートを固定する場合もあります)、#2の方が書かれていますがNATを使用する場合でもしない場合でも同様の動作をします。 結果、 WebサーバIP:80 --- クライアントIP:1024以降で不定 という接続になっています。 なお、http通信では必ずクライアントが先にセッションを張るので、セッション確立の際にこちらの使用ポートをWebサーバに通知しています。なので、不定でもちゃんとセッションが確立します。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

webサーバの待ちうけは80番で、クライアントが自分のポートを指定するわけですね。 そして、クライアントも固定する場合というと、両方がクライアントサーバの場合などですね。 とても、参考になりました。 どうも、今回は本当に有難うございました。

その他の回答 (2)

  • 回答No.2
  • SGR
  • ベストアンサー率34% (42/122)

自宅の端末がクライアントで、インターネット上のWWWサーバにアクセスしにいってる状態ですよね?  だとしたら、御質問の現象はあなたの家にあるルータを経由しているからそうなるのです。恐らく、IPマスカレード(NAPT)を使う設定になっているのだと思います。[ルータを経由しているので、自宅のPCに割り当てられているアドレスはプライベートアドレス(192.168.×.×など)になってませんか?] IPマスカレードについては、googleあたりで検索すれば沢山説明がのっているので、ここでは書きませんが、簡単に言うと、1つのグローバルアドレスしか割り当てられないような接続形態の場合に、これをポート番号を使い分けることによって複数のPCやNW機器で共用するための技術です。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

確かになってます。 ルータがポートを変えていたのですか。 まだまだ、勉強が足りない事を痛感いたしました。 今回は、どうも有難うございました。

  • 回答No.1

あるサイトのWWWサーバは80番で待ち受けています。 そこへいろんな人が接続してきます。 ところが80番ポートは一つしかないから ここでずっと通信してると他の人は待たされて効率悪いです。 なので、サーバプログラムは接続した瞬間に別の空いているポートを用意して、ささっとすり替えてまた80番ポートは受け付け用に空けておくという手段をとっています。相手は80番で繋がっていると思っているでしょう(^^; アマチュア無線も同じですね。 144.0Mhzとかでまず相手を呼び出して 「じゃあ144.10Mhzに移動しましょうか」みたいな感じでそっちの周波数に切り替えます。 呼び出す周波数はXXXHzって決まってるからみんな迷わないんですよ。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

サーバが、動的に振り分けるということ有るのですね。 とても、良い知識になりました。 今回は本当にありがとうございました

質問者からの補足

すばやい回答いたみいります。 言われてるサーバへのアクセスをnegiesというソフトを使って、全てのパケットをモニタして見たのですが 通信でWWWサーバの受け口ポートは80番以外を使用してないようなのですが。 そもそも、調べ方がおかしいのでしょうか? 貴重な、お時間を裂いて頂いて申し訳ないのですが、 どうか、よろしくお願いいたします。

関連するQ&A

  • ポートを閉じなさいとは?

    ポートを閉じるという言葉の意味がよく分かりませんでした。 ルータ無しで、なおかつポート設定に関係した特殊なソフトを使わずにWindows98でインターネットをしている人にとって、ポートを開けたり閉じたりすることはできなくて、全てのポートは開いているんですよね? このようなパソコンの場合、セキュリティ関係の本に書いてある「不要なポートを閉じなさい」という言葉は、anhttpdやTiny FTP Daemonのようなサーバソフトのうち、使っていないものを停止させなさいということですか? ルータや特殊なソフトを使って80番のポートを閉じた場合と閉じてない場合の例として、  閉じた場合)    僕のIPの80番に誰かがTCPパケット送信。    僕のルータに到着。    ルータがパケットを破棄。  閉じていない場合)    僕のIPの80番に誰かがTCPパケット送信。    僕のルータに到着。    ルータが僕のPCにパケットを転送。    僕のWindowsがパケットを解析してHTTPだった。    僕のWindowsがHTTPの80番で待機しているサーバを探す。    サーバがあればサーバにパケットを渡し、無ければパケットを破棄。 ということにですか? ポートを閉じるぐらいなら、それに対応したサーバソフトを止めればいいのに、なぜポートを閉じなさいと書いてある本が多いか分かりません。 ある機能を使うとサーバ機能も働いてしまうソフトがあり、そのサーバ機能だけを抑えてそのソフトを使うには、ポートを閉じることは有効な方法だと分かるのですが、普通はそのようなソフトは使っていませんよね?

  • 新旧サーバ通信比較

    某工場で部屋温度遠方監視の為のシステムをアップグレード設定しています。旧監視システム同様、私は新サーバPC及び遠方IP機器及びソフト支給、ネットワークとしては客先のネットワークを使用してますが、客先ITと話がうまく行かず、ルータ、ファイヤーウォール等間にどれだけ入っていますが詳細不明です。状況としては旧サーバアプリケーション(部屋温度遠方監視のソフト)は通信成立しますが、新サーバの通信が成立しません。新サーバより遠方IP機器までのIPアドレスにPING成立(Ping IP すると Reply fromが帰ってきます)します。通信ポートとしてこちらの及び遠方のIPのUDPポート3001を使用するため、客先ITからはファイヤーウォールは開いてもらっていると聞いています。なにか旧サーバと新サーバの通信方法がどこか違っているようなのですが、いい確認比較方法(traceroute?)等ありますでしょうか?

  • TCP/IPポートについて

    httpサーバのipあてに不正アクセスが多いのですが (ipの後に適当なpathを指定してきます、けどそれらは存在しないので  実際の被害にはあっていませんが) それらがとても邪魔なのでポート80番以外をhttp用として使用したい のですが何番でも良いのでしょうか? ファイアウォールを使用しないで上記の事を防ぐ為の質問です。

  • 通信調査

    某化学工場で温度遠方監視のソフトを設定しています。私は監視PCでのIPパソコン及び遠方IP機器及びソフト支給、ネットワークとしては客先のネットワークを使用してます。客先ネットワークのためルータ、ファイヤーウォール等間にどれだけ入っていますが詳細不明です。状況としてはアプリケーション(温度遠方監視のソフト)の通信が成立しません。監視PCより遠方IP機器までのIPアドレスにPING成立します。通信ポートとしてこちらの及び遠方のIPのUDPポート3001を使用するため、客先ITからはファイヤーウォールは開いてもらっていると聞いています。どなたかいい調査方法ご存知ないでしょうか?

  • クライアント側のポート番号

    ネットワークの勉強を始めたばかりの者です。 ポート番号に関する本で、HTTPポートに関して次のように書いてありました。 「HTTPポートは、WebブラウザでWebページを閲覧するときに使用される「HTTPプロトコル」を用いて通信を行う際にデータが通過するポートです。 HTTPプロトコルでは、通信の際だけ80番のHTTPポートを開き、通信が完了するとポートは閉じます。 例えば、あるWebページをWebブラウザに表示するにあたり、表示されるまでは、そのWebページのデータを受信している状態なので80番ポートは開いていますが、Webページデータを完全に受信し終わり、Webブラウザに表示されたら80番ポートは閉じます。 つまり、一回の通信毎に80番ポートを開けたり閉じたりを繰り返しています。」 私は、変だと思いました。 私は、クライアント側のポート番号は、その場で適当な番号が割り当てられるものだと思っているからです。 上の引用の中で、80番というWell-Knownポートで受信しているという話は解せなのです。 どう読んでも、上記の引用部分はクライアント側の話なのです。 (サーバ側はクライアント側(ブラウザ)からいつ要求されるかわからないから、「開けたり閉じたり」ということはないと思うのです。) http://www.mm-labo.com/computer/tcpip/ipaddress/portsort.html このページにも、「クライアント側で使用するポート番号は各OSが動的に割り当てる」と書いてあります。 私がしている勘違いはなんでしょうか。

  • CATVインターネット初心者です。ポートについて。

    初心者です。ポートについて理解を深めたいので、平易に解説お願いします! CATV会社側が「わが社のサービスでは80番ポートを閉じているので80番を使う通信アプリは使えない」と言ったときに、80番はhttpサービスのポートだということだけは知っている私には奇妙に感じます。なぜなら、ユーザーがホームページを閲覧するというごく基本的なインターネットサービスを利用できているのは、80番が開いているからではないのか?と思うからです。たぶん私のポートに対する解釈が変だと思いますので、教えてください。 もうひとつ、「ユーザーのサーバー構築は禁止」といった場合に、単にユーザーの自発的規制をお願いしている以外に、CATV会社側でシステム的に不可能とするとしたら、それはポート開閉の問題でしょうか、それともまた別の要素でしょうか。

  • リクエスト先から自分のPCに応答が帰ってくる経路はどのように決定されるのでしょうか?

    おはようございます。ネット初心者です。 インターネット閲覧などの際、こちらからURLを指定することで目的のサイトにパケットが送信されます。 逆にサイトから自分のPCにはどのように経路が決定されてパケットが送られてくるのでしょうか? 私の認識では、送信元IPは途中で経由したサーバーやインテリハブなどのIPアドレスとなってしまっている筈です。 やはりリクエストが通ったルートを逆に帰ってくるのでしょうか? その場合リクエスト元を識別するID等が、送信されるパケットに含まれる・・・ うーん解らない・・ つまり宛て先のIPアドレスは通信過程で変わらないが、送信元IPは経由するサーバー等のものになってしまいますよね? であれば、リクエストを受けたサーバーからリクエスト元である自分のPCに帰ってくる経路はどのように決定されているのか? と言うことです。 お時間ありましたら、是非ご教授ください。

  • HTTPサーバの80番以外のポートなど

    HTTPサーバの80番以外のポートなど ネットワーク関係の本を読んでいたところ、「よく使われるプロトコルには『ウェルノウンポート』という番号があらかじめ割り当てられている。有名なところでは、メールの送受信に使われるSMTPが25番、Webに使われるHTTPが80番といった具合である」 と書かれていました。 では、HTTPサーバの80番以外のポートやSMTPサーバの25番以外のポートは普段何をしているのでしょうか?? 他のポートを殆ど使わないなら、わざわざHTTPサーバに80個もポートを準備する必要はないんじゃないか?と素人的には思うのですが・・・ よろしくお願いします。

  • 2台以上のネットワークカメラで監視できる方法

    planexのネットワークカメラ CS-WMV02G を2台 buffaloのAirstation WHR-HP-G を使って外部からInternet Explorerで監視できるようにしたいのですが、1台目は問題なく監視できていますが、2台目カメラのポートの開放の仕方が分かりません。CS-WMV02Gの場合開放するポートはhttpポートになっており、httpポートは buffaloのWHR-HP-Gの場合( 他も同じかもしれませんが)80番だけしか指定できません。 80番のポートのみでプライベートIPアドレスを更に指定することなどして、2台のカメラにアクセスできるような方法があるのでしょうか。 あるいはHttpポートを80番以外にも複数指定することはできるのでしょうか。 またはもっと他の解決の道があるのでしょうか。 どなたかご教授よろしくお願いいたします。

  • NTT Web Caster 610M で80番ポートを開く

    NTT WebCaster 610M というルーターで、自宅ウェブサーバー構築をやっています。 パケットフィルタ設定の80番ポートを開く作業で、 設定内容が、参考書に書かれてあるコレガの設定例とは全く違う内容で、 どう設定していいのか分からなくて困っています。 CD-ROMのマニュアルや説明書も見ましたが、設定例は載っていませんでした。 NTT西日本にも問い合わせましたが、いいかげんな返答しか返ってきませんでした。 設定内容は、 1 フィルタ種別   (通過・拒否・無通信監視タイマを有効化・無通信監視タイマを無効化)より選択 2 送信元IPアドレス 3 宛先IPアドレス 4 プロトコル種別(TCP・UDP・ICMP・TCP UDP ICMP全て)より選択 5 送信元ポート 6 宛先ポート 7 方向(順方向・逆方向・両方向) ちなみに、サーバーとして使うPCのプライベートIPは 192.168.1.201です。