mygamexxx 发表于 2025-2-13 20:12:31

TinyPXE的缺点与PXE网启服务器推荐

本帖最后由 mygamexxx 于 2025-3-2 22:55 编辑

PXE网启需要DHCP+TFTP+HTTP服务器软件。
1、TinyPXEServer v1.0.0.23(打开HTTPd,简单,要注意配置文件与界面操作的冲突可能导致的失败)
2、DHCP Server for Windows v2.5.2(最新版为2.10.0,要捐款后才能下载。以服务启动,启动文件固定后比较方便,ipxe.bios要自行编译为默认脚本autoexec.ipxe。支持HTTP)
3、haneWIN DHCP Server v3.1.27 + HFS~HTTP File Server v2.4.0RC7(使用虚拟文件系统,方便)
4、Tftpd32 v4.64(ipxe.bios要自行编译为默认脚本autoexec.ipxe。) + EasyWebServer v1.9(简单)
5、TinyPXEServer v1.0.0.23(关闭HTTPd) + MyWebServer v3.8.40(简单,G4E有出错,ipxe正常)
6、OpenDHCPServer v1.53是开源命令行形式的DHCP+TFTP+HTTP服务器(未测试)。
7、CiscoTFTPServer v1.1思科公司的TFTP服务器,单独使用无法PXE网启。

PXE服务器教程.docx
链接: https://pan.baidu.com/s/12N1dRY1ISsIwBMEXB3NuZA?pwd=t3in 提取码: t3in

TinyPXE服务器的缺点:我在配置文件config.ini中设置根目录为G:\,引导文件在G:\PXE\,引导文件名在config.ini中留空root=,其他文件在G:\BOOT和G:\EFI目录,与本地启动文件位置相同(在esp分区,不隐藏),引导文件名在界面中设置。运行后,软件自动会改变TFTP根目录为G:\PXE。导致无法正常PXE网启,将引导文件放置于根目录,解决这个问题。

目前比较好的方案是:haneWIN DHCP Server+EasyWebSvr (或HFS Server,HFS的好处是使用虚拟文件系统,进入HTTP后,可以利用虚拟文件系统,把不同磁盘位置的目录作为HTTP根目录下的目录。)或者单独使用dhcp server for windows(需要编译bios启动的ipxe,自动加载目录下的autoexec.ipxe脚本)。单独使用TinyPXE服务器,比较简单(配置文件尽量简单,避免未知问题,引导文件放在TFTP根目录。使用VMWARE虚拟机作为客户端测试时,如果TFTP传输错误,关闭虚拟机,删除虚拟机目录下的除五个基础文件.vmdk、.vmsd、.vmx、.vmxf外的多余文件)。PXE网启服务器,汉化版dhcp server for windows V2.5.2 - 网络启动区 - 无忧启动论坛 - Powered by Discuz!25#楼有yigeren编译好的ipxe.bios。再次感谢yigeren!

至于加载ipxe脚本的功能,只要ipxe编译时自动加载目录下的脚本文件autoexec.ipxe(目前boot.ipxe.org中编译好的EFI启动的ipxe.efi已经如此,bios启动的还不行),这个功能就不需要了。
config.ini如下

root=G:\
filename=
altfilename=
httpd=1
bind=1
smb=1
poolsize=254
binl=0
proxydhcp=0
dnsd=0



Zhengqiang5q 发表于 2025-2-13 20:42:11

路过纯支持一下{:1_195:}

邪恶海盗 发表于 2025-2-13 20:57:11

有没有可能是你的姿势不对?


二○二五年二月十三日

mygamexxx 发表于 2025-2-13 20:58:22

邪恶海盗 发表于 2025-2-13 20:57
有没有可能是你的姿势不对?




自行用G4E验证即可。

youxia1220 发表于 2025-2-13 21:33:42

谢谢分享

小灰兔 发表于 2025-2-14 07:17:42

谢谢分享

gvbcn 发表于 2025-2-14 09:58:05

学到了,学习学习

yc2428 发表于 2025-2-14 10:03:41

谢谢分享!

忧心的启 发表于 2025-2-14 10:32:26

学习学习,感谢分享。

guong 发表于 2025-2-14 11:09:33

谢谢分享

进士小站 发表于 2025-2-14 14:24:05

HFS Server试用后
总体感觉还不错{:1_195:}

as8686886 发表于 2025-2-17 10:11:03

