Como configurar o dnsmasq no CentOS 7

Como configurar o dnsmasq no CentOS 7
Dnsmasq é um servidor DNS muito leve e simples. O dnsmasq pode ser configurado para ser um servidor DNS e um servidor DHCP. Neste artigo, vou mostrar como configurar o servidor Dnsmasq DNS no CentOS 7. Também vou falar sobre algumas das opções de configuração do DNS Server Common do Dnsmasq. Então vamos começar.

Configurando endereço IP estático:

Primeiro, você deve configurar um endereço IP estático em sua máquina CentOS 7. Você pode fazer isso através da interface do usuário de texto do gerenciador de rede nmtui.

Execute nmtui com o seguinte comando:

$ sudo nmtui

Agora, selecione Edite uma conexão e pressione .

Agora, selecione Automático de Configuração do IPv4 seção e pressione .

Agora, selecione Manual e pressione .

Agora, navegue para e pressione .

Agora, você deve adicionar o endereço IP, gateway, endereço do servidor DNS e domínio de pesquisa.

O endereço deve ser o endereço IP da sua máquina CentOS 7. Este será o endereço IP do seu servidor DNS também depois de configurar o dnsmasq.

O gateway é o endereço IP do seu roteador.

Use o endereço IP que você está configurando para sua máquina CentOS 7 como o servidor DNS primário. Então, eu prefiro adicionar 8.8.8.8 (servidor DNS público do Google) como o servidor DNS secundário.

O domínio de pesquisa deve ser seu próprio nome de domínio.

Depois de terminar, verifique se todas as opções marcadas são verificadas. Você pode selecionar as opções e pressionar para verificá -los se eles ainda não estão verificados.

Então, navegue para e pressione .

Finalmente, pressione 2 vezes e reinicie o seu computador com o seguinte comando:

$ sudo reiniciar

Depois que o seu computador botas, o endereço IP deve ser definido como você pode ver na captura de tela abaixo.

$ ip a

Instalando o dnsmasq:

Dnsmasq está disponível no repositório oficial do Pacote do CentOS 7. Então, você pode instalá -lo facilmente com o Yum Package Manager.

Primeiro, atualize o cache do repositório do pacote YUM com o seguinte comando:

$ sudo yum makecache

Agora, execute o seguinte comando para instalar o dnsmasq:

$ sudo yum install dnsmasq

Agora, pressione y e depois pressione continuar.

Imprensa y e depois pressioneaceitar a chave GPG do repositório do CentOS 7 também.

Dnsmasq deve ser instalado.

Configurando o dnsmasq:

O arquivo de configuração DNSmasq padrão é /etc/dnsmasq.conf. Este arquivo contém todas as opções suportadas do dnsmasq e bem documentado. Mas é muito longo e difícil de trabalhar com. Então, vou renomear este arquivo para /etc/dnsmasq.conf.bk e crie um novo arquivo de configuração /etc/dnsmasq.conf. Dessa forma, sempre que preciso de ajuda, posso apenas olhar para o arquivo /etc/dnsmasq.vigarista.bk e digite as opções necessárias no /etc/dnsmasq.conf arquivo.

Para renomear o arquivo de configuração do DNSmasq, execute o seguinte comando:

$ sudo mv /etc /dnsmasq.conf /etc /dnsmasq.conf.bk

Agora, crie um novo arquivo de configuração com o seguinte comando:

$ sudo vi /etc /dnsmasq.conf

Agora, pressione eu Para ir ao modo de inserção de VI e digite as seguintes linhas. Então aperte . Finalmente, digite : wq! e pressione Para salvar o arquivo.

Aqui, porta é usado para definir a porta (53 neste artigo) que o dnsmasq ouvirá.

domínio é seu próprio nome de domínio. Eu usei exemplo.com neste artigo.

Agora, reinicie o serviço Dnsmasq com o seguinte comando:

$ sudo systemctl reiniciar dnsmasq

Agora, verifique se o servidor Dnsmasq está funcionando corretamente com o seguinte comando:

$ sudo systemctl status dnsmasq

Está funcionando corretamente.

Adicionando novas entradas DNS ao Dnsmasq:

Agora, você pode adicionar novas entradas de DNS ao Dnsmasq com muita facilidade usando o /etc/hosts arquivo.

