Получить публичные IP-адреса посещаемых веб-страниц?

Насколько я понимаю, чтобы сделать это навсегда, вы просто складываете все адреса вместе, например:

Address=192.168.59.1/24 192.168.1.5/24
3
21.08.2017, 14:40
2 ответа

Вы можете установить DNSmasq локально и добавить эту опцию в файл конфигурации log-feature = / var / log / dnsmasq.log log-questions , затем настроить вашу систему на использование 127.0 .0.1 или :: 1 в качестве преобразователя DNS его работа для меня.

Затем извлеките данные в любом формате и делайте с ними все, что захотите

или установите Bind локально. Большинство дистрибутивов, устанавливаемых по умолчанию для Bind, будут выполнять только неавторитативное кэширование и добавить блок конфигурации logging {} (как описано в Справочнике по настройке Bind 9 ).

2
27.01.2020, 21:26

Этот небольшой скрипт может дать желаемый результат. Я избегал DNS-запросов, вместо этого предпочитая использовать фактические HTTP-запросы (порты 80 / http и 443 / https).

tshark -nlp -f '(port 80 or port 443) and (tcp[tcpflags] & (tcp-syn|tcp-ack)) == (tcp-syn|tcp-ack)' 2>/dev/null |
    stdbuf -oL awk '{print $3}' |
    while IFS= read -r ip
    do
        name=$(dig +short -x "$ip")
        printf "%-16s%s\n" "$ip" "${name:-$ip}"
    done |
    uniq

Пример вывода

212.58.244.27   bbc-vip146.telhc.bbc.co.uk.
78.129.164.123  free.hands.com.
195.20.242.89   195.20.242.89

Этот код будет генерировать результаты только для HTTP-запросов, тогда как поиск по DNS-запросам найдет все и вся. Однако имейте в виду, что он генерирует имена из поиска rDNS по IP-адресу, поэтому не всегда существует прямое соответствие между именем хоста HTTP, к которому вы обращались, и именем, возвращаемым в результатах.

0
27.01.2020, 21:26

Теги

Похожие вопросы