環境
やりたいこと
ncコマンドとは
ncコマンドはネットワーク接続を扱うためのコマンドラインツールで、TCPやUDPを使った通信テスト、ポートのリスニング、データの送受信などが可能だ。シンプルながらも強力な機能を持ち、ネットワークの診断やデバッグに使われる。
ncコマンドでTCPサーバーを構築する
while true; do printf 'HTTP/1.1 200 OK\n\nHello' | nc -l 8080; done
ncコマンドでUDPサーバーを構築する
ncコマンドを使ってUDPサーバーを立てる方法は、TCPサーバーと似ているが、通信プロトコルがUDPだ。以下のコマンドでUDPサーバーを立てて、指定したポートでデータを待ち受ける。受信したデータはそのままシェルに渡され、コマンドとして実行される。
サーバー側
nc -ul 1234 | /bin/sh
クライアント側
クライアント側からは、以下のコマンドでサーバーにデータを送信する。dev35
はサーバーのホスト名なので、実際の環境に合わせて適宜変更する必要がある。
nc -u 【サーバー側のIP】 1234
これで、ncコマンドを使ってTCPとUDPの両方のサーバーを簡単に立てることができる。ネットワークのテストやデバッグに役立てよう。