Giunsa mabuhi ang Internet sa balay ug mga istatistika sa server sa ngalan sa domain?

Ang usa ka router sa balay (sa kini nga kaso nga FritzBox) mahimong makarekord sa daghang: kung unsa kadaghan ang trapiko kung kanus-a, kinsa ang konektado sa unsa nga tulin, ug uban pa. Usa ka domain name server (DNS) sa lokal nga network nakatabang kanako nga mahibal-an kung unsa ang gitago sa luyo sa wala mailhi nga mga nakadawat.

Sa kinatibuk-an, ang DNS adunay positibo nga epekto sa home network: kini nakadugang sa katulin, kalig-on, ug pagdumala.

Sa ubos usa ka diagram nga nagpatunghag mga pangutana ug ang panginahanglan nga masabtan kung unsa ang nahitabo. Ang mga resulta nagsala na sa nahibal-an ug nagtrabaho nga mga hangyo sa mga domain name server.

Ngano nga ang 60 ka dili klaro nga mga domain gisusi matag adlaw samtang ang tanan natulog pa?

Kada adlaw, 440 ka wala mailhi nga mga domain ang gisusi sa mga oras nga aktibo. Kinsa sila ug unsa ang ilang gibuhat?

Average nga gidaghanon sa mga hangyo kada adlaw matag oras

Giunsa mabuhi ang Internet sa balay ug mga istatistika sa server sa ngalan sa domain?

Pangutana sa report sa SQL

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

Sa gabii, ang wireless nga pag-access ma-disable ug ang kalihokan sa device gilauman, i.e. walay polling alang sa wala mailhi nga mga dominyo. Kini nagpasabot nga ang pinakadako nga kalihokan nagagikan sa mga device nga adunay operating system sama sa Android, iOS ug Blackberry OS.

Atong ilista ang mga dominyo nga gisusi pag-ayo. Ang intensity matino pinaagi sa mga parameter sama sa gidaghanon sa mga hangyo kada adlaw, ang gidaghanon sa mga adlaw sa kalihokan ug sa pila ka oras sa adlaw nga sila namatikdan.

Naa sa listahan ang tanang gipaabot nga mga suspek.

Intensive polled domains

Giunsa mabuhi ang Internet sa balay ug mga istatistika sa server sa ngalan sa domain?

Pangutana sa report sa SQL

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

Gibabagan namo ang isс.blackberry.com ug iceberg.blackberry.com, nga ipakamatarong sa tiggama alang sa mga hinungdan sa seguridad. Resulta: sa pagsulay sa pagkonektar sa WLAN, kini nagpakita sa login page ug dili na magkonektar bisan asa pag-usab. I-unblock nato.

detectportal.firefox.com mao ang sama nga mekanismo, gipatuman lamang sa Firefox browser. Kung kinahanglan nimo nga mag log in sa WLAN network, una nga ipakita niini ang login page. Dili kini hingpit nga tin-aw kung ngano nga ang adres kinahanglan nga i-ping kanunay, apan ang mekanismo klaro nga gihulagway sa tiggama.

skype. Ang mga aksyon niini nga programa susama sa usa ka ulod: kini nagtago ug dili lang motugot sa iyang kaugalingon nga patyon sa taskbar, makamugna og daghang trapiko sa network, mag-ping sa 10 ka domain matag 4 minutos. Kung maghimo usa ka video call, ang koneksyon sa Internet kanunay nga maguba, kung dili kini mahimong mas maayo. Sa pagkakaron kini gikinahanglan, mao nga kini nagpabilin.

upload.fp.measure.office.com - nagtumong sa Office 365, wala ko makit-an ang usa ka desente nga paghulagway.
browser.pipe.aria.microsoft.com - Wala ko makakitag desenteng deskripsyon.
Gi block namo duha.

connect.facebook.net - Facebook chat application. Nagpabilin.

mediator.mail.ru Usa ka pagtuki sa tanan nga mga hangyo alang sa mail.ru domain nagpakita sa presensya sa usa ka dako nga gidaghanon sa mga kapanguhaan sa advertising ug statistics collectors, nga hinungdan sa walay pagsalig. Ang domain sa mail.ru gipadala sa bug-os sa blacklist.

