Good advice in general.However, depending on how crafty the users are ideally you would need to use a switch with DHCP-snooping and ARP inspection to prevent them from changing MAC or configuring static IP's to work around the limitations on the dynamically allocated ones.Another solution would be to used a separate VLAN and apply limits on the entire subnet.
Don't current iOS mobile devices randomize MAC addresses to prevent tracking? It can be disabled by the user for home networks, but then can also be re-enabled by the user. No idea about android...guessing same.