2016-09-28 3 views
-3

私は単独でTCPパケットを送信できるプログラムを実装しようとしています。理想的には、コンピュータのポートにパケットを送信し、それを処理させたいのです。これは、クライアント/サーバーファイルのペアを持たずにこれを実行しようとしていることを意味します。ソケットプログラミング - TCPの基礎

しかし、クライアントとサーバーの両方のファイルが表示されている場所であれば、これを実行するのは本当に難しいことです。クライアントファイルまたはサーバーファイルを単独で実行しようとすると、それらは互いに依存するため動作しません。

私がしたいことは可能ですか?

+1

あなたが望むものは理にかなっていません。 – EJP

+0

サーバに接続するだけで、サーバを単独で稼働させるとどうしたら良いでしょうか?または、もう一方の端に接続するためにクライアントを実行する必要はありませんか?ポートにデータを送信する場合は、そのポートを受信して​​何かを行うサーバーが待機している必要があります。ポートはそれ自身で動作しません。 TCPはあなたが探しているものではありません。あなたが達成しようとしていることについて意味のある詳細を提供していないので、正しい解決策が何であるかを言うのは難しいです。 Google *のプロセス間通信*とターゲットとするOSといくつかの調査を行います。 –

+0

パケットを送信するポートをリッスンするプログラムが必要です。そうしないと、ターゲットコンピュータのネットワーキングスタックは単純にパケットを破棄します。独自のサーバープログラム(telnetdやnetcatなど)をサーバーとして使用することができます。 –

答えて

0

あなたはなぜそれをしたいのか分かりません。しかし、そのようなパケットを送信するには、TCPの代わりにIP raw socket(SOCK_RAW)用のAPIを使用する必要があります。

したがって、「細工されたTCP」のペイロードでIPパケットを送信することができます。