Kiel vivas la hejma Interreto kaj statistikoj pri domajna nomservilo?

Hejma enkursigilo (ĉi-kaze FritzBox) povas registri multon: kiom da trafiko iras kiam, kiu estas konektita kun kia rapideco, ktp. Domajna nomservilo (DNS) en la loka reto helpis min ekscii, kio estas kaŝita malantaŭ la nekonataj ricevantoj.

Ĝenerale, DNS havis pozitivan efikon sur la hejma reto: ĝi aldonis rapidecon, stabilecon kaj mastreblon.

Malsupre estas diagramo kiu levis demandojn kaj la bezonon kompreni kio okazis. La rezultoj jam filtras konatajn kaj funkciajn petojn al domajnaj nomserviloj.

Kial 60 obskuraj domajnoj estas enketitaj ĉiutage dum ĉiuj ankoraŭ dormas?

Ĉiutage, 440 nekonataj domajnoj estas balotitaj dum aktivaj horoj. Kiuj ili estas kaj kion ili faras?

Meza nombro da petoj tage post horo

Kiel vivas la hejma Interreto kaj statistikoj pri domajna nomservilo?

Demando pri SQL-raporto

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'))

Nokte, sendrata aliro estas malŝaltita kaj agado de aparato estas atendita, t.e. ne estas balotado por nekonataj domajnoj. Ĉi tio signifas, ke la plej granda aktiveco venas de aparatoj kun operaciumoj kiel Android, iOS kaj Blackberry OS.

Ni listigu la domajnojn, kiuj estas intense enketitaj. La intenseco estos determinita de parametroj kiel la nombro da petoj tage, la nombro da tagoj da aktiveco kaj en kiom da horoj de la tago ili estis rimarkitaj.

Ĉiuj atendataj suspektatoj estis en la listo.

Intense enketitaj domajnoj

Kiel vivas la hejma Interreto kaj statistikoj pri domajna nomservilo?

Demando pri SQL-raporto

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

Ni blokas isс.blackberry.com kaj iceberg.blackberry.com, kiujn la fabrikanto pravigos pro sekurecaj kialoj. Rezulto: kiam vi provas konekti al la WLAN, ĝi montras la ensalutpaĝon kaj neniam plu konektiĝas ie ajn. Ni malbloku ĝin.

detectportal.firefox.com estas la sama mekanismo, nur efektivigita en la retumilo Firefox. Se vi bezonas ensaluti en la WLAN-reton, ĝi unue montros la ensalutpaĝon. Ne estas tute klare kial la adreso devus esti pingita tiel ofte, sed la mekanismo estas klare priskribita de la fabrikanto.

skajpo. La agoj de ĉi tiu programo similas al vermo: ĝi kaŝas kaj ne simple lasas sin esti mortigita en la taskobreto, generas multe da trafiko en la reto, pings 10 domajnojn ĉiujn 4 minutojn. Farante videovokon, la interreta konekto konstante rompiĝas, kiam ĝi ne povas esti pli bona. Nuntempe ĝi estas necesa, do ĝi restas.

upload.fp.measure.office.com - rilatas al Office 365, mi ne povis trovi decan priskribon.
browser.pipe.aria.microsoft.com - Mi ne povis trovi decan priskribon.
Ni blokas ambaŭ.

connect.facebook.net - Fejsbuka babilejo. Restaĵoj.

mediator.mail.ru Analizo de ĉiuj petoj por la retregiono mail.ru montris la ĉeeston de grandega nombro da reklamaj rimedoj kaj statistikaj kolektantoj, kio kaŭzas malfidon. La ret-domajno mail.ru estas sendita tute al la nigra listo.

google-analytics.com - ne influas la funkciecon de aparatoj, do ni blokas ĝin.
doubleclick.net - kalkulas reklamajn klakojn. Ni blokas.

Multaj petoj iras al googleapis.com. La blokado kaŭzis la ĝojan ĉesigon de mallongaj mesaĝoj sur la tablojdo, kiuj ŝajnas al mi stultaj. Sed la ludbutiko ĉesis funkcii, do ni malbloku ĝin.

cloudflare.com - ili skribas, ke ili amas malferman fonton kaj, ĝenerale, skribas multe pri si mem. La intenseco de la domajna enketo ne estas tute klara, kio ofte estas multe pli alta ol la reala agado en Interreto. Ni lasu ĝin por nun.

Tiel, la intenseco de petoj ofte rilatas al la postulata funkcieco de la aparatoj. Sed tiuj, kiuj troigis ĝin per agado, ankaŭ estis malkovritaj.

La plej unua

Kiam la sendrata Interreto estas ŝaltita, ĉiuj ankoraŭ dormas kaj eblas vidi kiuj petoj estas senditaj al la reto unue. Do, je 6:50 la Interreto ŝaltiĝas kaj en la unua dekminuta tempodaŭro 60 domajnoj estas balotitaj ĉiutage:

Kiel vivas la hejma Interreto kaj statistikoj pri domajna nomservilo?

Demando pri SQL-raporto

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

Fajrovulpo kontrolas la WLAN-konekton por la ĉeesto de ensaluta paĝo.
Citrix pingas sian servilon kvankam la aplikaĵo ne aktive funkcias.
Symantec kontrolas atestilojn.
Mozilla kontrolas ĝisdatigojn, kvankam en la agordoj mi petis ne fari tion.

mmo.de estas videoludada servo. Plej verŝajne la peto estas iniciatita per fejsbuka babilejo. Ni blokas.

Apple aktivigos ĉiujn siajn servojn. api-glb-fra.smoot.apple.com - se juĝante laŭ la priskribo, ĉiu butonklako estas sendita ĉi tie por serĉilo-optimumigo. Tre suspektinda, sed rilata al funkcieco. Ni lasas ĝin.

La sekvanta estas longa listo de petoj al microsoft.com. Ni blokas ĉiujn domajnojn ekde la tria nivelo.

Nombro de la unuaj subdomajnoj
Kiel vivas la hejma Interreto kaj statistikoj pri domajna nomservilo?

Do, la unuaj 10 minutoj de ŝaltado de la sendrata Interreto.
iOS sondas la plej multajn subdomajnojn - 32. Sekvas Android - 24, poste Vindozo - 15 kaj laste Blackberry - 9.
La fejsbuka aplikaĵo sole sondas 10 domajnojn, skajpo sondas 9 domajnojn.

Informkurso

La fonto por la analizo estis la bind9 loka servila protokoldosiero, kiu enhavas la sekvan formaton:

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)

La dosiero estis importita en sqlite-datumbazon kaj analizita per SQL-demandoj.
La servilo funkcias kiel kaŝmemoro; petoj venas de la enkursigilo, do ĉiam ekzistas unu petokliento. Simpligita tabelstrukturo sufiĉas, t.e. La raporto postulas la tempon de la peto, la peton mem, kaj la duanivelan domajnon por grupigo.

DDL-tabeloj

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)
);

konkludo

Tiel, kiel rezulto de la analizo de la domajna nomo servilo protokolo, pli ol 50 registroj estis cenzuritaj kaj metitaj en la bloklisto.

La neceso de iuj demandoj estas bone priskribita de softvaristoj kaj inspiras konfidon. Tamen, granda parto de la agado estas senbaza kaj dubinda.

fonto: www.habr.com

Aldoni komenton