Введение 3
1 Интернет-трафик и его роль 5
1.1 Основная проблематика 5
1.1 Визуализация 7
2 Адресное пространство в глобальной сети интернет 9
2.1 IP-адрес 9
2.2 Whois-серверы 10
2.3 Основная проблема при работе с whois-серверами 15
2.4 Неизвестные адреса и traceroute 16
2.5 Общий алгоритм 18
3 Построение приложения 20
3.1 Общая концепция 20
3.2 Серверная часть 22
3.3 Клиентская часть 24
3.4 Работа системы 29
Заключение 31
Список использованных источников 32
Каждый пользователь, в глобальной сети интернет, идентифицируется уникальным номером, называемым IP-адресом. В свою очередь, IP-адрес может быть соотнесен с информацией о пользователе, такой как адрес, телефон и другие контактные данные. Стоит отметить, что в некоторых случаях, информация может отсутствовать, по причине делегирования того или иного адреса каким-либо структурам, которые предпочитают не раскрывать информацию о себе. Существует большое количество задач, в которых нужно получить информацию о большом количестве адресов и по возможности визуализировать ее. Наиболее актуален этот вопрос в сфере, где работа идет с большим количеством пользователей (веб-сервисы, сайты) и часто встает вопрос о выявлении недоброжелательной активности к вашему ресурсу.
Наиболее успешным сервисом, в данной отрасли, является Google Analytics, однако, он больше направлен на предоставление информации для владельцев сайтов, с целью анализа пользовательского сегмента и его последующего увеличения. Также, отсутствует возможность отобразить данные на карте, что на мой взгляд, является важным условием к понимаю ситуации в целом.
Цель бакалаврской работы - создание приложения, способного по IP- адресам, полученным из журнала работы сервера, построить картину их местоположения. Реализовать возможность фильтрации адресов, по таким критериям как регион, количество и время запросов. Также, в данном приложении предполагается возможность получения более полной информации, касательно конкретно IP-адреса, по запросу пользователя.
Система состоит из 2-х главных модулей. Первый - это сервер (реализованный с помощью средств node.js) , отвечающий за поиск информации для заданного набора адресов. Второй - это визуальная часть приложения (реализована с помощью средств AngularJS), визуализирующая информацию, присланную с сервера.
В бакалаврской работе проведено исследование визуализации интернет-трафика. Рассмотрены соответствующие сервисы. Обоснована важность решения задачи визуализации данных об источниках интернет-трафика. Рассмотрены методы и способы получения информации об источниках. Построен соответствующий алгоритм поиска данных относительно IP-адресов. На основе этого алгоритма, сделано клиент-серверное приложение, способное работать в режиме реального времени, предоставляя пользователям визуальную картину в виде картодиаграммы источников интернет-трафика. Данное приложение построено с помощью наиболее удобных и современных технологий, таких как: node.js, AngularJs и Google maps.
Приложение может быть использовано для визуализации источников интернет-трафика, что позволяет географически классифицировать интерес злоумышленников к вашему веб-ресурсу (серверу, сайту). Или наоборот, поможет выяснить географию исходящих от вас запросов.
1 Организация Wireshark [Электронный ресурс] - режим доступа: https://www.wireshark.org/
2 Маркин, Ю.В. Обзор современных инструментов анализа сетевого трафика [Электронный ресурс] - режим доступа: http: //www.ispras .ru/preprints/docs/prep _27_2014 .pdf
3 Организация Google [Электронный ресурс] - утилита Google Analytics - режим доступа:
https://www.google.com/intl/ru_ALL/analytics/features/analysis-tools.html
4 Герчук, Я. П. Графические методы в статистике: учебное пособие / Я.П. Герчук. - Москва : Статистика, 1987.
5 Григорьев, А. А. Краткая географическая энциклопедия [Электронный ресурс] : параграф 3.11 / А. А. Григорьев - 2001. - Режим доступа: http://geoman.ru/books/item/f00/s00/z0000060/st028.shtml
6 Крейг Х. Персональные компьютеры в сетях TCP/IP: Пер. с англ. — К.: Издательская группа BHV, 1997 — 384 c
7 Организация IANA [Электронный ресурс] - режим доступа: http://www.iana.org
8 Организация IANA [Электронный ресурс] - о делегировании адресного пространства - режим доступа: http://www.iana.org/numbers
9 Организация MaxMind [Электронный ресурс] - раздел о компании - режим доступа: https: //www.maxmind.com/ru/about-maxmind
10 Организация Nodejs [Электронный ресурс] - режим доступа: https://nodejs.org/en/about/
11 Mockapetris, P. Request for Comments 1035 / P. Mockapetris - The Internet Engineering Task Force, - 1987
12 Daigle, L. Request for Comments 3912 / L. Daigle - The Internet Engineering Task Force, - 2004
13 RIPE network coordination center [online source] - list of primary
objects - access mode: https://www.ripe.net/manage-ips-and-
asns/db/support/documentation/ripe-database-documentation/ripe-database- structure/3-1-list-of-primary-objects
14 Malkin, G. Request for Comments 1393 / G. Malkin - The Internet Engineering Task Force, - 1993
15 Kowan, K. CommonJS effort sets JavaScript on path for world domination - arstechnica / K. Kowan - 2009
16 Early, A. Documentation for async.js [online source] - documentation - access mode: https://github.com/caolan/async
17 Chris, S. Angular Basics [online source] - access mode: http://www.angularjsbook.com/angular-basics/chapters/introduction/
18 Google Developers [online source] - documentation - access mode: https://developers.google.com/maps/documentation/javascript/
19 Google Developers [online source] - google maps clustering - access mode: https://developers.google.com/maps/articles/toomanymarkers