Autor Tópico: [Resolvido] Alterar DNS de conexão discada - Sempre retorna ao padrão  (Lida 10268 vezes)

Offline Kairion

  • Usuário Ubuntu
  • *
  • Mensagens: 107
    • Ver perfil
Olá a todos, tentei ser o mais explicito possível no título.
Estou a alguns dias tentando alterar o DNS padrão para o Open DNS, já tentei alterar o arquivo /etc/resolv.conf, porém nada, já tentei alterar no Gnome PPP e nada, já tentei editar o próprio .wvdial.conf e nada, e por fim descobri que o Gnome PPP usa o seguinte arquivo resolv.conf:
/etc/ppp/resolv.conf

Alterei ele, porém assim quando conecta, o Gnome PPP ou outra coisa qualquer altera este arquivo colocando o servidor DNS padrão, que é muito lerdo.
Gostaria de saber como manter permanentemente esta alteração no arquivo.

Abraços  ;)

Editado:
Apesar de não usar mais internet discada, o post do 0tacon realmente ajuda, exatamente como eu precisava, valeu.
« Última modificação: 27 de Maio de 2009, 14:27 por Kairion »

Offline Kamei Hyoga

  • Usuário Ubuntu
  • *
  • Mensagens: 1.095
  • Ubuntu 11.04
    • Ver perfil
Re: Alterar DNS de conexão discada - Sempre retorna ao padrão
« Resposta #1 Online: 23 de Fevereiro de 2009, 02:37 »
Eu descobri uma forma "semi-automática" para isso.


Abra as configurações de rede ( Administração>Rede)

Na aba DNS, após desbloquear a janela, adicione o dns que você quer e depois apague os outros dois que já estávam lá.

Antes de sair, clique no ícone do disquete e salve esta configuração.

Pronto, seu dns será o do Opendns. Agora quando você conectar, bastar entrar novamente, desbloquear e carregar a configuração salva.

Offline Kairion

  • Usuário Ubuntu
  • *
  • Mensagens: 107
    • Ver perfil
Re: Alterar DNS de conexão discada - Sempre retorna ao padrão
« Resposta #2 Online: 23 de Fevereiro de 2009, 21:42 »
Funciona que é uma beleza, mas eu necessito de uma maneira mais automática para que meus familiares também possam usar o OpenDNS (além de que, assim eu poderei bloquear certos sites, e eles terão todas as vantagens do OpenDNS).
Eu acho que descobri uma outra forma, ao configurar no Configurações de rede (Sistema > Administração > Rede), ele conecta (estou conectado por ele, apesar da dificuldade) e fica com o DNS que eu defini seguindo sua dica, mas, eu queria uma forma simples de me conectar com o "configurações de rede", algum script, algo parecido com gnome ppp, até um applet serve.
E, procurando por applet, encontrei o applet "Monitor de modem", porém as opções "ativar" e "desativar" dele não podem ser usadas, e selecionando a opção "propriedades" dele, é aberto o "configurações de rede", mas com o botão "desbloquear" bloqueado, sem poder ser clicado.
Com sua dica creio estar perto de uma solução, preciso apenas de algo mais automático apenas.

Abraços ;)

Offline raidicar

  • Usuário Ubuntu
  • *
  • Mensagens: 576
  • Quad Shot of Ubuntu
    • Ver perfil
Re: Alterar DNS de conexão discada - Sempre retorna ao padrão
« Resposta #3 Online: 24 de Fevereiro de 2009, 01:41 »
Bom, nunca usei conexão por modem, então, não é muito a minha.
Mas pelo que eu li dos posts, ta uma baba automatizar.
É muito simples.
Vou dar como exemplo, minha dns do trampo que tem de estar assim:

Código: [Selecionar]
raidicar@cpdmtr-01:/home$ sudo cat /etc/ppp/resolv.conf
# Generated by Raidicar
domain raidicarserver..com.br
search raidicarserver..com.br
nameserver 192.168.250.2

Se minha dns ficasse mudando e eu precisasse bolar um script, faria assim:

Abriria o editor de texto e digitaria esse codigo

#!/bin/bash
# Definindo novo resolv.conf
# Primeira linha limpa o resolv.conv e insere #Generated by Raidicar
# Demais linhas vão adicionando pelo comando echo, ordenadamente, em linhas separadas, o conteudo que esta entre aspas.
# Codigo
echo "#Generated by Raidicar" > /etc/ppp/resolv.conf
echo "domain raidicarserver.com.br" >> /etc/ppp/resolv.conf
echo "search raidicarserver.com.br" >> /etc/ppp/resolv.conf
echo "nameserver 192.168.250.2" >> /etc/ppp/resolv.conf

