手当たり次第に書くんだ

飽きっぽいのは本能

Ubuntu 22.04 TFTP クライアント

目次に戻る

1. Overview

TFTP クライアントは、ネットワーク上の TFTP サーバーに対してファイルを送受信するためのツールです。

軽量な通信プロトコルである TFTP(Trivial File Transfer Protocol)を使用し、ブートローダーやファームウェアの転送、構成ファイルの取得など、シンプルなデータ転送を行います。

通信仕様については「TFTP の仕組みとファイアウォール設計上の考慮点」も参考にして下さい。

1.1. 主な用途

  • ネットワーク機器のファームウェアや設定ファイルの転送
  • PXE 環境での OS イメージの取得
  • 組込み機器へのブートイメージ配布やログ転送

1.2. 特徴

  • 軽量でシンプルなコマンド操作(tftp コマンドまたは対話モード)
  • UDP ベースの単純な転送制御(ブロック単位の ACK 応答)
  • 暗号化や認証なし(信頼ネットワーク内で使用)
  • FTP や SCP に比べて非常に高速に初期通信を確立できる

1.3. 注意事項

  • TFTP は暗号化や認証を提供しないため、インターネット経由での利用は非推奨です。
  • ローカルネットワークや VPN 環境内で、安全に通信が確保されている状態でのみ使用してください。
  • また、TFTP サーバーの設定により、アップロード(PUT)が許可されていない場合があります。

2. Prerequisites

  • 基本設定が完了していること。
  • Ubuntu 標準リポジトリを利用します。

3. Installation & Uninstallation

3.1. インストール

tftp パッケージをインストールします。

sudo apt update
sudo apt install tftp

インストール後、コマンドが利用可能であることを確認します。

tftp

実行すると、次のように対話モードに入ります。

tftp>

quit または q を入力して終了します。

tftp> quit

3.2 主な関連ファイル

tftp クライアントは設定ファイルを持たず、すべてコマンドラインで指定します。主なファイルは以下の通りです。

種別パス内容
実行ファイル/usr/bin/tftpTFTP クライアント本体。

3.3 アンインストール

不要になった場合は、次のコマンドで削除します。

sudo apt remove --purge tftp
sudo apt autoremove

4. Verification

TFTP クライアントを使用して実際のファイル転送を検証します。TFTP のブロック転送動作を確認するため、一定サイズのバイナリファイルを用います。

4.1. テスト用ファイルの作成

dd コマンドを用いて、乱数から 64KB のバイナリファイルを作成します。

dd if=/dev/urandom of=test.bin bs=1K count=64

作成確認:

ls -lh test.bin

出力例:

-rw-rw-r-- 1 myadmin myadmin 64K Oct 12 13:03 test.bin

4.2. TFTP クライアントの起動

tftp

プロンプトが表示されます。

tftp>

4.3. サーバーへの接続

接続先 TFTP サーバーを指定します。この時点で接続性は検証されません。

connect 10.2.0.192

4.4. バイナリ転送モードの設定

TFTP はデフォルトで ASCII モードとなるため、必ずバイナリモードを指定します。

binary

この設定を行わないと、バイナリファイルの内容が破損する可能性があります。

4.5. アップロードの確認

put test.bin

4.6. ダウンロードの確認

ローカルのファイルを削除して再取得します。

rm test.bin

ダウンロードします。

tftp
connect 10.2.0.192
binary
get test.bin

ダウンロード確認:

ls -lh test.bin

出力例:

-rw-rw-r-- 1 myadmin myadmin 64K Oct 12 13:03 test.bin

目次に戻る

Ubuntu 22.04 TFTP クライアント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

トップへ戻る