Send dhcp-users mailing list submissions to
        dhcp-users@lists.isc.org

To subscribe or unsubscribe via the World Wide Web, visit
        https://lists.isc.org/mailman/listinfo/dhcp-users
or, via email, send a message with subject or body 'help' to
        dhcp-users-requ...@lists.isc.org

You can reach the person managing the list at
        dhcp-users-ow...@lists.isc.org

When replying, please edit your Subject line so it is more specific
than "Re: Contents of dhcp-users digest..."


Today's Topics:

   1. Re: To have various IP ranges in the same subnet and assign
      the IP Address depending of the device type that sends the
      request. (Juan Antonio Garc?a Moreno)
   2. Re: To have various IP ranges in the same subnet and assign
      the IP Address depending of the device type that sends the
      request. (Bill Shirley)


----------------------------------------------------------------------

Message: 1
Date: Wed, 7 Aug 2019 14:42:42 +0200
From: Juan Antonio Garc?a Moreno <jagar...@emergya.com>
To: Users of ISC DHCP <dhcp-users@lists.isc.org>
Subject: Re: To have various IP ranges in the same subnet and assign
        the IP Address depending of the device type that sends the request.
Message-ID:
        <cajbovpgqo_fmty-wqjqy+unzoog1ncb9fsuz1gn-w+tn_nr...@mail.gmail.com>
Content-Type: text/plain; charset="utf-8"

Hi Simon,

Too much thanks by your anotation about the Hosts Declarations. I will keep
them in mind and I will change it.

About the Hosts Classifications, I have tested this and works for me:

------------------------------------------------------------------------------
class "smartphones" {
  match if substring(option vendor-class-identifier,0,13) = "android-dhcp-"
or
           substring(option vendor-class-identifier,0,7) = "HUAWEI:" or
           substring(option vendor-class-identifier,0,7) = "dhcpcd-";
}
------------------------------------------------------------------------------

That is the same that this:

------------------------------------------------------------------------------
class "smartphones" {
  match option vendor-class-identifier;
}

subclass "smartphones" "android-dhcp-9"
subclass "smartphones" "android-dhcp-8.1.0"
subclass "smartphones" "android-dhcp-7.0"
subclass "smartphones" "HUAWEI:android:FIG-L11"
subclass "smartphones" "HUAWEI:android:QC_Reference_Phone"
subclass "smartphones" "dhcpcd-5.5.6"
------------------------------------------------------------------------------

And I can change it to:

------------------------------------------------------------------------------
class "smartphones" {
  match option vendor-class-identifier;
}

include smartphones.cfg

* smartphones.cfg file containing the subclass lines.
------------------------------------------------------------------------------

But, is there any way to minimize the number of lines to include in the
smartphones.cfg file using some kind of wildcard or expression/function
like "substring()" used in the Class Declaration?

Another question:

The iPhones and the iPads not send the "vendor-class-identifier" option in
the DHCP Discover Packet.

Could I classify iPhones and iPads taking into account some other parameter
of the DHCP Discover Packet?


Best regards



El lun., 5 ago. 2019 a las 19:35, Simon Hobson (<dh...@thehobsons.co.uk>)
escribi?:

> Juan Antonio Garc?a Moreno <jagar...@emergya.com> wrote:
>
> > I relly have some hosts declarations, but I don't have put these in the
> post.
>
> Ah yes, about that ... see below !
>
> > subnet 10.53.0.0 netmask 255.255.0.0 {
> >
> >   default-lease-time 86400;
> >   max-lease-time 172800;
> >
> >   option broadcast-address 10.53.255.255;
> >   option routers 10.53.1.1;
> >
> >   # Unknown Clients Range.
> >   pool {
> >     deny members of "smartphones";
> >     range 10.53.33.1 10.53.35.254;
> >   }
> >
> >   # Smartphones Range.
> >   pool {
> >     allow members of "smartphones";
> >     range 10.53.10.2 10.53.11.254;
> >   }
> >
> >   host PC-01 {
> >     hardware ethernet ff:ff:ff:ff:ff:01;
> >     fixed-address 10.53.100.5;
> >   }
> >
> >   host PC-02 {
> >     hardware ethernet ff:ff:ff:ff:ff:02;
> >     fixed-address 10.53.100.6;
> >   }
> >
> > }
>
> That is another common mistake. Host declarations are always global in
> scope even though you might think that putting them inside a subnet
> declaration would tie them to that subnet. So even though declared inside
> one subnet, they will be "known" in any subnet - which in itself can cause
> considerable confusion.
> But what really makes life "interesting" (see
> https://en.wikipedia.org/wiki/May_you_live_in_interesting_times) is that
> should a host be connected to a different network, it will inherit option
> values from the subnet where it is defined. Thus you find yourself with a
> client that's been given an address by DHCP, but the gateway address it's
> been given is in a completely different subnet !
>
>
> > And too, howto fill a text file with the "vendor-class-identifier" of
> the smartphones and include in the DHCP Server config to match the
> smartphones devices too.
>
> It's a simple scripting exercise to take a text file containing one string
> per line, and build a config file snippet. You can then use an include
> statement to incorporate that config snippet into the daemon config.
>
> _______________________________________________
> dhcp-users mailing list
> dhcp-users@lists.isc.org
> https://lists.isc.org/mailman/listinfo/dhcp-users
>


-- 
[image: EMERGYA] <http://www.emergya.com/>
*Juan Garc?a*

*Dto. de Soporte Interno*

*EMERGYA INGENIER?A*

*m:* +34 954 517 577

*p:* +34 954 517 577
*e:* jagar...@emergya.com
[image: linkedin icon] <https://www.linkedin.com/company/emergya>  [image:
facebook icon] <https://www.facebook.com/Emergya>  [image: twitter icon]
<https://twitter.com/emergya>  [image: youtube icon]
<https://www.youtube.com/channel/UCU0ISPwk1pcOWwjpX63gN_A>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: 
<https://lists.isc.org/pipermail/dhcp-users/attachments/20190807/4cd7b43e/attachment-0001.html>

