基本的に、使用したいのは Qt Network モジュールです。あなたはここでそれについて読むことができます:
http://qt-project.org/doc/qt-5.0/qtnetwork/qtnetwork-programming.htm l
そして、ここでクラスリストを見つけてください:
http://qt-project.org/doc/qt-5.0/qtnetwork/qtnetwork-module.html
簡単に言えば、TCP 通信に使用できる 2 つの主要なクラスは、QTcpServer と QTcpSocket です。接続をリッスンするようにサーバーを設定すると、実際の通信を行うために QTcpSocket が返されます。あらゆる発信通信に QTcpSocket を使用できます。
TCP を使用したくない場合は、データグラムを使用できます (より単純ですが、最終的には信頼性が低くなります)。ここで、QUdpSocket は、送信と受信の両方に使用するメイン クラスです (受信するには、ソケットをマシンのポートにバインドする必要があります)。
これらのクラスに基づいて単純なファイル転送を行うカスタム プログラムを作成するのはかなり簡単ですが、特にファイルを処理するように設計されたより高いレベルのプロトコルを見ることもできます。
接続の反対側にある FTP サーバーとの単純な対話には、QFtp クラスを使用できます。FTP クライアント アプリケーションの例を次に示します。Qt で FTP サーバーを作成するのはかなり複雑ですが、https ://code.google.com/p/qt-ftp-server/ を参照してください。
もちろん、これはすべて、イーサネット接続が適切に設定されており、コンピューターに有効な IP アドレスがあることを前提としています。イーサネットはリンク層プロトコルであり、より高いレベルの IP および TCP プロトコルの生の基盤を形成することに注意してください。上位レベルのプロトコルの考え方は、インターネット全体のさまざまなリンク層で使用できるということです。リンク層プロトコルと直接対話するプログラムを作成することは非常にまれです (もちろん、OS のネットワーク スタックを作成している場合を除きます)。
ほとんどのネットワークでは、IP アドレス/ネットマスクなどの構成は、デバイスの 1 つで実行されている DHCP サーバーによって処理されます。最も一般的には、すべてを接続しているルーターで実行されます (DHCP が既に実行されている場合は、おそらく心配する必要はありません)。DHCP を使用しない場合、通常、ほとんどのデバイスで静的アドレスとネットマスクを構成できます。それらを選択するのはかなり簡単な手順です。このページには、概念のかなり良い紹介があります。