DNSGEN - Gera e mantém configurações dos servidores DNS

Publicado por Isaac Luiz Angelo Castro (última atualização em 10/10/2017)

[ Hits: 1.925 ]

Homepage: http://bitcoinrotator.pe.hu/

Download dnsgen




Esse é um script simples, que tem duas funções:

- Primeira função é gerar um arquivo resolv.conf de forma automática
- Segunda função tornar os endereços DNS persistentes, assim não caindo minha conexão

Estou  utilizando Ubuntu 14.04 e tenho duas placa de redes wireless, e às vezes  retiro uma ponho outra, ou ancoro o telefone e quase sempre essas alterações cagam meu resolv.conf, ai resolvi escrever esse script que dá uma solução em definitivo para o meu problema.

  



Esconder código-fonte

#!/bin/bash
# Esse script tem a função de gerar ou tornar persistem dns's funcionais no arquivo resolv.conf  
# Esse script pode ser alterado por qualquer pesso utilize por sua conta e risco 
# Embora ele não seja capaz de causar dano no seu sistema
# Ele deve ser executato com privilegios de superusuário (ROOT)
# Esse script foi escrito por Isaac Angelo
function debugbaiano () {
echo "
 debug baiano
 flag >> $flag
 var_line_resolv = $var_line_resolv
 ";
read isc

} 
flag=$1
if [ -f /etc/resolv.conf ] ; then
var_line_resolv=`cat /etc/resolv.conf |grep 8.8.8.8 | wc -l`
else
var_line_resolv="0"
fi
 
if [ -f /etc/resolv.conf ] ; then
var_line_resolv=`cat /etc/resolv.conf |grep 8.8.8.8 | wc -l`
else
var_line_resolv="0"
fi


function gen (){
if [ -f /etc/resolv.conf ] ; then
rm -f /etc/resolv.conf
fi
echo "#Esse aquivo resolv.conf foi gerado com o auxilio do script dnsgen" >> /etc/resolv.conf
echo "# que foi escrito por Isaac Angelo" >> /etc/resolv.conf
echo "nameserver 8.8.8.8" >> /etc/resolv.conf
echo "nameserver 208.67.222.222" >> /etc/resolv.conf
}

 case $flag in
      -g) gen ;;
      -a)
     #echo -n "pausa"
      #sleep 3
      
      if  [ $var_line_resolv -le 0  ] ; then
      #echo -n "rodando função gen"
       gen
       
       dnsgen -a
       else       
       dnsgen -a
      fi
     ;;
      *) 
       echo '
      Dnsgen é uma comando para gerar um novo resolv.conf
      que é o arquivos responsavel por manter os endereços de
      servidores DNS do sistema
      uso:  dnsgen [parametro]
      parametros
      -g   gera um resolv.conf imediatamente 
      -a   Inicia um loop que monitora o arquivo resolv.conf
         e altera adicinando o endereço do google DNS caso ele 
         não esteja presente.
      '
     ;;  
   esac

Scripts recomendados

Papéis de parede aleatórios direto da internet

simplemail.sh

letras de musica do banshee

Configurar usuarios samba na boa sem dor de cabeça em modo texto

Para quem esquece facil das coisas


  

Comentários
[1] Comentário enviado por fabio em 10/10/2017 - 04:05h

Uma solução mais simples seria adicionar o atributo IMMUTABLE ao /etc/resolv.conf com o comando:

# chattr +i /etc/resolv.conf

Dessa forma o arquivo fica imutável, nem o root consegue alterá-lo.

Para restaurar a escrita ao arquivo basta remover o atributo:

# chattr -i /etc/resolv.conf

[2] Comentário enviado por isaacangello em 13/10/2017 - 11:57h

Mas acabo tendo que alterar, aqui no rio de Janeiro, é f-od-a, tem épocas que alguns servidores dns ficam fora, e eu as vezes uso uns servidores de outra origem supostamente mais rápidos. Mais válido que não pretende ficar alterando, eu acho bom e mudar na hora mesmo.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts