odd issue with defining a vendor code (3.0.3 and 3.0.4)

Glenn Satchell Glenn.Satchell at uniq.com.au
Thu May 11 18:18:09 UTC 2006


>Date: Thu, 11 May 2006 11:38:33 -0400
>From: <amy.rich at tufts.edu>
>To: dhcp-users at isc.org
>Subject: odd issue with defining a vendor code (3.0.3 and 3.0.4)
>
>Greetings, I've been trying to get ISC dhcpd to work with Solaris 9
>jumpstart.  Following various documents, I've come up with a mostly workable
>dhcpd.conf file, but I'm having an odd issue with one of the codes.
>
>Here's are the important bits from the file:
>
># Jumpstart Support
>option space SUNW;
>option SUNW.root-mount-options code 1 = text;
>option SUNW.root-server-ip-address code 2 = ip-address;
>option SUNW.root-server-hostname code 3 = text;
>option SUNW.root-path-name code 4 = text;
>option SUNW.swap-server-ip-address code 5 = ip-address;
>option SUNW.swap-file-path code 6 = text;
>option SUNW.boot-file-path code 7 = text;
>option SUNW.posix-timezone-string code 8 = text;
>option SUNW.boot-read-size code 9 = unsigned integer 16;
>option SUNW.install-server-ip-address code 10 = ip-address;
>option SUNW.install-server-hostname code 11 = text;
>option SUNW.install-path code 12 = text;
>option SUNW.sysid-config-file-server code 13 = text;
>option SUNW.jumpstart-server code 14 = text;
>option SUNW.terminal-name code 15 = text;
>option SUNW.boot-uri code 16 = text;
>option SUNW.http-proxy code 17 = text;
>
>
>group {
>  filename "inetboot.SUN4U.Solaris_9-1";
>  vendor-option-space SUNW;
>  option SUNW.sysid-config-file-server 
"192.168.1.252:/inst/jumpstart/sysidcfg/SunOS-5.9";
>  option SUNW.install-path "/inst/cdrom/SunOS-5.9-sparc";
>  option SUNW.root-path-name 
"/inst/cdrom/SunOS-5.9-sparc/Solaris_9/Tools/Boot";
>  option SUNW.root-mount-options "rsize=32768";
>  option SUNW.install-server-hostname "jsserver.my.sub.domain";
>  option SUNW.install-server-ip-address 192.168.1.252;
>  option SUNW.root-server-hostname "jsserver.my.sub.domain";
>  option SUNW.jumpstart-server "192.168.1.252:/inst/jumpstart";
>  option SUNW.root-server-ip-address 192.168.1.252;
>  option SUNW.terminal-name "vt100";
>  next-server 192.168.1.252;
>
>
>  # solaris 9 sparc hosts
>  host client {
>    hardware ethernet xx:xx:xx:xx:xx:xx;
>    fixed-address 192.168.1.99;
>    option host-name "client.other.sub.domain";
>  }
>}
>
>And from /etc/dhcp/inittab on the jumpstart/dhcp server:
>
>#
># SunOS vendor space -- see Solaris System Administrator Collection,
># Sys Admin Guide, Vol 3, "Creating DHCP Options and Macros for
># Solaris Install Parameters" for more information on these options.
>#
>
>SrootOpt        VENDOR,         1,      ASCII,     1,   0,      smi
>SrootIP4        VENDOR,         2,      IP,        1,   1,      smi
>SrootNM         VENDOR,         3,      ASCII,     1,   0,      smi
>SrootPTH        VENDOR,         4,      ASCII,     1,   0,      smi
>SswapIP4        VENDOR,         5,      IP,        1,   1,      smi
>SswapPTH        VENDOR,         6,      ASCII,     1,   0,      smi
>SbootFIL        VENDOR,         7,      ASCII,     1,   0,      smi
>Stz             VENDOR,         8,      ASCII,     1,   0,      smi
>SbootRS         VENDOR,         9,      UNUMBER16, 1,   1,      smi
>SinstIP4        VENDOR,         10,     IP,        1,   1,      smi
>SinstNM         VENDOR,         11,     ASCII,     1,   0,      smi
>SinstPTH        VENDOR,         12,     ASCII,     1,   0,      smi
>SsysidCF        VENDOR,         13,     ASCII,     1,   0,      smi
>SjumpsCF        VENDOR,         14,     ASCII,     1,   0,      smi
>Sterm           VENDOR,         15,     ASCII,     1,   0,      smi
>SbootURI        VENDOR,         16,     ASCII,     1,   0,      smi
>SHTTPproxy      VENDOR,         17,     ASCII,     1,   0,      smi
>
>
>The problem is with code 14.  For some reason, when I put a : in the text
>string, it ignores the value.  I'm not certain if this is the fault of the
>server (I've tried both 3.0.3 and 3.0.4) or the Sun's dhcp client.  The text
>for code 13 seems to like the colon just fine, though, so this issue is very
>weird, indeed.
>
>Here's the dhcpinfo output from the client (after dhcp booting it into single
>users mode from the network):
>
>for i in SrootOpt SrootIP4 SrootNM SbootFIL SrootPTH SbootRS SinstIP4 SinstNM
>SinstPTH SsysidCF SjumpsCF SbootURI SHTTPproxy; do
>> echo $i; /sbin/dhcpinfo $i
>> done
>SrootOpt
>rsize=32768
>SrootIP4
>192.168.1.252
>SrootNM
>jsserver.my.sub.domain
>SbootFIL
>SrootPTH
>/inst/cdrom/SunOS-5.9-sparc/Solaris_9/Tools/Boot
>SbootRS
>SinstIP4
>192.168.1.252
>SinstNM
>jsserver.my.sub.domain
>SinstPTH
>/inst/cdrom/SunOS-5.9-sparc
>SsysidCF
>192.168.1.252:/inst/jumpstart/sysidcfg/SunOS-5.9
>SjumpsCF
>
>
>Is anyone else experiencing this issue (and/or can reproduce it)?  Is there
>further debugging I can turn on on the server to determine if it's failing
>there (-d isn't very useful in printing out what options it's passing the
>client)?
>
>Thanks..
>
Hmm, looks ok. I wonder of you might be running out of option space in
the dhcp packets? You could test this by commenting out one or two of
the options, booting the client in single user mode again and seeing if
option 14 is set.

The simplest way is to look at the traffic on the wire using something
like:

  snoop -v port 67 or port 68

This will decode the options in the packet for you. Or you can save the
snoop to a file (snoop -o file) and then load this file into ethereal
to view/analyse it.

regards,
-glenn



More information about the dhcp-users mailing list