cannot change ip address in pool (fixed question)

Jan nowak docsis11 at gmail.com
Thu Sep 13 08:22:05 UTC 2012


thanks for fast reply. You scared the hell out of me. I have 1k users in
this config and every record have same pattern, all of this lines are in
shared netowrk

#######################################################################################
host m69 { hardware ethernet 00:0a:73:f9:e6:3a; fixed-address 172.16.10.69;
filename "file.cm";}
class "M069" { match if binary-to-ascii(16, 8, ":", option agent.remote-id)
= "0:a:73:f9:e6:3a"; spawn with option agent.remote-id; lease limit 1;}
pool { allow members of "M069"; range 172.16.20.69; }

host m70 { hardware ethernet 00:0a:73:f9:e6:31; fixed-address 172.16.10.70;
filename "file.cm";}
class "M070" { match if binary-to-ascii(16, 8, ":", option agent.remote-id)
= "0:a:73:f9:e6:31"; spawn with option agent.remote-id; lease limit 1;}
pool { allow members of "M070"; range 172.16.20.70; }

host m71 { hardware ethernet 00:0a:73:f9:e6:32; fixed-address 172.16.10.71;
filename "file.cm";}
class "M071" { match if binary-to-ascii(16, 8, ":", option agent.remote-id)
= "0:a:73:f9:e6:32"; spawn with option agent.remote-id; lease limit 1;}
pool { allow members of "M071"; range 172.16.20.71; }

host m72... etc
##########################################################################################
and it would be very diffucult to rewrite it. In this pattern every modem
should have only one CPE device connected, so pool provides only one ip
address. As you can see the class and poll fields aren't between host
braces, they're independent of each other.
So what should i do now, should i rewrite entire config file ?

kind regards,
Jan

2012/9/13 Simon Hobson <dhcp1 at thehobsons.co.uk>

