Приглашаем принять участие во Всероссийском конкурсе студенческих работ проекта «Профстажировки 2.0», реализуемого АНО «Россия – страна возможностей» совместно с Общероссийским народным фронтом.
На платформе проекта партнеры-работодатели разместили практико-ориентированные задания (кейсы). Участники – студенты вузов и колледжей – начнут выполнять их в качестве дипломных и курсовых работ. Победители получают приглашения на практику.
Для участия необходимо пройти регистрацию на сайте проекта.
SLA-агент – механизм диагностики
состояния сети на стороне конечного пользователя. Его задача заключается в
периодической отправке статистических данных, собранных устройством с системных
счетчиков, а также результатов проверки доступности заранее заданных узлов
утилитами Ping и Traceroute.
Web-интерфейс SLA-сервера от
компании D-Link разработан на фреймворке AngularJS. Как известно, AngularJS
устарел и имеет ряд серьезных недостатков. Конкурсанту предлагается разработать
свою версию web-интерфейса с использованием следующего поколения фреймворка angular.
В качестве backend’а можно использовать любую подходящую технологию и язык.
Для решений кейса развернут тестовый
SLA-сервер по адресу http://mysla.dlink.ru. Доступна учетная запись test/test.
HTTP API доступен онлайн по адресу http://mysla.dlink.ru:8090/api. Выполнение задания предполагает активное использование
инструментов разработки браузера для получения информации о HTTP API. По
запросу конкурсанту могут быть выданы исходные коды API.
Методы:
•
GET /info/prev/:mac/:timestamp
- Информация о данном устройстве из лога, предшествующего заданному моменту
времени.
•
GET /info/:mac/:timestamp -
Информация о данном устройстве в заданный момент времени.
•
GET /info/totalDevices -
Общее количество устройств в базе.
•
GET /info/firmware - Общий
список устройств с названием модели, версией прошивки и MAC-адресом.
•
GET /logs/info/prev/:mac/:timestamp
- Информация о предыдущем логе.
•
GET /logs/info/next/:mac/:timestamp
- Информация о следующем логе.
•
GET /logs/timestamps/:mac/:day/:month/:year
- Список timestamp’ов, в которые прилетали логи от устройства за указанный
день.
•
GET /logs/:mac/:day/:month/:year
- Список логов, прилетевших от устройства за указанный день.
•
GET /events/timestamps/:mac/:day/:month/:year
- Список timestamp’ов, в которые прилетали логи событий от устройства за
указанный день.
•
GET /macs/ip/:ip - Список
MAC-адресов по заданным IP.
•
GET /macs/avail/:timestamp -
Список MAC-адресов, приславших логи после заданного момента времени.
Получение информации по дням:
• GET /wan/:mac/:day/:month/:year
• GET /lan/:port/:mac/:day/:month/:year
• GET /summary/:mac/:day/:month/:year
• GET /wifi/:freq/:mac/:day/:month/:year
• GET /info/:mac/:day/:month/:year
• GET /wifi/clients/:mac/:day/:month/:year
• GET /system/:mac/:day/:month/:year
Аутентификация:
Вызов метода POST /api/login
c полезной нагрузкой {username:
username, password: md5.createHash(password)} возвращает объект с полями:
•
token - Токен доступа.
•
permission - Права доступа.
•
user - Имя пользователя.
Поле token следует сохранить и прикреплять к каждому
последующему запросу в заголовке запроса «Token».
Кейс компании D-Link – «Внедрение
технологии L2TP v3 в xl2tpd»
В рамках выполнения конкурсной работы
предлагается добавить поддержку протокола L2TPv3 в существующий пакет xl2tpd (https://github.com/xelerance/xl2tpd). Данный демон должен работать по протоколу L2TPv3
в режиме клиента и сервера.
Перед выполнением задачи следует ознакомиться со
следующим материалом:
• L2TPv3 RFC (https://tools.ietf.org/html/rfc3931)
•
xl2tpd – исходный код
(https://github.com/xelerance/xl2tpd)
•
git – как пользоваться (https://git-scm.com/book/ru/v1/%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D1%8B-Git)
•
как создать публичный репозиторий https://help.github.com/en/articles/fork-a-repo
•
создан
собственный публичный репозиторий из оригинального репозитория на сервисе GitHub
(со всеми правками для поддержки нового
протокола);
•
обеспечен доступ к этому репозиторию;
•
представлена инструкция по сборке пакета;
•
представлена методология настройки;
•
представлен файл с записанным web-трафиком c
использованием программы Wireshark.
Кейс компании D-Link – «Разработка STUN-клиента на Android для создания VPN туннеля Peer-To-Peer»
В рамках выполнения конкурсной работы
предлагается разработать Android-приложение, которое создает Peer-To-Peer
VPN-туннель между компьютером на Linux и мобильным телефоном на Android.
Устройства должны быть в разных подсетях за NAT, между которыми нет доступа.
Инициализировать соединение нужно через внешний STUN-сервер.
Перед выполнением задачи следует ознакомиться со
следующими технологиями:
• STUN (https://ru.wikipedia.org/wiki/STUN)
•
Android API (https://developer.android.com/reference)
Для тестирования предлагается следующая
топология сети:
В результате конкурсной
работы должно быть выполнено следующее:
•
разработано работоспособное Android-приложение с
исходным кодом;
•
представлена инструкция по сборке и
развертыванию тестового стенда;
•
представлен файл с записанным web-трафиком c
использованием программы Wireshark
Комментариев нет:
Отправить комментарий