I am getting this error on two modems out of just over 100. The modem picks up an IP, but the CPE can't get one. I've talked to one of the customers and she says she had a router hooked up at first, but switched over to her computer. We've power cycled to modem several times, but the problem persists.
Does this sound like an issue with the DHCP config or is the modem not releasing it's CM cache?
Here is my dhcp and modem configs:
dhcp:
class "cm" {
match if substring(option vendor-class-identifier,0,6) = "docsis";
spawn with option agent.remote-id;
}
##### CM Pool ######################################
subnet 172.16.16.0 netmask 255.255.248.0 {
pool{
range 172.16.16.11 172.16.20.0;
option domain-name-servers 12.127.16.68,12.127.16.67;
option routers 172.16.16.10;
option tftp-server-name "172.16.16.7";
next-server 172.16.16.7;
server-name "172.16.16.7";
option broadcast-address 172.16.23.255;
default-lease-time 86400;
max-lease-time 86400;
option time-offset -25200;
option time-servers 172.16.16.7;
# allow members of "cm";
# deny unknown-clients;
filename "gold.bin";
option bootfile-name "gold.bin";
}
}
##### CPE Pool ######################################
subnet 172.20.16.0 netmask 255.255.248.0 {
pool{
range 172.20.16.11 172.20.20.0;
option domain-name-servers 12.127.16.68,12.127.16.67;
option routers 172.20.16.10;
option broadcast-address 172.20.23.255;
default-lease-time 86400;
max-lease-time 86400;
# deny members of "cm";
}
}
group "gold" {
filename "gold.bin";
option bootfile-name "gold.bin";
I don't have provisioning in place yet, hence the commented out parts.
modem config:
Main {
NetworkAccess 1;
MaxCPE 1;
ClassOfService {
ClassID 1;
MaxRateDown 800000;
MaxRateUp 800000;
PrivacyEnable 0;
}
}
Seeing that it's friday afternoon, I had to punt to get it to work. I remade the config file and bumped the maxCPE to 4 and it handed out the lease. I still want to limit it to 1 CPE though.
How does the CMTS determine whether to assign a new lease? Does it check the DHCP server's lease table to see if a CM already has an CPE lease or is all of that internally cached?
Check the modem mac table to see if it's seeing more than 1 device, like a situation where USB is hooked up AND ethernet, or if the subscriber didn't actually power cycle the modem, etc. As for the leases, the PC will have a different mac address than the subscribers router, so switching it will look like any other new device and get a new lease from the DHCP server. The only thing that should prevent that from working is the max-hosts setup in the modem config. Rebooting the modem clears that table. Your modem config looks correct, so you really should poll the modem to make sure it's not seeing more than 1 CPE address.
i was on the phone with a tech at the customer's apt to diagnose it. I made sure the computer was the only connection to the modem and power cycled it half a dozen times. I did poll the modem, but I don't have the results in front of me... I'll have to check them on monday. We didn't power down the modem and let it sit for a few minutes...more like 10 seconds. Is it possible that the modem wasn't dropping it's cache during the brief power down?
Ya know, I don't know what I was thinking. I just looked the subject line of your original post again and realized you were talking about an message seen from the DHCP server - not a modem host table issue. I didn't notice that the first time around; sorry :( I had only read the text of the message about not being able to switch equipment.
Anyway, it appears that you have dhcpd set up to only permit 1 lease per modem. That's enforced on the server side. Cablemodem configs also have a max-hosts section that can be configured; that's where many ISP control the 1 host restriction -- not on the DHCP server. If you restrict it on the DHCP server, a lease that was given to CPE behind a modem would have to expire before the user could get one for another host. Basically, if you plug in your router & get a xx hour lease, you can't switch to your PC until you've unplugged the router and waited for its lease to expire on the server.
You can set up something like a 5 address lease limit on the dhcp server and 1 host max in the modem config file. That will give you the behavior you want (1 host max, but being able to switch gear & power cycle the modem to clear the table), and will protect the DHCP server from abuse by someone asking for too many addresses in a short period of time.
that makes sense, but it kind of doesn't.
The DHCP.conf I posted at the top is the config I'm using and I haven't set any options to restrict the number of CPE's. I'm not even aware of how to do that through a DHCP conf file. Now there is an option in my CMTS to limit the max number of CPE's. That was set to 1 until I started having issues...then I switched it to 2 (with no effect). I wonder if I have to reboot for the change to take hold.
Anyway, what doesn't make sense to me is that I "solved" the issue by altering the cm config file to allow 4 CPE's. Once the customer's modem took that new file, it allowed her new computer to get an IP. To me, that indicates the modem not clearing the cache. I would also think that if it were an issue with the server, more then just 1 or 2 people would be having a problem...especialy since I know of a handfull of people that we isolated connection issued with by bypassing their router.
I'm probably not familiar with the CMTS you're using (never seen the error before), but it sounds like it's doing host auth or dhcp lease tracking of some type. Solution is probably the same. Set that to more than one, and set the modem config file to 1. On my system (moto) I can check hosts the the CMTS believes are associated with a modem with a "show cable modem xx.xx.xx hosts" or "sho cab mod xx.xxx.xx cpe". If the CMTS is tracking an old host, there may be a "clear" command to work around that and allow someone to swap their equipment.