Por que preciso especificar o DNS ao usar o chroot?

Por que preciso especificar o DNS ao usar o chroot?

Da última vez, quando fiz chroot do Live USB para meu antigo sistema quebrado, não consegui me conectar à Internet. Nissotutorial, li que deveria adicionar OpenDNS ao meu/etc/resolv.conf se eu usar DHCP.

Como o DHCP (ou chroot) influencia meu DNS?

O DHCP não é apenas uma forma de meu roteador me fornecer um IP? Por que posso me conectar do Live USB à Internet normalmente, enquanto chrootpreciso adicionar um novo DNS?

Responder1

O DHCP não é apenas a forma como meu roteador me fornece IP?

Não, é também a forma como o seu roteador fornece informações extras – IP do gateway, IP do servidor DNS, nome de domínio padrão, IP do servidor de horário, etc.

Por que posso me conectar do Live USB à Internet normalmente, enquanto no chroot tenho que adicionar um novo DNS?

O Linux armazena o endereço do servidor DNS em um arquivo. Como o chroot altera a forma como os programas veem os caminhos dos arquivos, isso significa que eles encontrarão um arquivo diferente no /etc/resolv.confcaminho, o que significa que possivelmente encontrarão um endereço diferente armazenado lá.

(Seu cliente DHCP não sabe nada sobre seus chroots e apenas atualiza oprincipal /etc/resolv.confarquivo – ele não pode pesquisar e atualizartodosarquivos possíveis.)


Uma solução alternativa comum é vincular (vincular) o caminho "interno" para que ele se refira ao mesmo arquivo "externo". Por exemplo, você pode fazer isso antes de fazer chroot para /mnt:

mount --bind /etc/resolv.conf /mnt/etc/resolv.conf

(Claro, mais tarde você terá que desmontar isso antes que o sistema permita desmontar /mnt.)

informação relacionada