------------------------------

Message: 2
Date: Thu, 8 Aug 2019 01:50:01 -0400
From: Bill Shirley <b...@c3po.polymerindustries.biz>
To: dhcp-users@lists.isc.org
Subject: Re: To have various IP ranges in the same subnet and assign
        the IP Address depending of the device type that sends the request.
Message-ID:
        <ab28a5d4-7dae-3a46-1e80-ae573d720...@c3po.polymerindustries.biz>
Content-Type: text/plain; charset="utf-8"; Format="flowed"

Here's a couple of classes you might find useful:
class "mobile_device" {
 ??? match if (
 ??? ??? option vendor-class-identifier ~~ "android"
 ??? ??? or option host-name ~~ "android"
 ??? ??? or option host-name ~~ "iphone"
 ??? ??? or option host-name ~~ "samsung-"
 ??? ??? or option host-name ~~ "galaxy"
 ??? ??? or option host-name ~~ "ipod"
 ??? ??? or option host-name ~~ "ipad"
 ??? ??? or option host-name ~~ "watch"
 ??? ??? or option host-name ~~ "nintendo 3ds"
 ??? );
}
class "Microsoft" {
 ??? match if substring(option vendor-class-identifier, 0, 4) = "MSFT";
 ??? set member_of = "Microsoft";
}
The first class uses the regexp operator ~~ (case insensitive).? There is also 
the
case sensitive operator ~=.

On the subject of implicit deny for a pool with only "allow members":
I classify most of my devices (i.e. Panasonic, Ricoh, Canon, Linux, Microsoft) 
to assign
them to a specific pool (i.e Printers, Linux, Microsoft, mobile_device).? Then 
I have an
"uncategorized" pool for those devices that aren't in a currently defined class 
so that they
will get an address.? If later I change a class to include a device (say 
Epson), that device
will request its previous address on renew and *will get it* if my 
"uncategorized" pool doesn't
have a 'deny members of "Epson"' configuration line.

TL;DR - If a device requests a renewal of an address and there is no "deny 
members" for
the pool, it will be granted.

dhcp-server-4.3.6-10.fc27.x86_64

Bill

On 8/7/2019 8:42 AM, Juan Antonio Garc?a Moreno wrote:
> Hi Simon,
>
> Too much thanks by your anotation about the Hosts Declarations. I will keep 
> them in mind and I will change it.
>
> About the Hosts Classifications, I have tested this and works for me:
>
> ------------------------------------------------------------------------------
> class "smartphones" {
> ? match if substring(option vendor-class-identifier,0,13) = "android-dhcp-" or
> ? ? ? ? ? ?substring(option vendor-class-identifier,0,7) = "HUAWEI:" or
> ? ? ? ? ? ?substring(option vendor-class-identifier,0,7) = "dhcpcd-";
> }
> ------------------------------------------------------------------------------
>
> That is the same that this:
>
> ------------------------------------------------------------------------------
> class "smartphones" {
> ? match option vendor-class-identifier;
> }
>
> subclass "smartphones" "android-dhcp-9"
> subclass "smartphones" "android-dhcp-8.1.0"
> subclass "smartphones" "android-dhcp-7.0"
> subclass "smartphones" "HUAWEI:android:FIG-L11"
> subclass "smartphones" "HUAWEI:android:QC_Reference_Phone"
> subclass "smartphones" "dhcpcd-5.5.6"
> ------------------------------------------------------------------------------
>
> And I can change it to:
>
> ------------------------------------------------------------------------------
> class "smartphones" {
> ? match option vendor-class-identifier;
> }
>
> include smartphones.cfg
>
> * smartphones.cfg file containing the subclass lines.
> ------------------------------------------------------------------------------
>
> But, is there any way to minimize the number of lines to include in the 
> smartphones.cfg file using some kind of wildcard or 
> expression/function like "substring()" used in the Class Declaration?
>
> Another question:
>
> The iPhones and the iPads not send the "vendor-class-identifier" option in 
> the DHCP Discover Packet.
>
> Could I classify iPhones and iPads taking into account some other parameter 
> of the DHCP Discover Packet?
>
>
> Best regards
>
>
>
> El lun., 5 ago. 2019 a las 19:35, Simon Hobson (<dh...@thehobsons.co.uk 
> <mailto:dh...@thehobsons.co.uk>>) escribi?:
>
>     Juan Antonio Garc?a Moreno <jagar...@emergya.com 
> <mailto:jagar...@emergya.com>> wrote:
>
>     > I relly have some hosts declarations, but I don't have put these in the 
> post.
>
>     Ah yes, about that ... see below !
>
>     > subnet 10.53.0.0 netmask 255.255.0.0 {
>     >
>     >? ?default-lease-time 86400;
>     >? ?max-lease-time 172800;
>     >
>     >? ?option broadcast-address 10.53.255.255;
>     >? ?option routers 10.53.1.1;
>     >
>     >? ?# Unknown Clients Range.
>     >? ?pool {
>     >? ? ?deny members of "smartphones";
>     >? ? ?range 10.53.33.1 10.53.35.254;
>     >? ?}
>     >
>     >? ?# Smartphones Range.
>     >? ?pool {
>     >? ? ?allow members of "smartphones";
>     >? ? ?range 10.53.10.2 10.53.11.254;
>     >? ?}
>     >
>     >? ?host PC-01 {
>     >? ? ?hardware ethernet ff:ff:ff:ff:ff:01;
>     >? ? ?fixed-address 10.53.100.5;
>     >? ?}
>     >
>     >? ?host PC-02 {
>     >? ? ?hardware ethernet ff:ff:ff:ff:ff:02;
>     >? ? ?fixed-address 10.53.100.6;
>     >? ?}
>     >
>     > }
>
>     That is another common mistake. Host declarations are always global in 
> scope even though you might think that putting them
>     inside a subnet declaration would tie them to that subnet. So even though 
> declared inside one subnet, they will be "known"
>     in any subnet - which in itself can cause considerable confusion.
>     But what really makes life "interesting" (see 
> https://en.wikipedia.org/wiki/May_you_live_in_interesting_times) is that
>     should a host be connected to a different network, it will inherit option 
> values from the subnet where it is defined. Thus
>     you find yourself with a client that's been given an address by DHCP, but 
> the gateway address it's been given is in a
>     completely different subnet !
>
>
>     > And too, howto fill a text file with the "vendor-class-identifier" of 
> the smartphones and include in the DHCP Server
>     config to match the smartphones devices too.
>
>     It's a simple scripting exercise to take a text file containing one 
> string per line, and build a config file snippet. You
>     can then use an include statement to incorporate that config snippet into 
> the daemon config.
>
>     _______________________________________________
>     dhcp-users mailing list
>     dhcp-users@lists.isc.org <mailto:dhcp-users@lists.isc.org>
>     https://lists.isc.org/mailman/listinfo/dhcp-users
>
>
>
> -- 
> EMERGYA <http://www.emergya.com/>
> *Juan Garc?a*
> *Dto. de Soporte Interno*
> *EMERGYA INGENIER?A*
> *m:*?+34 954 517 577
> *p:*?+34 954 517 577
> *e:*jagar...@emergya.com <mailto:jagar...@emergya.com>
> linkedin icon <https://www.linkedin.com/company/emergya> facebook icon 
> <https://www.facebook.com/Emergya> twitter icon 
> <https://twitter.com/emergya>youtube icon 
> <https://www.youtube.com/channel/UCU0ISPwk1pcOWwjpX63gN_A>
>
>
> _______________________________________________
> dhcp-users mailing list
> dhcp-users@lists.isc.org
> https://lists.isc.org/mailman/listinfo/dhcp-users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: 
<https://lists.isc.org/pipermail/dhcp-users/attachments/20190808/1d242c1e/attachment.html>

------------------------------

Subject: Digest Footer

_______________________________________________
dhcp-users mailing list
dhcp-users@lists.isc.org
https://lists.isc.org/mailman/listinfo/dhcp-users


------------------------------

End of dhcp-users Digest, Vol 130, Issue 7
******************************************

Reply via email to