Consulta DNS com lógica incorreta

0

Eu criei um script que consulta o registro de domínio. Apenas um aviso legal, isso não é uma tentativa de hackers. Estou tentando reunir uma lista de domínios que minha empresa NÃO hospeda. Vamos supor que o NameServer que minha empresa possui seja ns.foo.net e meu script faça o seguinte:

  1. Verifica whois para encontrar o servidor de nomes de cada domínio.
  2. Em seguida, verifica se o registro A (consultando o NameServer encontrado) corresponde ao nosso endereço IP.
  3. Se o servidor de nomes não for nosso E o registro A do domínio não for nosso, adicione a uma lista. Caso contrário, ignore-o e siga pela lista.

Vamos supor também que a lista de domínios seja a seguinte:

example.net
exampleagain.org
blah.org
whatever.com

Aqui está o meu script:

#!/bin/bash

FILE=sites.txt
REGEX="Name Server"
OUR_IP="192.168.5.10"

#Read from Text file
while read -r line; do
        SERVER='whois "$line" | grep -m 1 "$REGEX" | awk '{print $3}''
        shopt -s nocasematch
        HOST='host -ta "$line" "$SERVER"'
        if [[ ! "$SERVER" =~ foo.net && ! "$HOST" =~ "$OUR_IP" ]]; then
                echo "$line" >> results.txt
        fi
        sleep 1;
done<"$FILE"

Estou percebendo que os domínios que estão sendo adicionados contêm um registro A de $ OUR_IP e, às vezes, foo.net (meu domínio). O que poderia estar errado com a declaração if que está quebrando a lógica?

    
por ryekayo 18.08.2017 / 21:30

0 respostas

Tags