Гэрийн интернет болон домэйн нэрийн серверийн статистик хэрхэн ажилладаг вэ?

Гэрийн чиглүүлэгч (энэ тохиолдолд FritzBox) маш их зүйлийг бичиж чаддаг: хэр их ачаалал хэзээ явж байгаа, хэн ямар хурдтай холбогдсон гэх мэт. Дотоод сүлжээн дэх домэйн нэрийн сервер (DNS) нь үл мэдэгдэх хүлээн авагчдын ард юу нуугдаж байгааг олж мэдэхэд надад тусалсан.

Ерөнхийдөө DNS нь гэрийн сүлжээнд эерэг нөлөө үзүүлсэн: энэ нь хурд, тогтвортой байдал, удирдах чадварыг нэмсэн.

Доорх нь асуултууд болон юу болж байгааг ойлгох хэрэгцээг бий болгосон диаграмм юм. Үр дүн нь домэйн нэрийн серверт мэдэгдэж байгаа болон ажиллаж буй хүсэлтүүдийг аль хэдийн шүүсэн.

Хүн бүр унтаж байхад яагаад өдөр бүр 60 тодорхойгүй домэйн дээр санал асуулга авдаг вэ?

Өдөр бүр идэвхтэй цагаар 440 үл мэдэгдэх домэйн санал асуулга явуулдаг. Тэд хэн бэ, тэд юу хийдэг вэ?

Өдөрт ирүүлсэн хүсэлтийн дундаж тоо

Гэрийн интернет болон домэйн нэрийн серверийн статистик хэрхэн ажилладаг вэ?

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

Шөнийн цагаар утасгүй холболт идэвхгүй болж, төхөөрөмжийн үйл ажиллагаа хүлээгдэж байна, i.e. үл мэдэгдэх домэйны санал асуулга байхгүй байна. Энэ нь хамгийн их үйл ажиллагаа нь Android, iOS, Blackberry OS зэрэг үйлдлийн системтэй төхөөрөмжүүдээс ирдэг гэсэн үг юм.

Эрчимтэй санал асуулга явуулж буй домайнуудыг жагсаацгаая. Өдөрт ирсэн хүсэлтийн тоо, үйл ажиллагааны өдрийн тоо, өдрийн хэдэн цагт анзаарагдсан зэрэг үзүүлэлтээр эрчимийг тодорхойлно.

Хүлээгдэж буй бүх сэжигтнүүд жагсаалтад багтсан байв.

Эрчимтэй санал асуулга явуулсан домэйн

Гэрийн интернет болон домэйн нэрийн серверийн статистик хэрхэн ажилладаг вэ?

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

Бид isс.blackberry.com болон iceberg.blackberry.com-ыг блоклодог бөгөөд үүнийг үйлдвэрлэгч аюулгүй байдлын үүднээс зөвтгөх болно. Үр дүн: WLAN-д холбогдохыг оролдох үед энэ нь нэвтрэх хуудсыг харуулах бөгөөд хэзээ ч хаана ч холбогдохгүй. Үүнийг блокоос гарцгаая.

detectportal.firefox.com нь ижил механизм бөгөөд зөвхөн Firefox хөтөч дээр хэрэгждэг. Хэрэв та WLAN сүлжээнд нэвтрэх шаардлагатай бол эхлээд нэвтрэх хуудсыг харуулах болно. Яагаад энэ хаягийг байнга ping хийх ёстой нь тодорхойгүй байгаа ч механизмыг үйлдвэрлэгч тодорхой тайлбарласан байдаг.

скайп. Энэ програмын үйлдэл нь өттэй төстэй: энэ нь даалгаврын мөрөнд нуугдаж, өөрийгөө устгахыг зөвшөөрдөггүй, сүлжээнд маш их траффик үүсгэдэг, 10 минут тутамд 4 домайныг ping хийдэг. Видео дуудлага хийх үед интернетийн холболт байнга тасардаг бөгөөд энэ нь илүү дээр байх боломжгүй юм. Одоохондоо энэ нь зайлшгүй шаардлагатай байгаа тул энэ хэвээр байна.

upload.fp.measure.office.com - Office 365-ийг хэлж байна, би хангалттай тайлбар олж чадсангүй.
browser.pipe.aria.microsoft.com - Би хангалттай тайлбар олж чадсангүй.
Бид хоёуланг нь хаадаг.

connect.facebook.net - Facebook чат програм. Үлдсэн.

mediator.mail.ru Mail.ru домэйны бүх хүсэлтийн дүн шинжилгээ нь асар олон тооны зар сурталчилгааны нөөц, статистик цуглуулагчид байгааг харуулсан бөгөөд энэ нь үл итгэх байдлыг үүсгэдэг. Mail.ru домэйныг бүхэлд нь хар жагсаалтад илгээсэн.

