The IP addresses for the devices are allocated by the router not the carrier. You may want to check the configuration file on the D-link (probably 18.104.22.168 -- depending on the specs) and see how many addresses it can allocate. With 10 devices, you may want to double the number of IP addresses it is capable of (for spares). The CAT5 ones will probably be xxx.xx.xx.2, xxx.xx.xx.4, xxx.xx.xx.6, etc.) so you may want to add enough address capability above the top number now.
A few ideas:
- Often the power on sequence is the determining factor in if/how DHCP will work. Especially when it comes to consumer-grade cable modems and routers. Try different power on sequences.
- Try to figure out if your cable modem is storing and enforcing the MAC address of one of your devices. Take the router out of the picture, attach your MBP, and see if it works. Then leave the modem on, unhook the MBP, and plug in a Windows laptop. If it doesn't work, then your modem wants/needs to only see one MAC address. If this is the case, look in your routers settings for "Spoof this computer's MAC Address" and you should be good to go.
- One trick I've used in the past is to assign an entirely new subnet for the router to hand out. For example if it used to give out 192.168.1.x, the new subnet would be set to 10.1.1.x. This forces every system and rebuild its caches. Too many times routers, controllers, OSes, apps, and even hardware like phones keep caches to help speed things up. It's not always obvious how to reset these. But by switching subnets you force every device to rebuild the caches.