Feito isso, salvaria o arquivo com o nome de mydnsmanual que ao executado, deixaria o resolv.conf assim:
Código: [Selecionar]
raidicar@cpdmtr-01:/home$ sudo cat /etc/ppp/resolv.conf
# Generated by Raidicar
domain raidicarserver..com.br
search raidicarserver..com.br
nameserver 192.168.250.2
Do jeito que eu quero.

Para automatizar a execução:
copiaria o arquivo para a pasta /usr/bin/
Código: [Selecionar]
sudo cp /home/raidicar/mydnsmanual /usr/bin/
Transformaria o mydnsmanual em executavel.
Código: [Selecionar]
sudo chmod +x /usr/bin/mydnsmanual
Criando agora o atalho no desktop.
Clicaria com o botão direito na area de trabalho e selecionaria "criar lançador"
Em tipo, poderia selecionar tanto aplicativo como alicativo de terminal.
Em nome, deixaria "DEFINE DNS"
Em comando deixaria o comando "gksu mydnsmanual"
Clicaria em OK e pronto, eis o atalho no desktop que acerta o resolv.conf com um duplo clique.

Sempre que quiser mudar a dns, daria um duplo clique, digitaria a senha e pronto. DNS Alterada do jeito que eu defini no script.

Agora, se quisesse automatizar 100%, criaria um segundo script.
no segundo script eu armazenaria em uma variavel "x" o conteudo do arquivo resolv.conf.
depois, armazenaria o conteudo do primeiro script mydnsmanual em "y"
Compararia "x" com "y"
Se fosse igual, ótimo, sairia do script. Mas se fosse diferente, executaria o comando mydnsmanual que definiria a DNS.
Colocaria na cron para executar de minuto em minuto.
Ou seja, se minha dns mudasse, no minuto seguinte estaria corrigida do jeito que eu quero sem que eu faça nada.
« Última modificação: 24 de Fevereiro de 2009, 01:49 por raidicar »
Quem ama extremamente, deixa de viver em si e vive no que ama. Na vida três coisas são certas, o amor, a morte e o Linux !
Se Platão disse, então realmente sofremos de uma perigosa doença mental.

Offline Kamei Hyoga

  • Usuário Ubuntu
  • *
  • Mensagens: 1.095
  • Ubuntu 11.04
    • Ver perfil
Re: Alterar DNS de conexão discada - Sempre retorna ao padrão
« Resposta #4 Online: 24 de Fevereiro de 2009, 06:44 »
O modo do raidicar economiza nos cliques. Recomendo bastante.

Offline asghan

  • Usuário Ubuntu
  • *
  • Mensagens: 1.219
    • Ver perfil
Re: Alterar DNS de conexão discada - Sempre retorna ao padrão
« Resposta #5 Online: 24 de Fevereiro de 2009, 12:55 »
Esse lance do DNS é um bug do Ubuntu, pq no Mandriva e no OpenSuse é só mudar uma vez e pronto, tbm tenho essa dificuldade, ai deixei como está mesmo e minha conexão é ADSL
   Ubuntu 12.04 - Unity 64bits

Offline Kairion

  • Usuário Ubuntu
  • *
  • Mensagens: 107
    • Ver perfil
Re: Alterar DNS de conexão discada - Sempre retorna ao padrão
« Resposta #6 Online: 24 de Fevereiro de 2009, 15:19 »
Eu descobri que esse bug acontece somente com o Gnome PPP, com o "Configurações de rede", ele permanece com o DNS que eu deixo, por isso creio que o método mais pratico seria me conectar com o Configurações de rede, mas a única forma que encontrei foi um applet, que não funciona (muito provavelmente por ser adicionado por um usuário comum, e não pelo root).

O modo do raidicar realmente é simples, mas para se criar os scripts seria complicado para mim, que não entendo um "a" do que foi feito.

Alguém conhece algum programa para me conectar com o "configurações de rede" ou algum tutorial para que eu consiga criar um script desse tipo que o raidicar disse?

Obrigado por todas as respostas até agora, me ajudaram bastante.
Abraços ;)

Offline Kamei Hyoga

  • Usuário Ubuntu
  • *
  • Mensagens: 1.095
  • Ubuntu 11.04
    • Ver perfil
Re: Alterar DNS de conexão discada - Sempre retorna ao padrão
« Resposta #7 Online: 24 de Fevereiro de 2009, 17:57 »
Quando eu usava modem discado, o conexões de rede conectava durante o boot. Ele parou de fazer isso?

Offline raidicar

  • Usuário Ubuntu
  • *
  • Mensagens: 576
  • Quad Shot of Ubuntu
    • Ver perfil
