āĻāĻāĻāĻŋ āĻšā§āĻŽ āĻ°āĻžāĻāĻāĻžāĻ° (āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ FritzBox) āĻ āĻ¨ā§āĻ āĻāĻŋāĻā§ āĻ°ā§āĻāĻ°ā§āĻĄ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§: āĻāĻāĻ¨ āĻāĻ¤ āĻā§āĻ°ā§āĻ¯āĻžāĻĢāĻŋāĻ āĻ¯āĻžāĻā§āĻā§, āĻā§ āĻā§ āĻāĻ¤āĻŋāĻ¤ā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻā§ āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋāĨ¤ āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻā§ āĻāĻāĻāĻŋ āĻĄā§āĻŽā§āĻ¨ āĻ¨āĻžāĻŽ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° (DNS) āĻāĻŽāĻžāĻā§ āĻ āĻāĻžāĻ¨āĻž āĻĒā§āĻ°āĻžāĻĒāĻāĻĻā§āĻ° āĻĒāĻŋāĻāĻ¨ā§ āĻā§ āĻ˛ā§āĻāĻŋāĻ¯āĻŧā§ āĻāĻŋāĻ˛ āĻ¤āĻž āĻā§āĻāĻā§ āĻŦā§āĻ° āĻāĻ°āĻ¤ā§ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻāĻ°ā§āĻā§āĨ¤
āĻ¸āĻžāĻŽāĻā§āĻ°āĻŋāĻāĻāĻžāĻŦā§, DNS āĻšā§āĻŽ āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻā§ āĻāĻ¤āĻŋāĻŦāĻžāĻāĻ āĻĒā§āĻ°āĻāĻžāĻŦ āĻĢā§āĻ˛ā§āĻā§: āĻāĻāĻŋ āĻāĻ¤āĻŋ, āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻļā§āĻ˛āĻ¤āĻž āĻāĻŦāĻ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻžāĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¯ā§āĻ āĻāĻ°ā§āĻā§āĨ¤
āĻ¨ā§āĻā§ āĻāĻāĻāĻŋ āĻāĻŋāĻ¤ā§āĻ° āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻž āĻĒā§āĻ°āĻļā§āĻ¨ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§āĻā§ āĻāĻŦāĻ āĻā§ āĻāĻāĻāĻŋāĻ˛ āĻ¤āĻž āĻŦā§āĻāĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨āĨ¤ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§ āĻĄā§āĻŽā§āĻ¨ āĻ¨āĻžāĻŽ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§ āĻĒāĻ°āĻŋāĻāĻŋāĻ¤ āĻāĻŦāĻ āĻāĻžāĻ°ā§āĻ¯āĻāĻ°ā§ āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻĢāĻŋāĻ˛ā§āĻāĻžāĻ° āĻāĻāĻ.
āĻā§āĻ¨ 60āĻāĻŋ āĻ āĻ¸ā§āĻĒāĻˇā§āĻ āĻĄā§āĻŽā§āĻ¨ āĻĒā§āĻ°āĻ¤āĻŋāĻĻāĻŋāĻ¨ āĻĒā§āĻ˛ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯āĻāĻ¨ āĻ¸āĻŦāĻžāĻ āĻāĻāĻ¨āĻ āĻā§āĻŽāĻžāĻā§āĻā§?
āĻĒā§āĻ°āĻ¤āĻŋāĻĻāĻŋāĻ¨, 440āĻāĻŋ āĻ
āĻāĻžāĻ¨āĻž āĻĄā§āĻŽā§āĻ¨ āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻ¸āĻŽāĻ¯āĻŧā§ āĻĒā§āĻ˛ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¤āĻžāĻ°āĻž āĻāĻžāĻ°āĻž āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻž āĻāĻŋ āĻāĻ°ā§?
āĻāĻŖā§āĻāĻžāĻ¯āĻŧ āĻĒā§āĻ°āĻ¤āĻŋāĻĻāĻŋāĻ¨ āĻ āĻ¨ā§āĻ°ā§āĻ§ā§āĻ° āĻāĻĄāĻŧ āĻ¸āĻāĻā§āĻ¯āĻž
āĻāĻ¸āĻāĻŋāĻāĻāĻ˛ āĻ°āĻŋāĻĒā§āĻ°ā§āĻ āĻā§āĻ¯ā§āĻ¯āĻŧāĻžāĻ°ā§
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'))
āĻ°āĻžāĻ¤ā§, āĻāĻ¯āĻŧā§āĻ¯āĻžāĻ°āĻ˛ā§āĻ¸ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻ āĻā§āĻˇāĻŽ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻĄāĻŋāĻāĻžāĻāĻ¸ āĻāĻžāĻ°ā§āĻ¯āĻāĻ˛āĻžāĻĒ āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻļāĻŋāĻ¤, āĻ¯ā§āĻŽāĻ¨ āĻ āĻāĻžāĻ¨āĻž āĻĄā§āĻŽā§āĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ¨ āĻĒā§āĻ˛āĻŋāĻ āĻ¨ā§āĻāĨ¤ āĻāĻ° āĻŽāĻžāĻ¨ā§ āĻšāĻ˛ āĻ¯ā§ Android, iOS āĻāĻŦāĻ Blackberry OS āĻāĻ° āĻŽāĻ¤ā§ āĻ āĻĒāĻžāĻ°ā§āĻāĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻ¸āĻš āĻĄāĻŋāĻāĻžāĻāĻ¸āĻā§āĻ˛āĻŋ āĻĨā§āĻā§ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻŦā§āĻļāĻŋ āĻāĻžāĻ°ā§āĻ¯āĻāĻ˛āĻžāĻĒ āĻāĻ¸ā§ā§ˇ
āĻāĻ¸ā§āĻ¨ āĻ¨āĻŋāĻŦāĻŋāĻĄāĻŧāĻāĻžāĻŦā§ āĻĒā§āĻ˛ āĻāĻ°āĻž āĻĄā§āĻŽā§āĻ¨āĻā§āĻ˛āĻŋāĻ° āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻ°āĻŋāĨ¤ āĻ¤ā§āĻŦā§āĻ°āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°āĻž āĻšāĻŦā§ āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋāĻā§āĻ˛āĻŋāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¯ā§āĻŽāĻ¨ āĻĒā§āĻ°āĻ¤āĻŋāĻĻāĻŋāĻ¨ āĻ āĻ¨ā§āĻ°ā§āĻ§ā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž, āĻāĻžāĻ°ā§āĻ¯āĻāĻ˛āĻžāĻĒā§āĻ° āĻĻāĻŋāĻ¨ā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻāĻŦāĻ āĻĻāĻŋāĻ¨ā§āĻ° āĻāĻ¤ āĻāĻ¨ā§āĻāĻž āĻ¤āĻžāĻ°āĻž āĻ˛āĻā§āĻˇā§āĻ¯ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤
āĻ¸āĻŦ āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻļāĻŋāĻ¤ āĻ¸āĻ¨ā§āĻĻā§āĻšāĻāĻžāĻāĻ¨ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ¯āĻŧ āĻāĻŋāĻ˛.
āĻ¨āĻŋāĻŦāĻŋāĻĄāĻŧāĻāĻžāĻŦā§ āĻĒā§āĻ˛ āĻāĻ°āĻž āĻĄā§āĻŽā§āĻ¨
āĻāĻ¸āĻāĻŋāĻāĻāĻ˛ āĻ°āĻŋāĻĒā§āĻ°ā§āĻ āĻā§āĻ¯ā§āĻ¯āĻŧāĻžāĻ°ā§
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 āĻāĻāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĢāĻžāĻ¯āĻŧāĻžāĻ°āĻĢāĻā§āĻ¸ āĻŦā§āĻ°āĻžāĻāĻāĻžāĻ°ā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ WLAN āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻā§ āĻ˛āĻ āĻāĻ¨ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ¤āĻŦā§ āĻāĻāĻŋ āĻĒā§āĻ°āĻĨāĻŽā§ āĻ˛āĻāĻāĻ¨ āĻĒā§āĻˇā§āĻ āĻžāĻāĻŋ āĻĻā§āĻāĻžāĻŦā§āĨ¤ āĻā§āĻ¨ āĻ āĻŋāĻāĻžāĻ¨āĻžāĻāĻŋ āĻāĻ¤ āĻāĻ¨ āĻāĻ¨ āĻĒāĻŋāĻ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¤āĻž āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ°ā§āĻĒā§ āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ° āĻ¨āĻ¯āĻŧ, āĻ¤āĻŦā§ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤āĻāĻžāĻ°āĻā§āĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻŋ āĻ¸ā§āĻĒāĻˇā§āĻāĻāĻžāĻŦā§ āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻ¸ā§āĻāĻžāĻāĻĒ āĻāĻ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ° āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§āĻ˛āĻŋ āĻāĻāĻāĻŋ āĻā§āĻā§āĻ° āĻŽāĻ¤ā§: āĻāĻāĻŋ āĻ˛ā§āĻāĻŋāĻ¯āĻŧā§ āĻ°āĻžāĻā§ āĻāĻŦāĻ āĻā§āĻŦāĻ˛ āĻāĻžāĻ¸ā§āĻāĻŦāĻžāĻ°ā§ āĻ¨āĻŋāĻā§āĻā§ āĻŽāĻžāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧ āĻ¨āĻž, āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻā§ āĻĒā§āĻ°āĻā§āĻ° āĻā§āĻ°ā§āĻ¯āĻžāĻĢāĻŋāĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§, āĻĒā§āĻ°āĻ¤āĻŋ 10 āĻŽāĻŋāĻ¨āĻŋāĻā§ 4āĻāĻŋ āĻĄā§āĻŽā§āĻ¨ āĻĒāĻŋāĻ āĻāĻ°ā§āĨ¤ āĻāĻāĻāĻŋ āĻāĻŋāĻĄāĻŋāĻ āĻāĻ˛ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻ¨ā§āĻāĻžāĻ°āĻ¨ā§āĻ āĻ¸āĻāĻ¯ā§āĻ āĻā§āĻ°āĻŽāĻžāĻāĻ¤ āĻā§āĻā§ āĻ¯āĻžāĻ¯āĻŧ, āĻ¯āĻāĻ¨ āĻāĻāĻŋ āĻāĻžāĻ˛ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻžāĨ¤ āĻāĻĒāĻžāĻ¤āĻ¤ āĻāĻāĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ, āĻ¤āĻžāĻ āĻāĻāĻŋ āĻĨā§āĻā§ āĻ¯āĻžāĻ¯āĻŧāĨ¤
upload.fp.measure.office.com - āĻ
āĻĢāĻŋāĻ¸ 365 āĻŦā§āĻāĻžāĻ¯āĻŧ, āĻāĻŽāĻŋ āĻāĻāĻāĻŋ āĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻŦāĻŋāĻŦāĻ°āĻŖ āĻā§āĻāĻā§ āĻĒāĻžāĻāĻ¨āĻŋāĨ¤
browser.pipe.aria.microsoft.com - āĻāĻŽāĻŋ āĻāĻāĻāĻŋ āĻļāĻžāĻ˛ā§āĻ¨ āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻā§āĻāĻā§ āĻĒāĻžāĻāĻ¨āĻŋāĨ¤
āĻāĻŽāĻ°āĻž āĻāĻāĻ¯āĻŧāĻ āĻŦā§āĻ˛āĻ āĻāĻ°āĻŋāĨ¤
connect.facebook.net - āĻĢā§āĻ¸āĻŦā§āĻ āĻā§āĻ¯āĻžāĻ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĨ¤ āĻĨā§āĻā§ āĻ¯āĻžāĻ¯āĻŧāĨ¤
mediator.mail.ru mail.ru āĻĄā§āĻŽā§āĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ āĻ¨ā§āĻ°ā§āĻ§ā§āĻ° āĻāĻāĻāĻŋ āĻŦāĻŋāĻļā§āĻ˛ā§āĻˇāĻŖā§ āĻŦāĻŋāĻĒā§āĻ˛ āĻ¸āĻāĻā§āĻ¯āĻ āĻŦāĻŋāĻā§āĻāĻžāĻĒāĻ¨ āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻŦāĻ āĻĒāĻ°āĻŋāĻ¸āĻāĻā§āĻ¯āĻžāĻ¨ āĻ¸āĻāĻā§āĻ°āĻžāĻšāĻāĻĻā§āĻ° āĻāĻĒāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋ āĻĻā§āĻāĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻā§, āĻ¯āĻž āĻ āĻŦāĻŋāĻļā§āĻŦāĻžāĻ¸ā§āĻ° āĻāĻžāĻ°āĻŖāĨ¤ mail.ru āĻĄā§āĻŽā§āĻāĻ¨ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ°ā§āĻĒā§ āĻāĻžāĻ˛ā§ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ¯āĻŧ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻā§āĨ¤
google-analytics.com - āĻĄāĻŋāĻāĻžāĻāĻ¸ā§āĻ° āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻāĻ°ā§ āĻ¨āĻž, āĻ¤āĻžāĻ āĻāĻŽāĻ°āĻž āĻāĻāĻŋ āĻŦā§āĻ˛āĻ āĻāĻ°āĻŋāĨ¤
doubleclick.net - āĻŦāĻŋāĻā§āĻāĻžāĻĒāĻ¨ā§āĻ° āĻā§āĻ˛āĻŋāĻ āĻāĻŖāĻ¨āĻž āĻāĻ°ā§āĨ¤ āĻāĻŽāĻ°āĻž āĻŦā§āĻ˛āĻ āĻāĻ°āĻŋāĨ¤
āĻ āĻ¨ā§āĻ āĻ āĻ¨ā§āĻ°ā§āĻ§ googleapis.com āĻ āĻ¯āĻžāĻ¨āĨ¤ āĻŦā§āĻ˛āĻ āĻāĻ°āĻžāĻ° āĻĢāĻ˛ā§ āĻā§āĻ¯āĻžāĻŦāĻ˛ā§āĻā§ āĻ¸āĻāĻā§āĻˇāĻŋāĻĒā§āĻ¤ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻā§āĻ˛āĻŋ āĻāĻ¨āĻ¨ā§āĻĻāĻĻāĻžāĻ¯āĻŧāĻ āĻŦāĻ¨ā§āĻ§ āĻšāĻ¯āĻŧā§ āĻā§āĻā§, āĻ¯āĻž āĻāĻŽāĻžāĻ° āĻāĻžāĻā§ āĻ¨āĻŋāĻ°ā§āĻŦā§āĻ§ āĻŦāĻ˛ā§ āĻŽāĻ¨ā§ āĻšāĻā§āĻā§āĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻĒā§āĻ˛ā§āĻ¸ā§āĻā§āĻ°āĻāĻŋ āĻāĻžāĻ āĻāĻ°āĻž āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§ āĻĻāĻŋāĻ¯āĻŧā§āĻā§, āĻ¤āĻžāĻ āĻāĻāĻŋāĻā§ āĻāĻ¨āĻŦā§āĻ˛āĻ āĻāĻ°āĻž āĻ¯āĻžāĻāĨ¤
cloudflare.com - āĻ¤āĻžāĻ°āĻž āĻ˛āĻŋāĻā§ āĻ¯ā§ āĻ¤āĻžāĻ°āĻž āĻāĻĒā§āĻ¨ āĻ¸ā§āĻ°ā§āĻ¸ āĻĒāĻāĻ¨ā§āĻĻ āĻāĻ°ā§ āĻāĻŦāĻ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻāĻžāĻŦā§ āĻ¨āĻŋāĻā§āĻĻā§āĻ° āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ āĻ¨ā§āĻ āĻāĻŋāĻā§ āĻ˛ā§āĻā§āĨ¤ āĻĄā§āĻŽā§āĻ¨ āĻ¸āĻŽā§āĻā§āĻˇāĻžāĻ° āĻ¤ā§āĻŦā§āĻ°āĻ¤āĻž āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ°ā§āĻĒā§ āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ° āĻ¨āĻ¯āĻŧ, āĻ¯āĻž āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻļāĻ āĻāĻ¨ā§āĻāĻžāĻ°āĻ¨ā§āĻā§ āĻĒā§āĻ°āĻā§āĻ¤ āĻāĻžāĻ°ā§āĻ¯āĻāĻ˛āĻžāĻĒā§āĻ° āĻā§āĻ¯āĻŧā§ āĻ āĻ¨ā§āĻ āĻŦā§āĻļāĻŋāĨ¤ āĻāĻĒāĻžāĻ¤āĻ¤ āĻ°ā§āĻā§ āĻĻāĻŋāĻāĨ¤
āĻ¸ā§āĻ¤āĻ°āĻžāĻ, āĻ āĻ¨ā§āĻ°ā§āĻ§ā§āĻ° āĻ¤ā§āĻŦā§āĻ°āĻ¤āĻž āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻļāĻ āĻĄāĻŋāĻāĻžāĻāĻ¸āĻā§āĻ˛āĻŋāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻžāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤āĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¯āĻžāĻ°āĻž āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ˛āĻžāĻĒā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻŋ āĻŦāĻžāĻĄāĻŧāĻžāĻ¯āĻŧ āĻ¤āĻžāĻĻā§āĻ°āĻ āĻāĻŦāĻŋāĻˇā§āĻāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤
āĻ¸āĻ°ā§āĻŦ āĻĒā§āĻ°āĻĨāĻŽ
āĻ¯āĻāĻ¨ āĻāĻ¯āĻŧā§āĻ¯āĻžāĻ°āĻ˛ā§āĻ¸ āĻāĻ¨ā§āĻāĻžāĻ°āĻ¨ā§āĻ āĻāĻžāĻ˛ā§ āĻĨāĻžāĻā§, āĻ¤āĻāĻ¨āĻ āĻ¸āĻŦāĻžāĻ āĻā§āĻŽāĻŋāĻ¯āĻŧā§ āĻĨāĻžāĻā§ āĻāĻŦāĻ āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻā§ āĻĒā§āĻ°āĻĨāĻŽā§ āĻā§āĻ¨ āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻšāĻ¯āĻŧ āĻ¤āĻž āĻĻā§āĻāĻž āĻ¸āĻŽā§āĻāĻŦāĨ¤ āĻ¸ā§āĻ¤āĻ°āĻžāĻ, 6:50 āĻ āĻāĻ¨ā§āĻāĻžāĻ°āĻ¨ā§āĻ āĻāĻžāĻ˛ā§ āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻĒā§āĻ°āĻĨāĻŽ āĻĻāĻļ āĻŽāĻŋāĻ¨āĻŋāĻā§āĻ° āĻ¸āĻŽāĻ¯āĻŧā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻĻāĻŋāĻ¨ 60āĻāĻŋ āĻĄā§āĻŽā§āĻāĻ¨ āĻĒā§āĻ˛ āĻāĻ°āĻž āĻšāĻ¯āĻŧ:
āĻāĻ¸āĻāĻŋāĻāĻāĻ˛ āĻ°āĻŋāĻĒā§āĻ°ā§āĻ āĻā§āĻ¯ā§āĻ¯āĻŧāĻžāĻ°ā§
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
āĻĢāĻžāĻ¯āĻŧāĻžāĻ°āĻĢāĻā§āĻ¸ āĻāĻāĻāĻŋ āĻ˛āĻāĻāĻ¨ āĻĒā§āĻˇā§āĻ āĻžāĻ° āĻāĻĒāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ° āĻāĻ¨ā§āĻ¯ WLAN āĻ¸āĻāĻ¯ā§āĻ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§āĨ¤
āĻ¸āĻŋāĻā§āĻ°āĻŋāĻā§āĻ¸ āĻ¤āĻžāĻ° āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°āĻā§ āĻĒāĻŋāĻ āĻāĻ°āĻā§ āĻ¯āĻĻāĻŋāĻ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋ āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ āĻāĻ˛āĻā§ āĻ¨āĻžāĨ¤
Symantec āĻ¸āĻžāĻ°ā§āĻāĻŋāĻĢāĻŋāĻā§āĻ āĻ¯āĻžāĻāĻžāĻ āĻāĻ°ā§āĨ¤
Mozilla āĻāĻĒāĻĄā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ āĻāĻ°ā§, āĻ¯āĻĻāĻŋāĻ āĻ¸ā§āĻāĻŋāĻāĻ¸ā§ āĻāĻŽāĻŋ āĻāĻāĻŋ āĻ¨āĻž āĻāĻ°āĻ¤ā§ āĻŦāĻ˛ā§āĻāĻŋāĨ¤
mmo.de āĻāĻāĻāĻŋ āĻā§āĻŽāĻŋāĻ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻžāĨ¤ āĻā§āĻŦ āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻ āĻ¨ā§āĻ°ā§āĻ§āĻāĻŋ āĻĢā§āĻ¸āĻŦā§āĻ āĻā§āĻ¯āĻžāĻā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻļā§āĻ°ā§ āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻŽāĻ°āĻž āĻŦā§āĻ˛āĻ āĻāĻ°āĻŋāĨ¤
āĻ ā§āĻ¯āĻžāĻĒāĻ˛ āĻ¤āĻžāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻāĻ°āĻŦā§āĨ¤ api-glb-fra.smoot.apple.com - āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦāĻŋāĻāĻžāĻ°, āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŦā§āĻ¤āĻžāĻŽ āĻā§āĻ˛āĻŋāĻ āĻ¸āĻžāĻ°ā§āĻ āĻāĻā§āĻāĻŋāĻ¨ āĻ āĻĒā§āĻāĻŋāĻŽāĻžāĻāĻā§āĻļāĻžāĻ¨ āĻāĻĻā§āĻĻā§āĻļā§āĻ¯ā§ āĻāĻāĻžāĻ¨ā§ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻšāĻ¯āĻŧ. āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻ¸āĻ¨ā§āĻĻā§āĻšāĻāĻ¨āĻ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤āĨ¤ āĻāĻŽāĻ°āĻž āĻāĻāĻž āĻā§āĻĄāĻŧā§.
āĻ¨āĻŋāĻā§ microsoft.com-āĻāĻ° āĻ āĻ¨ā§āĻ°ā§āĻ§ā§āĻ° āĻāĻāĻāĻŋ āĻĻā§āĻ°ā§āĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻŽāĻ°āĻž āĻ¤ā§āĻ¤ā§āĻ¯āĻŧ āĻ¸ā§āĻ¤āĻ° āĻĨā§āĻā§ āĻļā§āĻ°ā§ āĻāĻ°ā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĄā§āĻŽā§āĻāĻ¨ āĻŦā§āĻ˛āĻ āĻāĻ°āĻŋāĨ¤
āĻĒā§āĻ°āĻĨāĻŽ āĻ¸āĻžāĻŦāĻĄā§āĻŽā§āĻ¨ā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž
āĻ¸ā§āĻ¤āĻ°āĻžāĻ, āĻāĻ¯āĻŧā§āĻ¯āĻžāĻ°āĻ˛ā§āĻ¸ āĻāĻ¨ā§āĻāĻžāĻ°āĻ¨ā§āĻ āĻāĻžāĻ˛ā§ āĻāĻ°āĻžāĻ° āĻĒā§āĻ°āĻĨāĻŽ 10 āĻŽāĻŋāĻ¨āĻŋāĻāĨ¤
iOS āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻŦā§āĻļāĻŋ āĻ¸āĻžāĻŦāĻĄā§āĻŽā§āĻ¨ āĻĒā§āĻ˛ āĻāĻ°ā§ - 32. āĻāĻ°āĻĒāĻ° āĻ
ā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ°āĻ¯āĻŧā§āĻĄ - 24, āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻāĻāĻ¨ā§āĻĄā§āĻ - 15 āĻāĻŦāĻ āĻ¸āĻŦāĻļā§āĻˇā§ āĻŦā§āĻ˛ā§āĻ¯āĻžāĻāĻŦā§āĻ°āĻŋ - 9āĨ¤
āĻĢā§āĻ¸āĻŦā§āĻ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻāĻāĻž āĻĒā§āĻ˛ 10 āĻĄā§āĻŽā§āĻāĻ¨, āĻ¸ā§āĻāĻžāĻāĻĒ āĻĒā§āĻ˛ 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 āĻā§āĻ¯āĻŧā§āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻŦāĻŋāĻļā§āĻ˛ā§āĻˇāĻŖ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤
āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻāĻāĻāĻŋ āĻā§āĻ¯āĻžāĻļā§ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§; āĻ
āĻ¨ā§āĻ°ā§āĻ§ āĻ°āĻžāĻāĻāĻžāĻ° āĻĨā§āĻā§ āĻāĻ¸ā§, āĻ¤āĻžāĻ āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻāĻāĻāĻŋ āĻ
āĻ¨ā§āĻ°ā§āĻ§ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻĨāĻžāĻā§āĨ¤ āĻāĻāĻāĻŋ āĻ¸āĻ°āĻ˛ā§āĻā§āĻ¤ āĻā§āĻŦāĻŋāĻ˛ āĻāĻ āĻ¨ āĻ¯āĻĨā§āĻˇā§āĻ, āĻ¯ā§āĻŽāĻ¨ āĻĒā§āĻ°āĻ¤āĻŋāĻŦā§āĻĻāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ
āĻ¨ā§āĻ°ā§āĻ§ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻ
āĻ¨ā§āĻ°ā§āĻ§ āĻ¨āĻŋāĻā§āĻ āĻāĻŦāĻ āĻā§āĻ°ā§āĻĒāĻŋāĻāĻ¯āĻŧā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĻā§āĻŦāĻŋāĻ¤ā§āĻ¯āĻŧ-āĻ¸ā§āĻ¤āĻ°ā§āĻ° āĻĄā§āĻŽā§āĻ¨ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨āĨ¤
āĻĄāĻŋāĻĄāĻŋāĻāĻ˛ āĻā§āĻŦāĻŋāĻ˛
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