Você precisa de um servidor de resolução de nomes de algum tipo.
Primeiro, configure um servidor DNS que aceite atualizações dinâmicas em uma máquina que tenha um IP estático. BIND é a escolha óbvia (instala no Windows e Linux), mas existem outras versões do Linux que funcionam tão bem como DJBDNS, etc ... Seu servidor DNS precisará encaminhar solicitações para o servidor DNS do seu ISP ou para algum outro servidor DNS público . Um bom nome de domínio que deve ser seguro o suficiente para usar é "home.internal" Não há necessidade de registrá-lo e não é um domínio público ... Esta máquina para a qual você configura o DNS precisará estar ativa o tempo todo ...
Uma vez configurada, diga ao servidor DHCP do seu reouter para distribuir o IP do servidor DNS que você acabou de configurar.