Re: Alterar DNS de conexão discada - Sempre retorna ao padrão
« Resposta #8 Online: 24 de Fevereiro de 2009, 20:31 »
O modo do raidicar realmente é simples, mas para se criar os scripts seria complicado para mim, que não entendo um "a" do que foi feito.
Alguém conhece algum programa para me conectar com o "configurações de rede" ou algum tutorial para que eu consiga criar um script desse tipo que o raidicar disse?
Mas eu montei o script, eu não dei um exemplo, eu montei o script aqui.

Vamos la,
para quem utiliza conexão rápida ou outras conexões, o arquivo a mudar é o /etc/resolv.conf.
Imaginando que seu arquivo /etc/ppp/resolv.conf deveria ser assim:
nameserver 200.204.0.10
nameserver 200.204.0.138

Basta copiar isso para o gedit
#!/bin/bash
echo "#Generated by Raidicar" > /etc/ppp/resolv.conf
echo "domain raidicarserver.com.br" >> /etc/ppp/resolv.conf
echo "search raidicarserver.com.br" >> /etc/ppp/resolv.conf
echo "nameserver 192.168.250.2" >> /etc/ppp/resolv.conf

e mudar, deixando-o assim da forma que necessita, o que seria assim:
#!/bin/bash
echo "#Generated by Kairion" > /etc/ppp/resolv.conf
echo "nameserver 200.204.0.10" >> /etc/ppp/resolv.conf
echo "nameserver 200.204.0.138" >> /etc/ppp/resolv.conf

salve o arquivo na sua pasta com qualquer nome, pode ser kairiondns.

abra o terminal e de o comando:
Código: [Selecionar]
sudo chmod +x /home/kairion/kairiondnsIsso define o arquivo kairiondns como um arquivo executavel. é como se, no windows, voce "criasse" um arquivo com extensão .exe.

agora o comando:
Código: [Selecionar]
sudo cp /home/kairion/kairiondns /usr/bin/Agora voce copiou o arquivo para a pasta /usr/bin que é a pasta onde os arquivos executaveis estão, isso significa que quando digitar kariondns, onde quer que esteja em um terminal ou se executar kairiondns no modo grafico, o arquivo kairiondns que esta dentro do /usr/bin sera executado.

você pode executa-lo de duas formas:
abrindo o terminal e digitando:
Código: [Selecionar]
sudo kairiondns
Ou pode criar icone de atalho para executar dando um duplo clique:
Clique com o botão direito na area de trabalho e selecione "criar lançador"
Em tipo, selecione uma das opçãoes, pode ser qualquer uma, aplicativo ou aplicativo de terminal.
Em nome, digite o nome do atalho, pode ser o nome que quiser, ex: "Karionscript"
Em comando digite o comando "gksu Kariondnsl"
Clicque em OK e o icone aparecerá na area de trabalho.

Se em tipo, voce selecionou aplicativo, nada aparecerá quando executar o arquivo.
Se em tipo, voce selecionou aplicativo de terminal, aparecera a tela do terminal, que fechara em seguida.
Seja como for, ao der um duplo clique, o script kairiondns sera executado, deixando o arquivo /etc/ppp/resolv.conf assim:
#Generated by Kairion
nameserver 200.204.0.10
nameserver 200.204.0.138


não sei detalhar mais, então, faça esse teste e você vai entender.
crie em sua pasta um arquivo em branco de nome teste.txt
de o comando no terminal:
echo "escrevendo na linha 1 de teste" > /home/kairion/teste.txt
abra o arquivo teste.txt e veja que dentro dele esta escrito: escrevendo na linha 1 de teste
de os comandos no terminal:
echo "escrevendo mais em teste" >> /home/kairion/teste.txt
echo "escrevendo outra coisa" >> /home/kairion/teste.txt
echo "escrevendo mais um pouco" >> /home/kairion/teste.txt

abra o arquivo teste.txt e veja que dentro dele esta escrito:
escrevendo na linha 1 de teste
escrevendo mais em teste
escrevendo outra coisa
escrevendo mais um pouco


Agora, de o comando no terminal:
echo "Apagando" > /home/kairion/teste.txt
abra o arquivo teste.txt e veja tudo dentro dele foi apagado e que esta escrito apenas "apagando"
Isso ocorreu por que você usou apenas um simbolo ">" no comando.
Se tivesse usado dois simbolos ">>", o conteudo de teste.txt não seria apagado, tudo estaria la e na ultima linha, seria adicionada a palavra "Apagando".

Por isso
echo "#Generated by Kairion" >/etc/ppp/resolv.conf = limpa o conteudo do arquivo resolv.conf e acrecenta nele o conteudo que esta entre aspas.
echo "nameserver 200.204.0.10" >>/etc/ppp/resolv.conf = acrescenta no arquivo resolv.conf o conteudo que esta entre aspas.
echo "nameserver 200.204.0.138" >>/etc/ppp/resolv.conf = acrescenta no arquivo resolv.conf o conteudo que esta entre aspas.