google-analytics.com - dili makaapekto sa pagpaandar sa mga himan, mao nga gibabagan namo kini.
doubleclick.net - nag-ihap sa mga pag-klik sa advertising. Gi block mi.

Daghang mga hangyo moadto sa googleapis.com. Ang pag-block misangpot sa malipayong pagsira sa mugbong mga mensahe sa tablet, nga morag tanga para nako. Pero nihunong ang playstore, mao nga i-unblock nato.

cloudflare.com - nagsulat sila nga ganahan sila sa open source ug, sa kinatibuk-an, nagsulat og daghan mahitungod sa ilang kaugalingon. Ang intensity sa domain survey dili hingpit nga klaro, nga kasagaran mas taas pa kay sa aktwal nga kalihokan sa Internet. Pasagdi lang ta sa pagkakaron.

Sa ingon, ang kakusog sa mga hangyo kanunay nga adunay kalabotan sa gikinahanglan nga pag-andar sa mga aparato. Apan nadiskubrehan usab ang mga nagsobra sa kalihokan.

Ang labing una

Kung gi-on ang wireless Internet, ang tanan natulog pa ug posible nga makita kung unsang mga hangyo ang una nga ipadala sa network. Busa, sa 6:50 ang Internet mo-on ug sa unang napulo ka minuto nga yugto sa panahon 60 ka domain ang gisusi kada adlaw:

Giunsa mabuhi ang Internet sa balay ug mga istatistika sa server sa ngalan sa domain?

Pangutana sa report sa SQL

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

Gisusi sa Firefox ang koneksyon sa WLAN alang sa presensya sa usa ka panid sa pag-login.
Gi-ping ni Citrix ang server niini bisan kung ang aplikasyon dili aktibo nga nagdagan.
Ang Symantec nagpamatuod sa mga sertipiko.
Gisusi sa Mozilla ang mga update, bisan kung sa mga setting gihangyo ko nga dili kini buhaton.

Ang mmo.de usa ka serbisyo sa pagdula. Lagmit ang hangyo gisugdan pinaagi sa facebook chat. Gi block mi.

I-aktibo sa Apple ang tanan nga mga serbisyo niini. api-glb-fra.smoot.apple.com - kung hukman pinaagi sa paghulagway, ang matag pag-klik sa buton gipadala dinhi alang sa katuyoan sa pag-optimize sa search engine. Labing kadudahan, apan may kalabutan sa pagpaandar. Among gibiyaan.

Ang mosunod usa ka taas nga lista sa mga hangyo sa microsoft.com. Gibabagan namo ang tanang domain sugod sa ikatulo nga lebel.

Gidaghanon sa labing una nga mga subdomain
Giunsa mabuhi ang Internet sa balay ug mga istatistika sa server sa ngalan sa domain?

Mao nga, ang una nga 10 minuto sa pag-on sa wireless Internet.
Gipili sa iOS ang kadaghanan nga mga subdomain - 32. Gisundan sa Android - 24, dayon Windows - 15 ug katapusan Blackberry - 9.
Ang aplikasyon sa facebook nag-inusara nga nagboto sa 10 ka mga domain, ang skype nga mga poll sa 9 nga mga domain.

Usa ka tinubdan sa impormasyon

Ang tinubdan sa pagtuki mao ang bind9 lokal nga server log file, nga naglangkob sa mosunod nga 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)

Ang file gi-import sa usa ka sqlite database ug gisusi gamit ang mga pangutana sa SQL.
Ang server naglihok isip usa ka cache; ang mga hangyo gikan sa router, mao nga adunay kanunay nga usa ka hangyo nga kliyente. Ang usa ka gipasimple nga istraktura sa lamesa igo na, i.e. Ang taho nagkinahanglan sa panahon sa hangyo, sa hangyo mismo, ug sa ikaduhang lebel nga dominyo para sa paggrupo.

DDL nga mga lamesa

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

konklusyon

Busa, isip resulta sa pagtuki sa domain name server log, labaw sa 50 ka mga rekord ang gisensor ug gibutang sa block list.

Ang panginahanglan sa pipila ka mga pangutana maayo nga gihulagway sa mga tiggama sa software ug nagdasig sa pagsalig. Bisan pa, kadaghanan sa kalihokan wala’y sukaranan ug kwestyonable.

Source: www.habr.com

Idugang sa usa ka comment