【Windowsで】Tiny PXE Server で 「http サーバで PXELINUX」 するだYO!

以前にちょっと書きましたが、httpサーバ付の高機能なWindows版のiPXEサーバーでありんすよ。

「PXELINUXは便利やねんけどTFTPのダウンロードはおそてかなん!」な貴兄に贈りたいです。TFTPに比べるとHTTPはアタックも驚きの速さ、これであなたも毎日が恋のぱるぴていしょん!(※ ※ただしイケメン ry)


下記ページの TFTPD32(TFTPD64) の設定がそのままで使えます。なんで PXELINUX の基本設定などは割愛…(手抜き堪忍)。


f:id:palm84:20181223152045p:plain

※ pxesrv.zip を pxesrv フォルダに展開します。pxesrv フォルダの場所はどこでもよろしおまですすみませんすみません勘違いしてました!pxesrv フォルダ は TFTP/HTTP ルート内に置いてください!(※ ルート外に置く場合は /pxesrv/files/ipxe-undionly.kpxe をルート下にコピーしてください!

【注意】同じPC上のhttpサーバは止めてくだされ。ルーターのDHCPサーバ機能はオンのままでも使えるかもですが止めた方が無難であります。

Boot File と Root Path

※ 勘違いしてたので訂正しました。orz

  • ファイル配置
TFTP/HTTP ルート:.
|

+---pxesrv
|   |   config.ini
|   |   config.sample
|   |   filter.sample
|   |   licensing.txt
|   |   pxesrv-faq.xhtml
|   |   pxesrv.exe
|   |   
|   +---files
    --- 以下略 ---

ここがポイントです。わかる人ならこれだけでいいかも。

  1. /pxesrv/files/ipxe-undionly.kpxe (TFTP/HTTPルートからのパス)を指定
  2. 下の Filename ... をチェック
  3. http://自PCのIPアドレス/pxelinux.0 を指定
  4. 「Root Path」にTFTPのルートフォルダを指定

※ 但し、設定が保存されなかったりしたので設定ファイルの編集をおすすめ。

設定ファイル編集

IPアドレスの確認

わかる人にはいわずも(ry

pxesrv.exe のあるディレクトリの config.ini を編集(※ なければ作成)。

一例ですが…

[dhcp]
; ===== root path
root=F:
; ===== Option 54 (DHCP Sever)
opt54=192.168.11.8
; ===== IP Pool start
poolstart=192.168.11.200
; ===== IP Pool Size
poolsize=20
; ===== Option 1 (Subnet Mask)
opt1=255.255.255.0
; ===== Option 3 (Router)
opt3=192.168.11.1
; ===== Option 6 (DNS Server)
opt6=192.168.11.1
; ===== Option 28 (Broadcast)
opt28=192.168.11.255
; ===== Option 15 (DNS Domain Name)
opt15=SORAAOI-NETWORK
; ===== Boot File - Filename
filename=/pxesrv/files/ipxe-undionly.kpxe
; ===== Boot File - Filename if user-class=gPXE or iPXE
altfilename=http://192.168.11.8/pxelinux.0
; ===== HTTPd
httpd=1
start=1
  • root path - TFTPルートのパス
  • Option 54 (DHCP Sever) - DHCPサーバ = このPCのアドレス
  • IP Pool start - 開始IPアドレス = 192.168.x.200 とか
  • IP Pool Size - 払い出しアドレス数 = 10から20ぐらいで
  • Option 1 (Subnet Mask) - サブネットマスク = だいたい 255.255.255.0
  • Option 3 (Router) - ルーター(ゲートウェイ)
  • Option 6 (DNS Server) - DNSサーバ
  • Option 28 (Broadcast) - ブロードキャスト = 192.168.x.255 とか
  • Option 15 (DNS Domain Name) - ドメイン(ワークグループ) = なしでもいい
  • Boot File - Filename - /pxesrv/files/ipxe-undionly.kpxe 指定
  • Boot File - Filename if user-class=gPXE or iPXE - []http://IPアドレス/pxelinux.0[] 指定
  • httpd=1, start=1 起動時にhttpサーバ開始

ウチのPXELINUXメニュー(笑)

うわ、マニアック(笑)とかいうなw

f:id:palm84:20181223152050p:plain

ほな、こぴっとがんばってくだされ!