8080(ポート)経由で接続の受信を設定する方法:命令、図、およびフィードバック
コンピュータネットワーク内のポートは、OSIプロトコルのヘッダに記録される自然数です。これは、1つのホストでパケットを受信するプロセスを識別するように設計されています。
原則として、ホスト上のユーザー空間インストールされたOSでは、いくつかのプロセスが同時に発生し、それぞれのプロセスで特定のプログラムが動作します。これらのプログラムは時々、コンピュータネットワーク「シェル」に影響を及ぼす場合には、プログラムの一つのために意図されたIPパケットを通じて取得します。
どのように機能するのですか?
プログラムがネットワークを介したデータ交換を使用する場合、このプロセスは次のように発生します。
- OSは特定のポート番号を要求します。 この場合、システムはプログラムにそれを提供し、送信を禁止することができます(これは、このポート番号がすでに別のアプリケーションによって使用されている場合に発生します)。
- OSで使用可能な任意のポート番号を指定しないで要求されています。システム自体は、それを選択し、プログラムを提供します。
どのようにポート(8080,80など)を開くには?ネットワーク内では、(2つのプロセス間で)特定のプロトコルに従って情報が交換されます。接続を確立するには、次のものが必要です。
- 受信者と送信者ホストのIPアドレス(それらの間にルートが構築されている必要があります)。
- プロトコルの番号。
- 両方のポート(受信者と送信者)の番号。
接続がTCP経由である場合、送信者のポートは受信者のOSとして使用され、受信したデータの確認応答を送信し、受信者のプロセスは応答を送信します。
オープンポートとクローズドポート
送信者の側から、ホストとポート番号は折り返しアドレスのアナログとして機能し、封筒に表示されます。この番号を逆数といいます。
ホスト上のプロセスが同じポート番号を恒久的に使用するため、このようなポートは開いていると見なされます。たとえば、サーバーに関連付けられたプログラムは、通信に常に80または8080を使用できます。プロセスがポートを開くことができない場合、プロセスは閉じられているとみなされます。
ポート番号
すべてのポートには独自の番号が登録されています確立された順序。それぞれはその特定の目的のために設計されています。したがって、インターネットで作業する場合、ポート8080がよく見えます。なぜ、そのような機能が必要なのでしょうか?
公式のデータによると、このポートはTCPプロトコルで動作し、HTTPでの使用が意図されています。非公式には、Javaで書かれたTomcatサーブレットコンテナでも使用されます。
TCPポート8080は特定のアプリケーションに応じて、通信のためのプロトコル。プロトコルは、データがネットワークを介してどのように伝送されるかを説明する公式化されたルールのセットです。これは、コンピュータ間で使用される言語として提供され、より効果的にコミュニケーションを行うのに役立ちます。
8080で動作するHTTPプロトコルは、これは、インターネットブラウザとウェブサイト間の通信フォーマットを定義します。もう1つの例は、IMAPメールサーバーとクライアントの間の接続を定義するIMAPプロトコル、または暗号化されたメッセージに使用される形式を指定するSSLプロトコルです。
データ転送
したがって、TCPポート8080は、プロトコルトランスミッションコントロール。これは、TCP / IPネットワークの主要なプロトコルの1つです。 IPプロトコルはパケットのみを処理しますが、TCPは2つのホストが接続を確立してデータストリームを交換できるようにします。パケットの配信が保証され、送信されたのと同じ順序でパケットがポート8080に配信されます。保証された8080接続は、TCPとUDPの主な違いです。 UDP 8080は同じ方法で接続を保証しません。
Windows 7でポート8080を開くには?
これを行うには、「スタート」メニューからコントロールパネル。その中でサブメニュー "ネットワーク"をクリックし、 "Branmauer"を見つける必要があります。 [例外]タブで、[ポートの追加]項目を見つけます。ダイアログボックスが表示され、ポート番号の入力が求められます。設定がTCPであることを確認し、[OK]をクリックします。
どのようにポート8080を閉じるには?これを行うには、別の特定のポートへの接続を設定するだけで十分です。
高度なHTTPおよびTCPプロキシ設定
HTTPプロトコルはTCPプロトコルの上で動作しますが、メッセージの割り当てに関する追加情報を提供します。このため、2つのプロキシは別々に構成されます。
HTTPトラフィックにはターゲットホストとポートが含まれますメッセージのために。これは、TCP接続を介して、指定されたホストとポートの間のTCPエンドポイントに送信されます。通常、HTTPメッセージはTCP接続と同じエンドポイントを指しています。 HTTPプロキシを使用するようにクライアント設定を変更すると、HTTP URLで指定されているホストとポートではなく、別のホストとポートで接続が行われます。これは、メッセージ内のTCPエンドポイントが、接続先のエンドポイントと異なることを意味します。
たとえば、HTTPリクエストがページに送信された場合http://192.0.2.1:8080/operation、要求が«192.0.2.1:8080»ホスト192.0.2.1«ホスト»上のポート8080に送信されるヘッダHTTPメッセージ、Inを含みます。
ただし、HTTPクライアントをonに設定した場合プロキシサーバーを使用すると、メッセージには元のエンドポイントが含まれていますが、基本的なTCP接続はTCPエンドポイントに送られます。
たとえば、送信するようにクライアントを設定した場合今8080" のタイトル«ホスト»で、かつ:その198281.100.1ポート3128でプロキシサーバへのメッセージ、およびクライアントがhttp://192.0.2.1:8080/operationの要求を送信し、メッセージはまだ«192.0.2.1が含まれています「Request-Line」フィールドにも入力します。しかし、このメッセージは、今198.51.100.1:3128でTCP接続を介して送信されます。このように、HTTPプロキシサーバーは、同じポート(ポート8080上のプロキシ)でメッセージを送受信することができますし、受信者に関する情報に基づいて、いくつかの異なるサービスに送信することができます。
ポート8080を介して接続の受信を設定するにはどうすればよいですか?
したがって、「Host」ヘッダーがHTTP / 1.1に追加されました。 HTTP / 1.0接続にはHTTP / 1.0接続は含まれていません。このため、プロキシを通過しない接続には、メッセージのホストとポートが含まれません。ただし、プロキシサーバー経由で送信されたHTTP / 1.0情報には、依然として「クエリ文字列」にターゲットホストとポートが含まれています。したがって、 "Host"ヘッダーがない場合は、プロキシに問題はありません。
TCPプロキシを有効にするには、TCPエンドポイントからリアルタイムでクライアント構成を交換エンドポイントに変更します。 HTTPとは異なり、このプロトコルはプロキシを使用する組み込みの機能を提供しません。つまり、TCP経由でプロキシサーバーに接続すると、情報をターゲットの宛先に送信する仕組みがありません。
8080で複数の接続を設定するには?
TCPプロキシの唯一の方法これらの接続を介して送信されるトラフィックに関係なく、複数のシステム(つまりエンドポイント)への接続を許可し、各システムの別のポートを待機します。これにより、各エンドポイントに対応するポート番号の情報を接続して維持することができます。次に、クライアントは、接続する必要がある各システムに対応するプロキシポートで構成されます。リスンするTCPプロキシポートと対応するエンドポイントは、プロキシ設定ファイルRTCP_install_dir / httptcp / registration.xmlの<forward>演算子で設定します。まず、ポート8080をチェックする必要があります。デフォルトで開いている場合は、数分後にさらに設定が行われます。
この例では、198.51.100.1はプロキシサーバーのIPアドレスです。ポート3333からプロキシサーバーに送信されたトラフィックは、次のポート8080に送信されます。例。 com:
<Forward bind = "198.51.100.1:3333" destination = "www。Example.com:8080" />
したがって、トラフィックの新しい宛先を追加するたびに、クライアント構成ファイルを変更する必要があります。この制限は、HTTPプロキシには適用されません。
HTTPとTCPの相互作用
ポートの処理方法を理解するにはHTTPとTCPプロキシは、あなたが192.0.2.1:8080と192.0.2.1:8081上の2つのサービスがあると、プロキシサーバが198.51.100.1上で実行されています。彼らはIPアドレスの代わりに、ポート番号ごとに異なる場合、この例では、各サービスの対応するアドレスを除いて同じになります。彼らは両方のTCPエンドポイント上の1-HTTPプロキシポートの要求に対してHTTPトラフィックを期待していた場合、彼に送信することができます。 HTTPメッセージが192.0.2.1:8080に対処していることを確認すると、プロキシはこのアドレスにメッセージを転送する、または彼がこのサービスのために持っているすべてのルールを適用します。同じ手順は同じポートを使用して、192.0.2.1:8081に適用されます。
これらの2つのサービスがTCPトラフィックを待つ代わりに、構成ファイルの2つの<forward>要素で定義されている2つのTCPプロキシポートを開く必要があります。
<Forward bind = "198.51.100.1:3333" destination = "192.0.2.1:8080" />
<Forward bind = "198.51.100.1:3334" destination = "192.0.2.1:8081" />
最初のサービスに対するクライアントの構成の変更«198.51.100.1:3334»をする«192.0.2.1:8081»と - «198.51.100.1:3333»の«192.0.2.1:8080»、第二と。クライアントは、メッセージ(TCPパケット)、最初のアドレスの最初のサービスを送信します。
プロキシサーバーは、このポートでそれを受信します(3333)。この接続を介して送信されるデータはわかりません。したがって、プロキシサーバーはその設定を調べ、このポートへのトラフィックを192.0.2.1:8080にリダイレクトする必要がある(またはこのサービスのルールを適用する必要がある)ことを確認します。すべてのHTTPトラフィックをリダイレクトできない場合は、クライアントの設定でHTTPプロキシ設定がサポートされていないため、リバースHTTPプロキシを使用する必要があります。
そのURLには、リンク先URLの代わりにあなたに必要なもの。このプロセスは、クライアントシステム内のメッセージのTCPエンドポイントとして指定して転送ルールを作成するTCPプロキシ設定プロセスと似ています。
違いは、<forward bind = "198.51.100.1:3333" destination = "192.0.2.1:8080" type = "HTTP" />のように、HTTPを定義するルールにtype属性を追加することです。
トラフィックはどのように流れていますか?
今すぐプロキシサーバーは受信のみに構成されていますHTTPトラフィックを割り当てられたポートに送信し、さらに豊富なフィルタリングを使用できます。たとえば、URLに特定のパスを持たないスタブや、POSTなどの特定のHTTPメソッドを使用しないスタブへのトラフィックをフィルタすることができます。ただし、スタブが常に機能するとは限りません。したがって、サーバーはトラフィックをシステムに送信できるようにするために<forward>要素の宛先が必要です。たとえば、クライアントが192.0.2.1:8080でサービスに接続し、198.51.100.1:3333で逆方向HTTPプロキシを使用する必要があるとします。
クライアントが使用する前にこのサービスのクライアント構成は、http:// 192.0.2.1:8080/操作などのURLからhttp:// 198.51.100.1:3333/操作に変更する必要があります。この新しいURLに送信された要求は、プロキシサーバーに入ります。
要求メッセージには、ヘッダ「ホスト」でプロキシ(198.51.100.1:3333)、およびないシステムのアドレス、クライアントは、彼が転送されたメッセージを送るのか分からないからです。これは、クライアントが、そのような化合物の役割の性質を決定簡素化。それはライブシステム192.0.2.1:8080、タイトル«ホストは»であることをメッセージにに転送する必要があります。以下のいずれかが必要です。したがって、プロキシは、要求をポート3333に来ていることを知ることは、<フォワード>の要素を使用しています更新しました。メッセージは、例えば、サービスのすべてのルールを適用するために、ルーティング・プラグ。