试试这个 很好用 MyWebServer 3.8.40 我是pxesrv1.0.0.23cn搭配他 非常稳定 网络挂载ISO速度也杠杠的

mygamexxx 发表于 2025-2-17 10:50:18

本帖最后由 mygamexxx 于 2025-2-17 10:51 编辑

as8686886 发表于 2025-2-17 10:11
试试这个 很好用 MyWebServer 3.8.40 我是pxesrv1.0.0.23cn搭配他 非常稳定 网络挂载ISO速度也杠杠的
不知道哪里设置有问题,接管不了HTTP。

siteid=0
filelist=1
gziptmpdir=wwwroot
http=1
https=0
urlrewrite=0
SERVERPORT=80
postsize=8000
HTTPSPORT=443
DEFAULTfile=index.html;index.asp;index.htm
sitename=默认站点
SERVERIP=127.0.0.1
enablewebdav=0
enableasp=1
gzip=0
gzipext=.js;.htm;.html;.css;
httprz=0
serverpath=G:\

/PXE/=G:\



.html=text/html
.jpg=image/jpeg
.css=text/css
.gif=image/gif
.swf=application/x-shockwave-flash
.htm=text/html

gziptmpdir=wwwroot


mygamexxx 发表于 2025-2-17 12:40:26

本帖最后由 mygamexxx 于 2025-2-17 13:05 编辑

搞好了,是IP地址的问题。但还是与其他HTTP服务器有区别,出错。应该是MYWEBSERVER的原因(估计它对压缩文件支持不好)吧。

清水谷龙华 发表于 2025-2-17 12:58:47

谢谢分享

as8686886 发表于 2025-2-18 09:38:42

