Eu tive que "consertar" a mesma situação em uma de nossas plantas de produção há cerca de 6 anos.
Eu tenho que dizer aos engenheiros de produção que eles eram idiotas :-).
Em sua defesa: este foi o primeiro produto de rede de todos os tempos, e a R & D não tinha pensado exatamente sobre as ramificações da produção.
Não havia maneira de contornar isso (e ainda não é agora).
Cada dispositivo teve que ser ligado individualmente a um PC para reconfigurar o MAC.
(Mais tarde descobrimos que precisávamos fazer isso de qualquer maneira, porque depois que algumas correções de bugs eram feitas pela R & D, cada dispositivo precisava de um novo firmware para ser mostrado também.)
Em séries posteriores, os desenvolvedores tornaram o processo o mais simples possível: O firmware padrão tem um gerenciador de inicialização básico muito básico que inicializa uma pilha TCP / IP com um endereço IP fixo codificado. Isso iniciaria e tentaria TFTP a imagem completa do firmware de outro endereço IP codificado. Quando feito, um segundo arquivo contendo o MAC exclusivo seria retirado do servidor TFTP e enviado para o dispositivo. Depois disso, a reinicialização do dispositivo, surge com a imagem flash completa que faz o DHCP para o seu endereço IP. Quando o endereço dhcp é adquirido, ele faz o upload de um pequeno arquivo com seu próprio mac-addres para o servidor TFTP como confirmação de que foi feito.
O PC que controla isso executa um servidor DHCP e um servidor TFTP. E um aplicativo de controle que prepara o arquivo com o endereço MAC.
Depois que o dispositivo carregou com êxito o seu arquivo de confirmação, o aplicativo de controle dá ao operador os polegares para conectar o próximo dispositivo e ele grava o próximo endereço MAC no arquivo.
(O aplicativo sabe quanto tempo leva para fazer download e flash. Há muito tempo entre a primeira transferência TFTP e o upload do arquivo de confirmação que o operador é avisado que o dispositivo provavelmente está com defeito. Teste de qualidade incorporado para o pilha de rede.)
A opção Flash sobre LAN também é um recurso que o cliente pode usar para atualizar o firmware.
Ele precisou ser implementado de qualquer maneira, então podemos usá-lo para lidar com o problema "como obter a configuração inicial lá".
PS. O servidor DHCP fornece uma opção DHCP personalizada para se identificar no dispositivo. Em uma LAN do cliente, o DHCP obviamente NÃO fará isso, portanto, quando nossos dispositivos veem um servidor DHCP "normal", eles continuam a inicialização sem tentar carregar o arquivo de confirmação.