> Jan nowak top-posted:
>
>
>  Sep 13 07:32:35 debian dhcpd: ICMP Echo reply while lease 172.16.20.203
>> valid.
>> Sep 13 07:32:35 debian dhcpd: ICMP Echo reply while lease 172.16.20.203
>> valid.
>> Sep 13 07:32:35 debian dhcpd: ICMP Echo reply while lease 172.16.20.203
>> valid.
>> Sep 13 07:32:35 debian dhcpd: ICMP Echo reply while lease 172.16.20.203
>> valid.
>> Sep 13 07:32:37 debian dhcpd: Reclaiming abandoned lease 172.16.20.203.
>> Sep 13 07:32:37 debian dhcpd: Reclaiming abandoned lease 172.16.20.203.
>> Sep 13 07:32:37 debian dhcpd: Reclaiming abandoned lease 172.16.20.203.
>> Sep 13 07:32:37 debian dhcpd: Reclaiming abandoned lease 172.16.20.203.
>>
>
> Not seen that first message before, but basically it means the server has
> pinged the address and got a reply - when it shouldn't have. So it's marked
> the lease as abandoned - abandoned leases are only used as last resort if
> nothing else is available.
>
> But this is a different address to the one of interest ...
>
>
>  Sep 13 07:32:41 debian dhcpd: data: "leased-address" configuration
>> directive: there is no lease associated with this client.
>>
>
> That would be correct - the lease has been abandoned and there's nothing
> leased to the client.
>
>
>  Sep 13 07:32:58 debian dhcpd: DHCPDISCOVER from 00:14:5e:7f:35:3c via
>> eth0: network xxx: no free leases
>>
>
>
>
>  Sep 13 07:32:58 debian dhcpd: DHCPDISCOVER from 00:14:5e:7f:35:3c via
>> eth0: network xxx: no free leases
>>
>
> This is what you expect to see when using restricted lease ranges and old
> leases are still active. There isn't anything for the server to assign to
> the client. Again, this isn't the client (MAC) in the config snippet.
>
> It's not that helpful to see this unrelated log extract. If it's a network
> with too much DHCP traffic to extract only the relevant entries, then you
> probably need to either temporarily disable DHCP service for all but one
> client, or setup a test environment with only the one client.
>
>
>  shared-network xxx{
>>
>> subnet 172.16.0.0 netmask 255.255.0.0 {
>> next-server 192.168.0.1;
>> option domain-name-servers 217.30.129.149, 217.30.137.200;
>> option routers 172.16.0.1;
>> option subnet-mask 255.255.0.0;
>> option broadcast-address 172.16.255.255;
>> }
>>
>
> Could I suggest better formatting would be a good idea ? Something like
> this would make the nesting more readily viewable :
>
>
> shared-network xxx{
>
>   subnet 172.16.0.0 netmask 255.255.0.0 {
>     next-server 192.168.0.1;
>     option domain-name-servers 217.30.129.149, 217.30.137.200;
>     option routers 172.16.0.1;
>     option subnet-mask 255.255.0.0;
>     option broadcast-address 172.16.255.255;
>   }
>
>   subnet ...
>
> This is especially true when we get to your host statements.
>
>
>  ##############################**###########
>> host m69 { hardware ethernet 00:0a:73:f9:e6:3a; fixed-address
>> 172.16.10.69; filename "<http://plik.cm>plik.cm";}
>>
>> class "M069" { match if binary-to-ascii(16, 8, ":", option
>> agent.remote-id) = "0:a:73:f9:e6:3a"; spawn with option agent.remote-id;
>> lease limit 1;}
>> pool { allow members of "M069"; range 172.16.20.69; }
>> ##############################**################
>> }
>>
>
> Not only is this hard to read, it's mixing scopes as well.
>
>
> host m69 {
>   hardware ethernet 00:0a:73:f9:e6:3a;
>   fixed-address 172.16.10.69;
>   filename "plik.cm";}
>   class "M069" {
>     match if binary-to-ascii(16, 8, ":", option agent.remote-id) =
> "0:a:73:f9:e6:3a";
>     spawn with option agent.remote-id; lease limit 1;
>   }
>   pool {
>     allow members of "M069";
>     range 172.16.20.69;
>   }
> }
>
> So what *exactly* are you trying to achieve with this ?
> You've correctly put the host statement in the global scope, but then
> you've defined a class and pool within it.
> I'm not sure about the class (do these need to be in the global scope ?),
> but the pool really belongs within the subnet.
>
> And there should be no need to have both the class/pool AND a fixed
> address - either one or the other. So either :
>
>
> host m69 {
>   hardware ethernet 00:0a:73:f9:e6:3a;
>   fixed-address 172.16.10.69;
>   filename "plik.cm";}
> }
>
> or :
>
> class "M069" {
>
>   match if option agent.remote-id) = 0:a:73:f9:e6:3a;
>   spawn with option agent.remote-id; lease limit 1;
> }
> and
>
>   subnet 172.16.0.0 netmask 255.255.0.0 {
>     next-server 192.168.0.1;
>     option domain-name-servers 217.30.129.149, 217.30.137.200;
>     option routers 172.16.0.1;
>     option subnet-mask 255.255.0.0;
>     option broadcast-address 172.16.255.255;
>     pool {
>       allow members of "M069";
>       range 172.16.20.69;
>     }
>   }
>
> Ahh, now I've split that up, it becomes clearer. 172.16.10.69 is for the
> device with MAC address 00:0a:73:f9:e6:3a and 172.16.20.69 is for the
> downstream device.
> As you've defined it, I don't think the class would be matched because the
> definition (and pool statement) are within a host statement that will not
> apply to the downstream client.
> By definition, the downstream client will not be the host with MAC address
> 0:a:73:f9:e6:3a, so the host statement will not be matches, and nothing
> inside it will be acted upon.
>
> --
> Simon Hobson
>
> Visit http://www.**magpiesnestpublishing.co.uk/<http://www.magpiesnestpublishing.co.uk/>for books by acclaimed
> author Gladys Hobson. Novels - poetry - short stories - ideal as
> Christmas stocking fillers. Some available as e-books.
>
> ______________________________**_________________
> dhcp-users mailing list
> dhcp-users at lists.isc.org
> https://lists.isc.org/mailman/**listinfo/dhcp-users<https://lists.isc.org/mailman/listinfo/dhcp-users>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.isc.org/pipermail/dhcp-users/attachments/20120913/bd766ea4/attachment.html>


More information about the dhcp-users mailing list