google-analytics.com - төхөөрөмжүүдийн үйл ажиллагаанд нөлөөлөхгүй тул бид үүнийг блоклодог.
doubleclick.net - зар сурталчилгааны товшилтыг тоолдог. Бид блоклодог.

Олон хүсэлт googleapis.com руу очдог. Блоклох нь таблет дээрх богино зурвасуудыг баяр хөөртэйгөөр хаахад хүргэсэн бөгөөд энэ нь надад тэнэг санагдаж байна. Гэвч playstore ажиллахаа больсон тул блокыг нь тайлъя.

cloudflare.com - тэд нээлттэй эх сурвалжид дуртай гэж бичдэг бөгөөд ерөнхийдөө өөрсдийнхөө тухай маш их бичдэг. Домэйн судалгааны эрч хүч нь бүрэн тодорхой бус бөгөөд энэ нь Интернет дэх бодит үйл ажиллагаанаас хамаагүй өндөр байдаг. Одоохондоо орхиё.

Тиймээс хүсэлтийн эрч хүч нь ихэвчлэн төхөөрөмжийн шаардлагатай ажиллагаатай холбоотой байдаг. Харин үйл ажиллагаагаа хэтрүүлсэн хүмүүс бас илэрсэн.

Хамгийн анхны

Утасгүй интернетийг асаахад хүн бүр унтсан хэвээр байгаа бөгөөд ямар хүсэлтийг хамгийн түрүүнд сүлжээнд илгээж байгааг харах боломжтой. Тиймээс, 6:50 цагт интернет асч, эхний арван минутын хугацаанд өдөр бүр 60 домэйн санал асуулга явуулдаг.

Гэрийн интернет болон домэйн нэрийн серверийн статистик хэрхэн ажилладаг вэ?

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

Firefox нь WLAN холболтыг нэвтрэх хуудас байгаа эсэхийг шалгадаг.
Аппликешн идэвхтэй ажиллахгүй байгаа ч Citrix сервертээ пинг хийж байна.
Symantec гэрчилгээг баталгаажуулдаг.
Mozilla шинэчлэлтүүдийг шалгадаг ч тохиргоон дотроос би үүнийг хийхгүй байхыг хүссэн.

mmo.de бол тоглоомын үйлчилгээ юм. Хүсэлтийг facebook чатаар эхлүүлсэн байх магадлалтай. Бид блоклодог.

Apple бүх үйлчилгээгээ идэвхжүүлнэ. api-glb-fra.smoot.apple.com - тайлбараас харахад товчлуур дарах бүрийг хайлтын системийг оновчтой болгох зорилгоор энд илгээдэг. Маш сэжигтэй, гэхдээ ажиллагаатай холбоотой. Бид үүнийг орхиж байна.

Дараах нь microsoft.com руу илгээсэн хүсэлтүүдийн урт жагсаалт юм. Бид гурав дахь түвшнээс эхлэн бүх домэйныг блоклодог.

Хамгийн анхны дэд домайнуудын тоо
Гэрийн интернет болон домэйн нэрийн серверийн статистик хэрхэн ажилладаг вэ?

Тиймээс утасгүй интернетийг асаахад эхний 10 минут.
Санал асуулгаар iOS хамгийн олон дэд домайныг авсан - 32. Дараа нь Android - 24, дараа нь Windows - 15, хамгийн сүүлд Blackberry - 9 байна.
Зөвхөн facebook програм нь 10 домэйн, skype 9 домэйны санал асуулга явуулдаг.

Мэдээллийн эх үүсвэр

Шинжилгээний эх сурвалж нь дараах форматыг агуулсан bind9 локал серверийн бүртгэлийн файл байв.

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)

Файлыг sqlite мэдээллийн сан руу оруулж, SQL асуулга ашиглан дүн шинжилгээ хийсэн.
Сервер нь кэшийн үүрэг гүйцэтгэдэг; хүсэлт нь чиглүүлэгчээс ирдэг тул үргэлж нэг хүсэлтийн үйлчлүүлэгч байдаг. Хялбаршуулсан хүснэгтийн бүтэц хангалттай, i.e. Тайлан нь хүсэлтийн хугацаа, хүсэлт өөрөө, бүлэглэхийн тулд хоёр дахь түвшний домайныг шаарддаг.

DDL хүснэгтүүд

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

дүгнэлт

Ийнхүү домэйн нэрийн серверийн бүртгэлд дүн шинжилгээ хийсний үр дүнд 50 гаруй бичлэгийг цензурдаж, блоклох жагсаалтад оруулсан байна.

Зарим асуултын хэрэгцээг програм хангамж үйлдвэрлэгчид сайн тайлбарлаж, өөртөө итгэх итгэлийг төрүүлдэг. Гэсэн хэдий ч ихэнх үйл ажиллагаа нь үндэслэлгүй бөгөөд эргэлзээтэй байдаг.

Эх сурвалж: www.habr.com

сэтгэгдэл нэмэх