TFTPサーバーからファイルをコピーする

TFTPサーバーからファイルをコピーする

AFAIU、tftpサーバーのpxe起動に使用されると、クライアントはサーバーに要求を送信し、サーバーはいくつかのファイル(initrd、kernel、configなど)を再送信します。サーバーは、クライアントのIPアドレスに基づいてクライアントに送信するファイルを決定できます。クライアントはこれらのファイルのURLを知りません。

私の質問はこれです:

tftpサーバーをテストしたいです。コマンドや(簡単な)スクリプトを実行してサーバーに接続しtftp、ファイルを受け取り、そのファイルをディスクに保存したいと思います。

つまり、私がやりたいことは次のとおりです。

  • サーバー側に違いはありません。サーバーは、クライアントがPXEを介してブートしたいと考え、ファイルをクライアントに送信します。

  • クライアント側:クライアントは実際に起動したくありません。ただファイルをディスクにコピー(保存)しようとします。

これを行う最も簡単な方法は何ですか?

ベストアンサー1

あなたの質問に対する@Patrickのコメントは絶対に正確です。 PXEを起動するために必要なすべてのクライアントコンピュータは、DHCP要求をブロードキャストすることです。 DHCPサーバー(通常はPXEブートサーバー上)はクライアントデバイスのMACアドレスを確認し、それを使用して

  • クライアントにIPアドレスを提供する
  • クライアントにPXEサーバーからインポートする必要があるファイルを知らせます。

この時点で、クライアントはサーバーのアドレスとサーバーから何を取得できるかを知っています。残念ながら、DHCPサーバーは1つしかない可能性があり、PXEクライアント用の特別な構成があり、TFTPサーバーを実行する必要があるなど、複雑な問題がたくさんあります。

非常に便利なステップバイステップガイドがあります。https://wiki.debian.org/PXEBootInstall。ディストリビューションを指定していませんが、ほとんどのPXEシステムは少なくともこのガイドラインに準拠しています。

あなたの問題は、PXEサーバーのアドレスを知りたくないことを理解しています。ただし、これを行う唯一の方法は、(自分のクライアントを作成せずに)PXEクライアントDHCPリクエスタ/プロセッサを使用することです。この部分をあきらめたいなら、指導に必要な多くの能力をあきらめることです。

実際には、テスト目的で多くのPXEプロトコルを実装するシステムブートを望まないことを知っています。利用可能な一時マシンがない場合は、なぜPXEをテストするのか疑問に思います。

おすすめ記事