Eu clonei duas VMs vSphere de um modelo Ubuntu 17.10. Após a inicialização, ambos reivindicam o mesmo IP e lutam por ele (as conexões ssh são interrompidas quando o IP alterna entre eles).
Os nomes de host e endereços MAC são diferentes entre as duas máquinas. dhclient
afirma corretamente dois IPs separados, mas o resolvedor em uso é systemd-networkd
.
systemd-networkd
usa um método diferente para gerar o DUID do quedhclient
.dhclient
por padrão, usa o endereço da camada de link enquantosystemd-networkd
usa o conteúdo de/etc/machine-id
. Como as VMs foram clonadas, elas possuem o mesmomachine-id
e o servidor DHCP retorna o mesmo IP para ambas.Para corrigir, substitua o conteúdo de um ou ambos os arquivos
/etc/machine-id
. Isso pode ser qualquer coisa, mas excluir o arquivo e executá -losystemd-machine-id-setup
criará um aleatóriomachine-id
da mesma forma que na configuração da máquina.E a configuração do netplan? Existe uma opção
dhcp-configuration
que pode ser utilizada da seguinte forma (trecho de exemplos de netplan ):por padrão, ele está usando machine-id, mas alterando esse recurso, podemos 'forçá-lo' a não fazê-lo.
Trecho de manpages / netplan , dando mais insights: