日度归档:2017年2月22日

RouterOS上的pxe服务器

因为骨干路由从OpenWRT换到了RouterOS,所以pxe服务器也得从新搭建。

过程不是很麻烦,但是RouterOS并没有nfs服务器,所以有些linux发行版的netboot需要nfs的,就需要什么额外的机器来当这个nfs服务器了,当然,kvm是个好东西。

可以参考之前的老文https://ferrets.space/2014/04/07/在家里做了个pxe服务器/,有些东西还是自己动手丰衣足食。

目前拿了个debian来做实验:

首先,去下载必要的文件,然后,找到

pxelinux.0
ldlinux.c32
vesamenu.c32
libcom32.c32
libutil.c32
pxelinux.cfg/default
linux
initrd.gz

接下来首先就是要编辑pxelinux的配置文件pxelinux.cfg/default,内容可以参考之前的文章,大概像这样子:

DEFAULT vesamenu.c32
PROMPT 0
MENU TITLE RouterOS PXE-Boot Server

label Ubuntu
        MENU LABEL Debian
        KERNEL debian/linux
        APPEND initrd=debian/initrd.gz
        TEXT HELP
                Starts the Debian Net installer
        ENDTEXT

至于各字段怎么自定义那就自行Google了,保存好配置文件之后呢,就将这么几个文件,丢到RouterOS的文件系统(真他么的不好用)里,比如说这样:

好了之后,就在ip/tftp菜单下面增加tftp文件的配置,比如说像这样:

请求文件名可以和实际文件名不一样,实际文件名是给RouterOS看的,请求文件名是给客户端看的,所以实际文件名可以自行决定。这里要主意的是ip地址填的是客户端的ip地址,而pxe服务器嘛,基本上并没有固定ip,所以ip地址最好还是填ip段。

配置就这么多,接下来只要在客户端执行pxe启动就行了。