Вообще появление двух одинаковых мак адресов на разных порта в пределах одного широковещательного домена - это коллизия для ethernet (вызванная ошибкой конфигурирования или петлёй).
В вашем случае, насколько я понял, вы пытаетесь каждую выдачу адреса сразу приколотить в DHCP, что странно само по-себе, зачем вам это? Если ради безопасности - переведите DHCP в режим static only, если ради устранения этих самых коллизий - то DHCP вам тут не помощник (вам управляемая сеть нужна), если ради сохранения IP адресов - бросьте эту затею используйте связку DHCP (в name protected режиме) + DNS, если ради биллинга - тоже странный способ считать трафик - используйте vlan или pptp на худой конец (если сеть не управляемая. Что вроде в вашем случае так и есть).
Расскажите проблему, которую пытаетесь решить таким подходом (и речь не про неработающий скрипт).