Para fazer isso, abra o /etc/hosts Arquivo com VI o seguinte:

$ sudo vi /etc /hosts

Agora, digite as seguintes linhas no final do arquivo e salve o arquivo.

192.168.21.20 ns.exemplo.com
192.168.21.51 Docker1.exemplo.com
192.168.21.52 Docker2.exemplo.com
192.168.21.53 Docker3.exemplo.com
192.168.21.80 ESXI1.exemplo.com
192.168.21.81 Esxi2.exemplo.com
192.168.21.100 www.meu website.com

Aqui, você tem uma entrada DNS em cada linha. Cada linha contém um endereço IP e um nome de host separado por guias ou espaços. Você digita o endereço IP primeiro e depois o nome do host.

Agora, reinicie o serviço Dnsmasq para que as mudanças tenham efeito.

$ sudo systemctl reiniciar dnsmasq

Testando o servidor DNS:

Agora, você pode usar o DIG para testar se o servidor DNS está funcionando ou não.

OBSERVAÇÃO: O comando DIG não está disponível no CentOS 7 por padrão. O comando DIG está incluído no bind-utils pacote. Você pode instalá -lo da seguinte forma:

$ sudo yum install bind-utils

Agora, execute o seguinte comando para verificar se o nome do DNS (digamos Docker1.exemplo.com) pode ser resolvido:

$ DIG Docker1.exemplo.com

Como você pode ver, o endereço IP do nome DNS é impresso. Então, está funcionando.

Dnsmasq também pode atuar como um servidor DNS em cache. Para testar se o cache do DNS está funcionando, execute o seguinte comando:

$ DIG Google.com

Como você pode ver, os endereços IP do nome do DNS Google.com é impresso na tela. Então, o cache de DNS também está funcionando.

Outras opções de dnsmasq:

Eu mostrei a você uma configuração muito básica do dnsmasq acima. Mas existem outras opções comuns que você pode usar para configurar o dnsmasq. Nesta seção, vamos dar uma olhada neles.

  • do utilizador e grupo - Você pode usar essas opções para definir um usuário e grupo de execução para dnsmasq.

Por exemplo,

usuário = dnsmasq
grupo = dnsmasq
  • tamanho da memória cache - Se você deseja aumentar o número de registros DNS que serão armazenados em cache pelo servidor Dnsmasq, use esta opção.

Por exemplo, para definir o tamanho do cache como 1000, use

cache-size = 1000
  • addn-host - Antes, eu usei o padrão /etc/hosts arquivo para adicionar novas entradas DNS. Mas, se você quiser usar o arquivo de hosts diferentes para nomes de domínio diferentes, essa opção é útil para você.

Por exemplo, você pode criar um novo arquivo /etc/hosts.exemplo.com e adicione todo o exemplo.com entradas com DNS lá. Em seguida, adicione a seguinte linha ao seu /etc/dnsmasq.conf arquivo:

addn-hosts =/etc/hosts.exemplo.com
  • Resolv-File - Por padrão, o dnsmasq usa o /etc/resolv.conf arquivo para aprender sobre quais servidores DNS usar para cache de nome. Mas se você deseja que o DNSmasq obtenha essas informações de algum outro arquivo, basta criar o arquivo, adicionar servidores DNS a esse arquivo e, finalmente, adicionar Resolv-File Opção para o seu arquivo de configuração DNSmasq /etc/dnsmasq.conf.

Por exemplo, para usar o arquivo /etc/resolv2.conf como o dnsmasq Resolv-File,

Crie o arquivo da seguinte maneira:

$ sudo vi /etc /resolv2.conf

Agora, adicione seus servidores DNS no formato a seguir. Lembre -se de colocar as altas prioridades acima de outras pessoas.

NameServer 192.168.21.2
NameServer 8.8.8.8

Em seguida, adicione a seguinte linha ao /etc/dnsmasq.conf arquivo.

resolução de resolução =/etc/resolv2.conf

Existem muito mais opções de dnsmasq. Eu recomendo que você verifique a configuração padrão do dnsmasq que você renomeou /etc/dnsmasq.conf.bk Antes para mais informações.

Então, é assim que você configura o Dnsmasq DNS Server no CentOS 7. Obrigado por ler este artigo.