【初心者向け】Windowsで指定サイズのデータをTCP/UDPで送ってみた(Ncat(nc)編)
ネットワーク検証などでお困りの方の参考になればと思います。
この記事では、Windows環境に「Ncat(nc)」を導入し、指定したサイズのデータをTCPまたはUDPで送信する方法を解説します。
Ncatは、セキュリティツールとして知られるnmap
に同梱されており、公式サイトから安全に入手可能です。
(GitHub等で配布されているnc.exe
など一部セキュリティポリシーによりダウンロードできない場合でも、nmap公式版は使用できることがあります)
本記事では、インストールからコマンド例まで、初心者向けに丁寧に解説していきます。
✅ この記事はこんな人向け
- WindowsでTCP/UDP通信のテストをしたい方
- 指定サイズのデータを送信してみたい方
- 簡単に
nc
コマンドを試したい方
1. Nmapのインストール(Ncat含む)
まずは、nmap公式サイトからインストーラーをダウンロードします。
👉 https://nmap.org/download.html
▼ インストール手順
- ページ下部の「Microsoft Windows binaries」からインストーラー(
nmap-<version>-setup.exe
)をダウンロード
-
.exe
を実行し、「次へ」をクリックして進めます(基本はそのままでOK) - インストール先に
ncat.exe
が含まれています(例:C:\Program Files (x86)\Nmap\
)
2. ncat.exe
の使い方
取得した ncat.exe
は以下のいずれかの方法で利用できます。
- 作業ディレクトリにコピーして使う
- システム環境変数の
PATH
に通して、どこからでも実行可能にする
3. テストデータ(text.txt)の準備
送信するデータサイズに応じてテキストファイルを作成します。
たとえば「A」を1000文字分送信したい場合、以下のように作成できます。(PowerShellの例)
powershell -Command "Write-Output ('A'*1000) > text.txt"
※ファイルがなくても送信は可能です。後述するクライアントのコマンドで
< text.txt
を省略すると、標準入力から手動で文字列を打ち込んで送信できます。
4. UDPでデータ送信してみる
以下の手順で、UDP通信をテストします。
※すべて「コマンドプロンプト(cmd)」で実行してください。
▼ サーバー側(受信)
ncat.exe -lu -p 12345
-
-l
: 受信(Listen) -
-u
: UDPモード -
-p
: ポート番号指定
▼ クライアント側(送信)
ncat.exe -u 192.168.1.10 12345 < text.txt
-
-u
: UDPモード -
< text.txt
: テキストファイルの内容を送信
UDPはコネクションレスなため、受信側が起動していないとパケットは破棄されます。
また、MTU(最大転送単位)を超えるサイズはOSによって分割される場合があります。
5. TCPでデータ送信してみる
次にTCP通信の送信方法です。こちらもコマンドプロンプトで実行してください。
▼ サーバー側(受信)
ncat.exe -l -k -p 12345
-
-l
: 受信(Listen) -
-k
: 接続後も待ち受けを継続(複数接続対応) -
-p
: ポート番号指定
▼ クライアント側(送信)
ncat.exe 192.168.1.10 12345 < text.txt
TCPはコネクション型のため、受信側が起動していないと接続できません。
🔚 おわりに
Ncat(nc)を使えば、Windows環境でも簡単にTCP/UDP通信のテストができます。
特にパケットキャプチャやMTU検証、ファイアウォール検査などの場面で非常に役立ちます。
「とにかく手軽に試してみたい」方は、ぜひ今回紹介した手順を活用してみてください。