Configurar gateway e servidor DNS com dialog

Publicado por Daniel Lara Souza (última atualização em 02/12/2010)

[ Hits: 10.889 ]

Homepage: http://danniel-lara.blogspot.com/

Download 4856.rotas.sh




Simples script em dialog para ajustar o gateway e os servidores DNS de seu GNU/Linux.

Espero que ajude!

  



Esconder código-fonte

#!/bin/bash
# 
# Script para realizar torca de rotas 
# e Ajustando o DNS
# utilizando Dialog
# Versao 0.1
# Daniel Lara Souza
# 29 Novenbro 2010



while : ; do
reposta=$(
 dialog --stdout               \
        --title     ' Verifica o GW ' \
        --menu    'Escolha um opcao: ' \
        0 0 0            \
        1 'GATEWAY ATUAL'   \
        2 'DNS ATUAL'    \
        3 'TROCAR GATEWAY'  \
        4 'ADICIONAR DNS PRIMARIO' \
        5 'ADICIONAR 1 OU + DNS SEGUNDARIO'  \
        0 'Sair'      \
                   )        
   [ $? -ne 0 ] && break
 
   case "$reposta" in
          
           1) route -n > /tmp/route.txt 
              dialog --tailbox /tmp/route.txt 8 75
           ;;
           2) cat /etc/resolv.conf > /tmp/dns.txt
              dialog --tailbox /tmp/dns.txt 8 75
           ;;
           3) GATEWAY=$( dialog --stdout --inputbox 'Digite o número do gateway (roteador): ' 0 0 )
              route del default ; route add default gw $GATEWAY
           ;;
           4) DNS1=$( dialog --stdout --inputbox 'Digite o número do servidor DNS primário: ' 0 0 ) 
              echo > /ete/resolv.conf
              echo "nameserver $DNS1" > /etc/resolv.conf
           ;;
           5) DNS2=$( dialog --stdout --inputbox 'Digite o número do servidor DNS secundário: ' 0 0 )
              echo "nameserver $DNS2" >> /etc/resolv.conf  
           ;;
           0) break
           ;; 
esac
done

Scripts recomendados

Systemctl-config - parada ou reativação de um serviço do systemD

Backup da database do gerenciador de pacotes RPM

Script que conta quantas barras tem em um diretorio

Script para instalação completa do XEN 3.4.0 através do source ( fonte ).

Configurando endereço de rede - Slackware, Debian, CentOS/RHEL


  

Comentários
[1] Comentário enviado por /bin/laden em 03/12/2010 - 17:35h

Critica construtiva

E se:

1 - Esse script for executado por um usuário comum? (você não checa se quem executa é root ou não)

2 - O cara deixar em branco uma das opções? (seu script não faz tratamento disso)

3 - Ao invés de fornecer um endereço ip, o cara escreve uma palavra qualquer? (novamente seu script não faz tratamento disso)

Pense nisso!

[2] Comentário enviado por isaque_alves em 05/12/2010 - 10:39h

Software livre é bom por isso. Críticas construtivas acompanhadas de ações positivas para criação de programas cada vez melhores...

Vai ver o cara não pensou nessas possibilidades. Se ele não souber, muitos de nós farão novas versões e as enviarão para enriquecer ainda mais o VOL. Vamo lá, moçada!!

[Editado]

Só lembrando que para checar o ip do gateway, por exemplo, é preciso validar mais do que apenas a entrada de números... é preciso verificar o endereço de rede do gateway e da máquina... ambos devem estar na mesmíssima rede.

[3] Comentário enviado por himfea em 07/12/2010 - 10:15h

outro ponto interessante a ressaltar, é que esse script não cria uma rota estática. ao reiniciar a máquina ou a rede, o gateway vai se perder.

no Fedora, Red Hat e CentOS, tu podes efetuar um sed -i no arquivo "/etc/sysconfig/netwrok" opção "GATEWAY=<IP-GATEWAY>"
claro, que essa opção só existirá caso esteja usando IP fixo, se for dinâmico, terá que incluí-la.

outra dica, seria efetuar o sed -i no "etc/resolv.conf" também. O único problema seria se a pessoa tens 2 nameserver configurados no resolv.conf.
----
porem, muito legal o seu script para automatizar essa tarefa.
também uso muitos scripts no dia a dia.

abraços


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts