Chris, 

I guess you've got two problems:
A) filtering your clients to get them the right options
B) delivering vendor specific options.

more inline...

obsd_m...@chrissmith.org (Chris Smith), 2013.01.01 (Tue) 18:20 (CET):
> On Tue, Jan 1, 2013 at 7:59 AM, MERIGHI Marcus <mcmer-open...@tor.at> wrote:
> > I could not figure out which dhcp option(s) you are referring to. Please
> > specify option number and RFC number.
> >
> > For options with names see:
> > dhcp-options(5) (beeing reworked currently)
> > /usr/src/usr.sbin/dhcpd/tables.c
> >
> > For options without names use e.g. ``option-252''
> >
> >> thereby keeping the created *_ip_tables more
> >
> > Do you mean pf.conf(5) tables here? Or dhcp leases table
> > (/var/db/dhcpd.leases)?
> >
> >> up-to-date. Option space is also good for preventing some of the WPAD
> >> nonsense and assisting in NetBIOS configurations.
> >
> > Could you be more specific, please?
> 
> Hopefully this commented section of dhcpd.conf I normally use will help:
> =============================
> #windoze
> option space windoze;
> option windoze.nbt      code 1 = unsigned integer 32;
> option windoze.release  code 2 = unsigned integer 32;
> option windoze.metric   code 3 = unsigned integer 32;

My guess is your are talking about RFC 2132 Section 8.4 ``Vendor
Specific Information'' (OpenBSD: vendor-encapsulated-options). 
http://msdn.microsoft.com/en-us/library/cc227275.aspx
an example of how to deliver vendor specific:
http://www.bytefusion.com/products/ntm/ptnt/configuring_via_dhcp.htm

Thus I think it can be done, never done it myself. 

> # 1 = enable NetBIOS over TCP
> # 2 = disable NetBIOS over TCP
> option windoze.nbt 1;

I do find some NetBIOS options in RFC 2132, but these have the following
option number codes:

44 NetBIOS over TCP/IP Name Server Option 
   (OpenBSD: netbios-name-servers)
45 NetBIOS over TCP/IP Datagram Distribution Server Option
   (OpenBSD: netbios-dd-server)
46 NetBIOS over TCP/IP Node Type Option
   (OpenBSD: netbios-node-type)
47 NetBIOS over TCP/IP Scope Option
   (OpenBSD: netbios-scope)

Again I think you are talking about vendor specific...

> # 1 = send DHCPRELEASE on shutdown
> option windoze.release 1;

RFC 2131, Section 3.1, paragraph 6.:
6. The client may choose to relinquish its lease on a network address by
sending a DHCPRELEASE message to the server.  The client identifies the
lease to be released with its 'client identifier', or 'chaddr' and
network address in the DHCPRELEASE message. If the client used a 'client
identifier' when it obtained the lease, it MUST use the same 'client
identifier' in the DHCPRELEASE message.

So, you are asking your windoze machines to do what they are supposed to
do anyways?

Again I think you are talking about vendor specific...

> # default route cost metric
> option windoze.metric 1;

Again I think you are talking about vendor specific...

> #/windoze
> option wpad-url code 252 = text;
> option wpad-url "\n\000";
> #option wpad-url "http://192.168.99.123/proxy.pac\n";;

use ``option autoproxy-script'' for that (and see
/usr/src/usr.sbin/dhcpd/tables.c). 
This one works, at least for me.

> if substring (option vendor-class-identifier, 0, 8) = "MSFT 5.0" {
>         vendor-option-space windoze;
>         option netbios-node-type 8;
> }

No such filtering in base dhcpd(8).

> =============================
> Is any of this available in base dhcpd? Maybe I'm just missing it.

I do not think so, dhcpd.conf(5):

``For clients whose addresses will be dynamically assigned, there is
currently no way to group parameter assignments other than by network
topology.''

As far as I know there's only two ways of filtering clients:
- dhcp-client-identifier (dhcp-options(5))
- hardware ethernet (dhcpd.conf(5))

By these you could assign your windoze hosts to a common group
declaration and assign your windoze options. 

Bye, Marcus

Reply via email to