|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adds DHCPINFO functionality to the lua.c32 binary
gettable() returns a table of the BOOTP message fields returned by
the DHCP server for use in a Lua pxeboot script
See http://tools.ietf.org/html/rfc1542
lua key value RFC key
-----------------------------------------------------------------------
opcode op message opcode
hardware.type htype Hardware address type
hardware.length hlen Hardware address length
hops hops Used by relay agents
transaction.id xid transaction id
elapsed.seconds secs Secs elapsed since client boot
flags flags DHCP Flags field
client.ip.addr ciaddr client IP addr
your.ip.addr yiaddr 'Your' IP addr. (from server)
server.ip.addr siaddr Boot server IP addr
gateway.ip.addr giaddr Relay agent IP addr
client.mac chaddr Client hardware addr
server.hostname sname Optl. boot server hostname
boot.file file boot file name (ascii path)
magic.cookie cookie Magic cookie
getoptions() returns a table of the DHCP Options field of the BOOTP
message returned by the DHCP server for use in a Lua pxeboot script.
Many of the options are reurned formatted in as strings in a
standard,
recognizable format, such as IP addresses.
1, 2, and 4 byte numerical options are returned as integers.
Other Options with non-standard formats are returned as strings of
the
raw binary number that was returned by the DHCP server and must be
decoded in a Lua script
The Options table returns the Option code as the key except where
there
are multiple values returned. In those cases, an extra key increment
number
is added to allow individual access to each Option value.
lua key value value Name
-----------------------------------------------------------------------
1 Subnet Mask
6.1 DNS Server [element 1]
6.2 DNS Server [element 2]
6.3 DNS Server [element 3]
209 PXE Configuration File
21.1 Policy Filter [element 1]
21.2 Policy Filter [element 2]
Options that can have a list of values, but contain only one (like
Option 6)
will not return with .sub key values.
Usage:
t = dhcp.gettable()
for k,v in pairs(t) do
print(k.." : "..v)
end
|