Um roteador doméstico (neste caso, o FritzBox) sabe registrar muito: quanto tráfego quando vai, quem está conectado a que velocidade etc. Para descobrir o que está oculto em endereços estranhos, fui ajudado por um servidor de nome de domínio (DNS) na rede local.
Em geral, o DNS teve um impacto positivo na rede doméstica: maior velocidade, resiliência e capacidade de gerenciamento.
Abaixo está um gráfico que levantou questões e a necessidade de entender o que está acontecendo. Os resultados já filtraram consultas conhecidas e funcionais para servidores de nomes de domínio.
Por que 60 domínios obscuros são pesquisados todos os dias enquanto eles ainda estão dormindo?
Todos os dias, 440 domínios desconhecidos são pesquisados em tempo ativo. Quem são eles e o que estão fazendo?
Média de pesquisas diárias por hora

Solicitação de relatório SQLWITH CLS AS ( SELECT DISTINCT DATE_NK, STRFTIME( '%s', SUBSTR(DATE_NK,8,4) || '-' || CASE SUBSTR(DATE_NK,4,3) WHEN 'Jan' THEN '01' WHEN 'Feb' THEN '02' WHEN 'Mar' THEN '03' WHEN 'Apr' THEN '04' WHEN 'May' THEN '05' WHEN 'Jun' THEN '06' WHEN 'Jul' THEN '07' WHEN 'Aug' THEN '08' WHEN 'Sep' THEN '09' WHEN 'Oct' THEN '10' WHEN 'Nov' THEN '11' ELSE '12' END || '-' || SUBSTR(DATE_NK,1,2) || ' ' || SUBSTR(TIME_NK,1,8) ) AS EVENT_DT, REQUEST_NK, DOMAIN FROM STG_BIND9_LOG ) SELECT 1 as 'Line: DNS Requests per Day for Hours', strftime('%H:00', datetime(EVENT_DT, 'unixepoch')) AS 'Day', ROUND(1.0*SUM(1)/COUNT(DISTINCT strftime('%d.%m', datetime(EVENT_DT, 'unixepoch'))), 1) AS 'Requests per Day' FROM CLS WHERE DOMAIN NOT IN ('in-addr.arpa', 'IN-ADDR.ARPA', 'local', 'dyndns', 'nas', 'ntp.org') AND datetime(EVENT_DT, 'unixepoch') > date('now', '-20 days') GROUP BY strftime('%H:00', datetime(EVENT_DT, 'unixepoch')) ORDER BY strftime('%H:00', datetime(EVENT_DT, 'unixepoch'))
À noite, o acesso sem fio é desativado e a atividade do dispositivo é esperada, ou seja, não há pesquisa de domínios obscuros. Isso significa que a maior parte da atividade vem de dispositivos com sistemas operacionais como Android, iOS e Blackberry OS.
Liste os domínios que estão sendo pesquisados intensivamente. A intensidade será determinada por parâmetros como o número de solicitações por dia, o número de dias de atividade e quantas horas do dia foram observadas.
Todos os suspeitos esperados apareceram na lista.
Domínios pesquisados intensivamente