melhor que isso não da, se não conseguir, post o conteudo do seu arquivo resolv.conf e eu monto o script pra você.
« Última modificação: 11 de MAR?O de 2009, 20:09 por raidicar »
Quem ama extremamente, deixa de viver em si e vive no que ama. Na vida três coisas são certas, o amor, a morte e o Linux !
Se Platão disse, então realmente sofremos de uma perigosa doença mental.

Offline Kairion

  • Usuário Ubuntu
  • *
  • Mensagens: 107
    • Ver perfil
Re: Alterar DNS de conexão discada - Sempre retorna ao padrão
« Resposta #9 Online: 24 de Fevereiro de 2009, 22:53 »
Falha minha em não perceber que era só isso  :o
Só que, diferente do Gnome PPP, o configurações de rede conecta e deixa o DNS que eu configurei, então, para meus parentes seria mais fácil, já que eles não iriam querer abrir um script depois de conectar, então o OpenDNS só funcionaria para mim, e os sites que bloqueei via DNS não seria bloqueados.
De qualquer forma, vou usar este script, vai facilitar meu trabalho.

PS.: Os DNS's do meu provedor (os que eu acho lentos) são os mesmo que você indicou no exemplo.
PS 2.: No meu caso o arquivo é o /etc/resolv.conf, deixo este aviso aqui, pois dependendo da conexão eu creio que mude.

Obrigado por toda ajuda prestada.
Abraços  ;)

Offline Zericardo

  • Usuário Ubuntu
  • *
  • Mensagens: 23
    • Ver perfil
Re: Alterar DNS de conexão discada - Sempre retorna ao padrão
« Resposta #10 Online: 27 de Maio de 2009, 12:45 »
No meu caso eu uso o Internet Ilimitada da Telefonica aqui em São Paulo,entrei no site deles www.itelefonica.com.br ,fui no link contato direto e pedi o nº de telefone de conexão e eles me deram os 2 DNS,o primario e o secundario e estou navegando ha 35,2 Kbps testado no velocimetro do RJNET ,outra coisa uso uma string que aumenta bem a velocidade da conexão use esta string no PPP AT&FXS11=50 ,funciona mesmo ,to navegando legal no Ubuntu
"Não confunda vitórias com sucesso,nem derrotas com fracasso,pois muitas vezes na vida de um perdedor tem algumas vitórias e na vida de um vencedor a algumas derrotas.A diferença é que enquanto o perdedor se acomoda na vitória ,o vencedor cresce nas derrotas."

Offline 0tacon

  • Usuário Ubuntu
  • *
  • Mensagens: 439
    • Ver perfil
Re: Alterar DNS de conexão discada - Sempre retorna ao padrão
« Resposta #11 Online: 27 de Maio de 2009, 12:57 »
 Eu fixei o DNS na minha iG discada assim: (funciona usando o wvdial como discador)
Editei o arquivo /etc/ppp/peers/wvdial. Ele tem uma linha chamada usepeerdns, que é a que faz o wvdial editar o /etc/resolv.conf e colocar lá o DNS dado pelo provedor no momento da conexão. Para evitar isso, é só comentar a linha, ficando assim:
Código: [Selecionar]
noauth
name wvdial
#usepeerdns
Por precaução, no /etc/wvdial.conf, coloquei a linha:
Código: [Selecionar]
Auto DNS = off Eu não sei se esta linha está influindo em algo, mas de qualquer forma está funcionando do jeito que eu quero assim, com o DNS fixo. Isso poupa bastante tempo na hora da conexão, pois o provedor iG às vezes nem consegue conexão por faltade DNS - mas é pura vagabundagem do provedor, pois provendo-se o DNS manualmente, navega que é uma beleza!
 Então é isso, feito esse simples processo, é só colocar os DNS desejados no /etc/resolv.conf.
« Última modificação: 27 de Maio de 2009, 13:01 por 0tacon »


Offline 0tacon

  • Usuário Ubuntu
  • *
  • Mensagens: 439
    • Ver perfil
Re: Alterar DNS de conexão discada - Sempre retorna ao padrão
« Resposta #12 Online: 27 de Maio de 2009, 12:59 »
 E mais uma coisa: A melhor string que eu conheço, pelo menos para o ig é:
Código: [Selecionar]
ATQ0 V1 E1 S0=0 S10=200 S36=7 S15=128 &C1 &D2 +FCLASS=0Usando o wvdial, pelo terminal. É mais prático que o gnome-ppp.
« Última modificação: 27 de Maio de 2009, 13:02 por 0tacon »