Hvordan fungerer hjemmeinternettet og statistik over domænenavneserveren?

En hjemmerouter (i dette tilfælde FritzBox) kan optage meget: hvor meget trafik går hvornår, hvem er forbundet med hvilken hastighed osv. En domænenavneserver (DNS) på det lokale netværk hjalp mig med at finde ud af, hvad der gemte sig bag de ukendte modtagere.

Samlet set har DNS haft en positiv indvirkning på hjemmenetværket: det har tilføjet hastighed, stabilitet og håndterbarhed.

Nedenfor er et diagram, der rejste spørgsmål og behovet for at forstå, hvad der skete. Resultaterne frafiltrerer allerede kendte og fungerende anmodninger til domænenavneservere.

Hvorfor spørges 60 obskure domæner hver dag, mens alle stadig sover?

Hver dag bliver 440 ukendte domæner spurgt i aktive timer. Hvem er de og hvad laver de?

Gennemsnitligt antal anmodninger pr. dag for time

Hvordan fungerer hjemmeinternettet og statistik over domænenavneserveren?

SQL rapport forespørgsel

WITH CLS AS ( /* prepare unique requests */
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 /* hour aggregate */
  strftime('%H:00', datetime(EVENT_DT, 'unixepoch'))
ORDER BY strftime('%H:00', datetime(EVENT_DT, 'unixepoch'))

Om natten er trådløs adgang deaktiveret og enhedsaktivitet forventes, dvs. der er ingen afstemning for ukendte domæner. Det betyder, at den største aktivitet kommer fra enheder med styresystemer som Android, iOS og Blackberry OS.

Lad os liste de domæner, der spørges intensivt. Intensiteten vil blive bestemt af parametre som antallet af anmodninger om dagen, antallet af dage med aktivitet og i hvor mange timer af dagen de blev bemærket.

Alle de forventede mistænkte var på listen.

Intensivt pollede domæner

Hvordan fungerer hjemmeinternettet og statistik over domænenavneserveren?

SQL rapport forespørgsel

WITH CLS AS ( /* prepare unique requests */
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 -- long period
ORDER BY 4 DESC, 5 DESC
LIMIT 20

Vi blokerer isс.blackberry.com og iceberg.blackberry.com, hvilket producenten vil begrunde af sikkerhedsmæssige årsager. Resultat: Når du forsøger at oprette forbindelse til WLAN, viser den login-siden og forbinder aldrig nogen steder igen. Lad os ophæve blokeringen.

detectportal.firefox.com er den samme mekanisme, kun implementeret i Firefox-browseren. Hvis du skal logge på WLAN-netværket, vil det først vise login-siden. Det er ikke helt klart, hvorfor adressen skal pinges så ofte, men mekanismen er tydeligt beskrevet af producenten.

skype. Handlingen i dette program ligner en orm: den gemmer sig og lader sig ikke blot dræbe på proceslinjen, genererer en masse trafik på netværket, pinger 10 domæner hvert 4. minut. Når du foretager et videoopkald, bryder internetforbindelsen konstant ned, når det ikke kan blive bedre. For nu er det nødvendigt, så det forbliver.

upload.fp.measure.office.com - henviser til Office 365, jeg kunne ikke finde en anstændig beskrivelse.
browser.pipe.aria.microsoft.com - Jeg kunne ikke finde en anstændig beskrivelse.
Vi blokerer begge.

connect.facebook.net - Facebook-chatapplikation. Rester.

mediator.mail.ru En analyse af alle anmodninger om mail.ru-domænet viste tilstedeværelsen af ​​et stort antal reklameressourcer og statistiksamlere, hvilket forårsager mistillid. Mail.ru-domænet sendes helt til sortlisten.

google-analytics.com - påvirker ikke enhedernes funktionalitet, så vi blokerer det.
doubleclick.net - tæller annonceklik. Vi blokerer.

Mange anmodninger går til googleapis.com. Blokeringen har ført til den glædelige nedlukning af korte beskeder på tabletten, hvilket forekommer mig dumt. Men playstore holdt op med at fungere, så lad os fjerne blokeringen af ​​den.

cloudflare.com – de skriver, at de elsker open source og skriver i det hele taget meget om sig selv. Intensiteten af ​​domæneundersøgelsen er ikke helt klar, hvilket ofte er meget højere end den faktiske aktivitet på internettet. Lad os lade det ligge for nu.

Derfor er intensiteten af ​​anmodninger ofte relateret til den nødvendige funktionalitet af enhederne. Men dem, der overdrev det med aktivitet, blev også opdaget.

Den allerførste

Når det trådløse internet er tændt, sover alle stadig, og det er muligt at se, hvilke anmodninger der sendes til netværket først. Så klokken 6:50 tænder internettet, og i løbet af de første ti minutters tidsperiode bliver 60 domæner spurgt dagligt:

Hvordan fungerer hjemmeinternettet og statistik over domænenavneserveren?

SQL rapport forespørgsel

WITH CLS AS ( /* prepare unique requests */
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 -- at least 4 days activity
ORDER BY 5 DESC, 4 DESC

Firefox kontrollerer WLAN-forbindelsen for tilstedeværelsen af ​​en login-side.
Citrix pinger sin server, selvom applikationen ikke kører aktivt.
Symantec verificerer certifikater.
Mozilla søger efter opdateringer, selvom jeg i indstillingerne bad om ikke at gøre dette.

mmo.de er en spilletjeneste. Mest sandsynligt er anmodningen initieret af facebook chat. Vi blokerer.

Apple vil aktivere alle sine tjenester. api-glb-fra.smoot.apple.com - at dømme efter beskrivelsen sendes hvert knapklik her til søgemaskineoptimeringsformål. Meget mistænkelig, men relateret til funktionalitet. Vi forlader det.

Det følgende er en lang liste over anmodninger til microsoft.com. Vi blokerer alle domæner fra tredje niveau.

Antal allerførste underdomæner
Hvordan fungerer hjemmeinternettet og statistik over domænenavneserveren?

Så de første 10 minutter med at tænde for det trådløse internet.
iOS afstemninger flest underdomæner - 32. Efterfulgt af Android - 24, derefter Windows - 15 og til sidst Blackberry - 9.
Facebook-applikationen alene afstemninger 10 domæner, skype afstemninger 9 domæner.

Kilde for information

Kilden til analysen var den lokale bind9-serverlogfil, som indeholder følgende format:

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)

Filen blev importeret til en sqlite-database og analyseret ved hjælp af SQL-forespørgsler.
Serveren fungerer som en cache; anmodninger kommer fra routeren, så der er altid én anmodningsklient. En forenklet tabelstruktur er tilstrækkelig, dvs. Rapporten kræver tidspunktet for anmodningen, selve anmodningen og domænet på andet niveau til gruppering.

DDL tabeller

CREATE TABLE STG_BIND9_LOG (
  LINE_NK       INTEGER NOT NULL DEFAULT 1,
  DATE_NK       TEXT NOT NULL DEFAULT 'n.a.',
  TIME_NK       TEXT NOT NULL DEFAULT 'n.a.',
  CLI           TEXT, -- client
  IP            TEXT,
  REQUEST_NK    TEXT NOT NULL DEFAULT 'n.a.', -- requested domain
  DOMAIN        TEXT NOT NULL DEFAULT 'n.a.', -- domain second level
  QUERY         TEXT,
  UNIQUE (LINE_NK, DATE_NK, TIME_NK, REQUEST_NK)
);

Output

Som et resultat af analysen af ​​domænenavneserverloggen blev mere end 50 poster censureret og placeret på blokeringslisten.

Nødvendigheden af ​​nogle forespørgsler er godt beskrevet af softwareproducenter og indgyder tillid. Men meget af aktiviteten er ubegrundet og tvivlsom.

Kilde: www.habr.com

Tilføj en kommentar