mygamexxx 发表于 2025-2-17 12:40
搞好了,是IP地址的问题。但还是与其他HTTP服务器有区别,出错。应该是MYWEBSERVER的原因(估计它对压缩文 ...

用批处理生成的配置文件 你可以参考我的 使用起来没一点问题@echo off
title PXE网络启动系统配置文件生成器
color 2f
setlocal EnableDelayedExpansion
mode con: cols=80 lines=30
echo.&echo                        PXE网络启动Tiny PXE Server配置文件生成器 By:as8686886
echo.&echo         使用说明:1、此工具仅用于本工具本机首次使用
echo                          2、再次使用直接执行pxesrv1.0.0.23cn.exe即可
echo                          3、客户机PXE脚本无法运行请使用BAK目录menu.txt文件启动

:main
set n=0
echo.&echo                查询到本机有如下IP地址:
for /f "tokens=16" %%i in ('ipconfig ^|find /i "ipv4"') do (
set /a n=n+1
echo                 !n!. %%i
)
Set /p c=请选择要使用的IP地址:
if "%c%"=="" goto main
set n=0
for /f "tokens=16" %%i in ('ipconfig ^|find /i "ipv4"') do (
set /a n=n+1
if "%c%"=="!n!" (
set pxeip=%%i
)
)
echo.&echo 你选择的IP是:%pxeip%
echo.
set servername=%COMPUTERNAME%
set /P PASSWORD=请输入当前用户%USERNAME%的密码(客户端共享使用):

REG DELETE HKLM\SOFTWARE\WOW6432Node\iptools /f>nul 2>nul
Reg add "HKLM\SOFTWARE\WOW6432Node\iptools\pxeserver\txtaltfilename" /v "H0" /t REG_SZ /d "boot/menu.txt" /f>nul 2>nul
Reg add "HKLM\SOFTWARE\WOW6432Node\iptools\pxeserver\txtaltfilename" /v "H1" /t REG_SZ /d "BAK/menu.txt" /f>nul 2>nul

echo.&echo 设置本目录下PXE文件夹为共享文件夹……
MD PXE>nul 2>nul
net share PXE /delete /y>nul 2>nul
echo Y|cacls %~dp0PXE /t /p everyone:f>nul 2>nul
REM echo Y|cacls %~dp0\PXE\*.* /t /p everyone:f>nul 2>nul
net share PXE=%~dp0PXE /GRANT:Everyone,FULL>nul 2>nul

Taskkill /im TightVNC远程控制.exe /f /T>nul 2>nul
Taskkill /im pxesrv1.0.0.23cn.exe /f /T>nul 2>nul
taskkill /im MyWebServer.exe /f /T>nul 2>nul

echo.&echo 生成Tiny PXE Server配置文件……
(
echo
echo 00002=EFI\boot\bootia32.efi
echo 00006=EFI\boot\bootia32.efi
echo 00007=EFI\boot\bootx64.efi
echo 00009=EFI\boot\bootx64.efi
echo
echo root=%CD%\
echo filename=ipxe.pxe
echo altfilename=boot/menu.txt
echo ;altfilename=BAK/menu.txt
echo optextra=175.6.1.1.1.8.1.1
echo httpd=0
echo binl=0
echo start=1
echo tftpd=1
echo proxydhcp=1
echo bind=1
echo smb=0
echo log=0
echo ;opt1=
echo opt3=0.0.0.0
echo opt6=0.0.0.0
echo ;opt28=
echo ;opt15=
echo ;opt17=
echo ;opt54=
echo ;opt67=
echo ;opt66=
echo ;opt43=
echo ;opt252=
echo ;poolstart=
echo host_name=%COMPUTERNAME%
echo share_name=PXE
echo share_username=%USERNAME%
echo share_password=%PASSWORD%
echo poolsize=50
echo dnsd=0
echo opt43=1
echo opt51=3600
echo opt60=PXEClient
echo ;cmd=_test.bat
echo online=_online.cmd
echo offline=_offline.cmd
echo opt54=%pxeip%
echo next-server=%pxeip%
echo opt66=%pxeip%
echo syslog=127.0.0.1
)>%~dp0config.ini
echo.&echo 生成WebServer配置文件……
(
echo
echo siteid=0
echo filelist=1
REM echo gziptmpdir=gziptmp
echo http=1
echo SERVERPORT=80
echo sitename=PXE_Server
echo SERVERIP=%pxeip%
echo enableasp=1
echo gzip=0
echo serverpath=%CD%
echo
REM echo gziptmpdir=gziptmp
echo gxh=1
echo autostart=1
echo isapibufsize=64
echo sendtimeout=18000
echo keepconntime=30
echo savelog=0
echo autorun=0
echo logpath=log
echo threadpoolsize=6
echo update=0
echo upflag=1
echo enableconnect=0
echo maxmem=1024
)>%~dp0WebServer\server.ini
echo.&echo 配置文件生成完毕!3秒后自动退出!
echo.&timeout /t 3 /nobreak >nul

mygamexxx 发表于 2025-2-18 12:40:53

本帖最后由 mygamexxx 于 2025-2-18 12:54 编辑

as8686886 发表于 2025-2-18 09:38
用批处理生成的配置文件 你可以参考我的 使用起来没一点问题
看了一下批处理filename=ipxe.pxe,PXE引导文件为ipxe.pxe,使用这个引导文件是没问题的。只有用G4E目前在测试的最新20250215版bootx64.efi作为引导文件时:TINY+MyWebServer有问题;用TINYPXE+EasyWebSvr、TINYPXE+HFS、dhcp server for windows作为PXE服务器,这三种方式均没有问题。

as8686886 发表于 2025-2-18 14:53:04

mygamexxx 发表于 2025-2-18 12:40
看了一下批处理filename=ipxe.pxe,PXE引导文件为ipxe.pxe,使用这个引导文件是没问题的。只有用G4E目前 ...

G4E我没研究,我自己改的 目前 GPT和MBR都能用 也够用了

hao9i 发表于 2025-2-22 22:37:00

感谢分享

bfgxp 发表于 2025-2-23 18:00:52

TinyPXE与ipxe配合得很好,我已经不用其他方案了

highroad 发表于 2025-2-23 18:25:25

太专业了,学习学习

zilong-168 发表于 2025-2-23 21:03:41

学习了,谢谢分享

chencanmin 发表于 2025-2-23 22:56:52

学习一下

fegr 发表于 2025-3-2 15:19:30

感谢分享

hao9i 发表于 2025-3-2 21:11:08

PXE服务器教程.docx文件能再分享一下吗?

mygamexxx 发表于 2025-3-2 22:52:48

hao9i 发表于 2025-3-2 21:11
PXE服务器教程.docx文件能再分享一下吗?

一楼更新了地址

nianyueriPE 发表于 2025-3-3 00:03:36

谢谢分享

nianyueriPE 发表于 2025-3-3 00:03:54

下载试试

wqsohu 发表于 2025-8-20 15:31:55

谢谢分享

wtf112211 发表于 2025-8-21 15:50:31

iventoy,在群晖上部署,测试了虚拟机、实体机,uefi启动pe分辨率有问题,求解决方案
页: [1] 2
查看完整版本: TinyPXE的缺点与PXE网启服务器推荐