[ipxe-devel] help ipxe script

Christian Nilsson nikize at gmail.com
Tue Apr 26 16:41:26 UTC 2016

On Tue, Apr 26, 2016 at 4:45 AM, deepfreeze <zulinfi at 163.com> wrote:
> hi,
>    ipxe
>   I have a trouble
>    in the ipxe script , I would get a val is the fourth segment value of  ip
> address, when dhcp , the client ip is,  can I get the "88" to
> set the hostname val is "pc-88"?
> 你好,
>     原谅我的蹩脚英文.
>     我想问的是如何在ipxe 的脚本文件中, 动态得到ip地址段的最后一节数值赋值给工作端hostname变量, 比如
> ,最终hostname 是 pc-88 ,最终hostname 是 pc-89.

There is no client side functions to cut variables in ipxe script.
The most commonly used method is to send ip to a server side script
that then returns a script that does the work.

Here is a quickly hacked example: (with no concideration to ipv6 or security)

$ip = $_GET["ip"];
header("Content-Type: text/plain");
echo "#!ipxe\n";
echo "set hostname pc-".substr($ip, strrpos($ip, ".") + 1)."\n";

call this with:
chain http://server/path/getiphostname.php?ip=${ip}
and hostname will be set to pc-(last octet of ipv4)

An alternative to this if you are using dhcp, is to have the dhcp
server define and send hostname if ipxe is the dhcp client.


More information about the ipxe-devel mailing list