Solicitação de relatório SQL WITH CLS AS ( SELECT DISTINCT DATE_NK, STRFTIME( '%s', SUBSTR(DATE_NK,8,4) || '-' || CASE SUBSTR(DATE_NK,4,3) WHEN 'Jan' THEN '01' WHEN 'Feb' THEN '02' WHEN 'Mar' THEN '03' WHEN 'Apr' THEN '04' WHEN 'May' THEN '05' WHEN 'Jun' THEN '06' WHEN 'Jul' THEN '07' WHEN 'Aug' THEN '08' WHEN 'Sep' THEN '09' WHEN 'Oct' THEN '10' WHEN 'Nov' THEN '11' ELSE '12' END || '-' || SUBSTR(DATE_NK,1,2) || ' ' || SUBSTR(TIME_NK,1,8) ) AS EVENT_DT, REQUEST_NK, DOMAIN FROM STG_BIND9_LOG ) SELECT 1 as 'Table: Havy DNS Requests', REQUEST_NK AS 'Request', DOMAIN AS 'Domain', REQ AS 'Requests per Day', DH AS 'Hours per Day', DAYS AS 'Active Days' FROM ( SELECT REQUEST_NK, MAX(DOMAIN) AS DOMAIN, COUNT(DISTINCT REQUEST_NK) AS SUBD, COUNT(DISTINCT strftime('%d.%m', datetime(EVENT_DT, 'unixepoch'))) AS DAYS, ROUND(1.0*SUM(1)/COUNT(DISTINCT strftime('%d.%m', datetime(EVENT_DT, 'unixepoch'))), 1) AS REQ, ROUND(1.0*COUNT(DISTINCT strftime('%d.%m %H', datetime(EVENT_DT, 'unixepoch')))/COUNT(DISTINCT strftime('%d.%m', datetime(EVENT_DT, 'unixepoch'))), 1) AS DH FROM CLS WHERE DOMAIN NOT IN ('in-addr.arpa', 'IN-ADDR.ARPA', 'local', 'dyndns', 'nas', 'ntp.org') AND datetime(EVENT_DT, 'unixepoch') > date('now', '-20 days') GROUP BY REQUEST_NK ) WHERE DAYS > 9
Bloqueamos ic.blackberry.com e iceberg.blackberry.com, que o fabricante justificará por razões de segurança. Resultado: quando você tenta se conectar à WLAN, ela mostra a página de login e nunca se conecta novamente. Desbloquear.
detectportal.firefox.com é o mesmo mecanismo, implementado apenas no navegador Firefox. Se necessário, efetue login na WLAN, primeiro mostre a página de login. Não está totalmente claro por que executar ping no endereço com tanta frequência, mas o mecanismo está disponível no fabricante.
skype. As ações deste programa são semelhantes a um worm: oculta e não se deixa matar na barra de tarefas, gera muito tráfego na rede, faz pings em 4 domínios a cada 10 minutos. Ao fazer uma chamada de vídeo, a conexão à Internet é constantemente mobilizada, quando não pode mais ser melhor. Embora seja necessário, permanece.
upload.fp.measure.office.com - refere-se ao Office 365, não encontrou uma descrição decente.
browser.pipe.aria.microsoft.com - não encontrou uma descrição decente.
Ambos estão bloqueando.
connect.facebook.net é um aplicativo de bate-papo do facebook. Permanece.
mediator.mail.ru A análise de todas as solicitações de domínio mail.ru mostrou a presença de uma enorme quantidade de recursos de publicidade e coletores de estatísticas, o que causa desconfiança. O domínio mail.ru está completamente na lista negra.
google-analytics.com - não afeta a funcionalidade dos dispositivos, portanto, nós a bloqueamos.
doubleclick.net - conta os cliques no anúncio. Nós bloqueamos.
Muitas solicitações vão para googleapis.com. O bloqueio levou a uma alegre desconexão de mensagens curtas no tablet que me pareciam bobas. Mas o playstore parou de funcionar, então nós o desbloqueamos.
cloudflare.com - eles escrevem que amam o código-fonte aberto e, em geral, escrevem muito sobre si mesmos. A intensidade da pesquisa de domínio, que geralmente é muito maior que a atividade na Internet, não é totalmente clara. Vamos deixar por enquanto.
Assim, a intensidade das solicitações é frequentemente associada à funcionalidade necessária dos dispositivos. Mas aqueles que exageraram na atividade também foram descobertos.
Muito primeiro
No momento de ligar a Internet sem fio, eles ainda estão inativos e há uma oportunidade de ver quais solicitações são enviadas à rede primeiro. Assim, às 6:50, a Internet é ligada e, nos primeiros dez minutos, 60 domínios são pesquisados diariamente:

Solicitação de relatório SQL WITH CLS AS ( SELECT DISTINCT DATE_NK, STRFTIME( '%s', SUBSTR(DATE_NK,8,4) || '-' || CASE SUBSTR(DATE_NK,4,3) WHEN 'Jan' THEN '01' WHEN 'Feb' THEN '02' WHEN 'Mar' THEN '03' WHEN 'Apr' THEN '04' WHEN 'May' THEN '05' WHEN 'Jun' THEN '06' WHEN 'Jul' THEN '07' WHEN 'Aug' THEN '08' WHEN 'Sep' THEN '09' WHEN 'Oct' THEN '10' WHEN 'Nov' THEN '11' ELSE '12' END || '-' || SUBSTR(DATE_NK,1,2) || ' ' || SUBSTR(TIME_NK,1,8) ) AS EVENT_DT, REQUEST_NK, DOMAIN FROM STG_BIND9_LOG ) SELECT 1 as 'Table: First DNS Requests at 06:00', REQUEST_NK AS 'Request', DOMAIN AS 'Domain', REQ AS 'Requests', DAYS AS 'Active Days', strftime('%H:%M', datetime(MIN_DT, 'unixepoch')) AS 'First Ping', strftime('%H:%M', datetime(MAX_DT, 'unixepoch')) AS 'Last Ping' FROM ( SELECT REQUEST_NK, MAX(DOMAIN) AS DOMAIN, MIN(EVENT_DT) AS MIN_DT, MAX(EVENT_DT) AS MAX_DT, COUNT(DISTINCT strftime('%d.%m', datetime(EVENT_DT, 'unixepoch'))) AS DAYS, ROUND(1.0*SUM(1)/COUNT(DISTINCT strftime('%d.%m', datetime(EVENT_DT, 'unixepoch'))), 1) AS REQ FROM CLS WHERE DOMAIN NOT IN ('in-addr.arpa', 'IN-ADDR.ARPA', 'local', 'dyndns', 'nas', 'ntp.org') AND datetime(EVENT_DT, 'unixepoch') > date('now', '-20 days') AND strftime('%H', datetime(EVENT_DT, 'unixepoch')) = strftime('%H', '2019-08-01 06:50:00') GROUP BY REQUEST_NK ) WHERE DAYS > 3
O Firefox verifica a conexão WLAN em busca de uma página de login.
A Citrix envia um ping ao servidor, embora o aplicativo não esteja sendo executado ativamente.
A Symantec verifica os certificados.
O Mozilla verifica se há atualizações, embora nas configurações ele tenha pedido para não fazer isso.
mmo.de é um serviço de jogo. Provavelmente, a solicitação inicia um bate-papo no Facebook. Nós bloqueamos.
A Apple ativa todos os seus serviços. api-glb-fra.smoot.apple.com - a julgar pela descrição, cada clique no botão é enviado aqui para otimização do mecanismo de pesquisa. Muito suspeito, mas relacionado à funcionalidade. Nós partimos.
A seguir, há uma longa lista de chamadas para microsoft.com. Todos os domínios, começando no terceiro nível, estão bloqueados.
O número de subdomínios do primeiro
Portanto, os primeiros 10 minutos de ativação da Internet sem fio.
A maioria dos subdomínios é pesquisada pelo iOS - 32. É seguido pelo Android - 24, depois pelo Windows - 15 e o último Blackberry - 9.
Somente o aplicativo do Facebook pesquisa 10 domínios, o skype pesquisa 9 domínios.
Fonte de informação
A origem da análise foi o arquivo de log do servidor bind9 local, que contém o seguinte formato:
01-Aug-2019 20:03:30.996 client 192.168.0.2#40693 (api.aps.skype.com): query: api.aps.skype.com IN A + (192.168.0.102)
O arquivo foi importado para o banco de dados sqlite e analisado usando consultas SQL.
O servidor atua como um cache; as solicitações vêm do roteador; portanto, o cliente da solicitação está sempre sozinho. Uma estrutura de tabela bastante simplificada, ou seja, para o relatório, você precisa do tempo de solicitação, da própria solicitação e do domínio de segundo nível para agrupamento.
Tabelas DDL CREATE TABLE STG_BIND9_LOG ( LINE_NK INTEGER NOT NULL DEFAULT 1, DATE_NK TEXT NOT NULL DEFAULT 'na', TIME_NK TEXT NOT NULL DEFAULT 'na', CLI TEXT,
Conclusão
Assim, como resultado da análise do log do servidor de nomes de domínio, mais de 50 registros foram censurados e colocados na lista para bloqueio.
A necessidade de algumas consultas foi bem descrita pelos fabricantes de software e inspira confiança. No entanto, a maior parte da atividade é irracional e questionável.