Ir para conteúdo
Fórum Script Brasil
  • 0

Código em C mudar DNS Linux


Wanderson Fernandes

Pergunta

Senhores(as),

Estou com dificuldades para fazer uma função para fazer alteração de DNS no linux, preciso abrir o arquivo /etc/resolv.conf e ler suas linha e verificar se o DNS que desejo inserir, já não está configurado no arquivo, caso não esteja, gravar o comando "nameserve +DNS" no arquivo.

void configura_dns(void)
{
    FILE *arquivo;
    char linha[200], dns[200], comando[200];

    printf("Digite o endereço de DNS que deseja adicionar: \n");
    scanf("%s", &dns);
    sprintf(comando, "nameserver %s", dns);
    arquivo = fopen("/etc/resolv.conf", "r");
    printf("%s\n", comando);
    if(arquivo)
    {
        while(!feof(arquivo))
        {
            fgets(linha, sizeof(linha), arquivo);
            printf("%s\n", linha);
            int i = strcmp(comando, linha);
            if(i == 0)
            {
                printf("Este DNS já está configurado!\n");
            }
            else
            {
                if(feof(arquivo))
                {
                    fputs(comando, arquivo);
                    printf("DNS configurado com sucesso!\n");
                }
            }
        }
    }
    fclose(arquivo);
}

Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...