Моя работа
На волне постов, почему бы и нет
Сисадмин и монтажник сетей в одном лице
Ubiquiti UniFi UAP перегружается
Добрый день.
В офисе есть несколько (3) точек Ubiquiti UniFi UAP. "Бесшовный" WiFi, управляются, естественно, контроллером. Работают в режиме бриджа, то есть транслируют в эфир локалку. DHCP, Firewall и прочее реализовано на другом оборудовании (mikrotik, если важно).
Пару месяцев назад одна из точек начала периодически перегружаться. По закону подлости - именно та, которая обслуживает начальство )
Поставил следящий монитор с записью в лог. Что выяснилось:
- особой периодичности нет.
- перегружается только в рабочее время, 3-10 раз за рабочий день
- от нагрузки не зависит, может перегрузиться при 5 клиентах и спокойно работать при 30.
Менял ВСЕ. Сами точки доступа по очереди из имеющихся , прошивки, контроллер, PoE инжекторы. От отчаяния протянул новую витую - все безрезультатно, перезагрузки продолжаются.
Перегружается любая из имеющихся точек доступа, как только ее установить в определенном месте офиса, при установке в других местах эти же точки работают без замечаний.
Вопрос знатокам: Кто-нибудь может дать идею, как прекратить это безобразие? )
Неделя 3. Теория тестирования. Часть 3
Всем доброго времени суток. Данная неделя была не очень эффективной, но имеет то что имеем. Я планирую еще одну неделю потратить на теорию тестирования, но пока не знаю какие темы нужно будет посмотреть. Как минимум это будут гибкие методологии разработки, а также техники тест-дизайна. Если есть предложения, то прошу в комментарии :) А теперь конспект:
Сущности:
Improvement - запрос на улучшение существующих функций (оформляется как дефект, но только в ожидаемом результате пишется предложение о улучшении).
Feature - запрос на расширение ПО новой функцией или изменение существующей функциональности.
Change Request - запрос для настолки или изменения системы (может содержаться в Feature).
Enhancement - запрос на воплощение новых идей, нового поведения или новой функциональности ПО (оформляется как дефект, но только в ожидаемом результате пишется предложение о улучшении).
Ошибка - совершается человеком и в будущем может привести к возникновению дефекта.
Дефект - недостаток в в компоненте или системе, способный привести к ситуации сбоя или отказа.
Отказ - событие, заключающееся в нарушении работоспособного состояния объекта.
Сбой - Самоустраняющийся отказ или однократный отказ, устраняемый незначительным вмешательством оператора.
Клиент-серверная архитектура.
Клиент-серверная архитектура - это такая архитектура, в которой сетевая нагрузка распределяется между поставщиками услуг (серверы) и заказчиками услуг (клиенты).
Плюсы:
Отсутствует дублирование кода программы сервера программами клиента.
Так как все вычисления происходят на сервере, то требования к мощностям клиента снижаются.
Все данные хранятся на сервере и это является более безопасным вариантом, чем хранения данных на машинах клиентов.
Минусы:
Если перестанет работать сервер, то вся вычислительная сеть тоже не будет работать.
Виды архитектуры:
Двухуровневая - имеется клиент и сервер.
Трехуровневая - имеется клиент, сервер и база данных.
Самым распространенным видом клиента является браузер.
Виды клиентов:
Тонкий клиент - компьютер либо же какая-то программа, клиент в сетях с клиент-серверной архитектурой, который переносит все или большую часть задач по обработке цифровой информации на сервер (пример - браузер).
Толстый клиент - это приложение, которое обеспечивает расширенную функциональность независимо от центрального сервера. Часто в таком случае сервер является каким-то хранилищем данных, а вся работа по обработке и предоставлению этих данных переносится на машину клиента (пример - 1с бухгалтерия, онлайн игры).
Веб - сайт - обычно носит какая-то информационный характер, т.е. он состоит из каких-то веб-страниц, объединенных в единый ресурс. Имеет какую-то простую архитектуру на основе HTML - кода. Веб - сайт не предоставляет возможности взаимодействия с программой, т.е. пользователи не имеют возможности для размещения своей информации (например - новостные сайты, сайты прогноза погоды).
Веб - приложение - это интерактивные компьютерные приложения, которые специально разрабатываются для сети интернет и позволяют пользователям вводить, получать и манипулировать данными с помощью взаимодействия (например - соц. сети, почта, youtube, переводчики и т.п.).
Веб - сервис - это прикладной программный интерфейс (API), который работает на сервере и предоставляет клиенту данные через HTTP через стандартизированную систему обмена сообщениями.
ИЛИ
Веб-сервисы (или веб-службы) — это технология, позволяющая системам обмениваться данными друг с другом через сетевое подключение. Обычно веб-сервисы работают поверх протокола HTTP или протокола более высокого уровня. Веб-сервис — просто адрес, ссылка, обращение к которому позволяет получить данные или выполнить действие.
SOAP (Simple Object Access Protocol)
REST (Representational State Transfer)
SOAP - это протокол обмена сообщениями, который позволяет распределённым элементам приложения обмениваться данными. SOAP может передаваться по множеству стандартных протоколов, он гибкий и независимый. Это позволяет разработчикам писать API на разных языках, а ещё добавлять различные функции и функциональные возможности.
Информационный набор Extensible Markup Language (XML) используется для SOAP в качестве формата сообщений, а передача и их согласование происходит с помощью протоколов прикладного уровня – таких, как HTTP.
XSD (XML Schema Definition) - описание структуру XML документа и типы данных, которые там могут храниться.
WSDL (Web Services Description Language) - это файл, написанный на языке WSDL, который описывает сообщения, заголовки, события, которые свойственны для веб-сервиса. Он является обязательным для SOAP.
Правила написания XML:
Только один корневой элемент
Все элементы должны иметь закрывающие теги
Название регистрозависимые
Элементы не должны пересекаться
Все значение атрибутов в кавычках
<,>,& нельзя использовать в текстовых блоках
Нужно использовать:
Объявления XML - первая строка
REST - это аббревиатура от Representational State Transfer («передача состояния представления»). Это согласованный набор архитектурных принципов для создания более масштабируемой и гибкой сети. Эти принципы отвечают на ряд вопросов. Какие у системы компоненты? Как они должны взаимодействовать друг с другом? Как быть уверенным, что можно заменять различные части системы в любое время? Как система может масштабироваться для обслуживания миллиардов пользователей?
Данный архитектурный стиль представляет собой согласованный набор ограничений, учитываемых при проектировании распределенной системы. Эти ограничения иногда называют принципами REST. Их всего 6.
RESTful - это любая сеть, которая отвечает принципам (ограничениям) REST.
Большинство RESTful-реализаций используют такие стандарты, как HTTP, URL, JSON и, реже, XML.
JSON (JavaScript Object Notation) - текстовый формат обмена данными, основанный на JavaScript. Но при этом формат независим от JS и может использоваться в любом языке программирования. Состоит он из неупорядоченного множества пар «ключ:значение».
Отличия между REST и SOAP:
REST поддерживает различные форматы
REST работает только по протоколам HTTP и HTTPS
SOAP во время чтения не может быть помещен в кэш
REST - архитектурный стиль, у которого нет огромного количества правил, которым он должен подчиняться, а SOAP - протокол, который сильно ограничен правилами, которые к нему предъявляются
За REST скорость, простота, расширяемость, поддержка многих форматом, отсутствие жесткой привязанности к правилам, а в случае SOAP - больше возможностей по безопасности и больше возможностей проводить тестирование качественно из-за наличия WSDL, где будут прописаны образцы запросов (из-за этого нужно реже обращаться к разработчикам)
HTTP (HyperText Transfer Protocol) Протокол.
Протокол - набор правил передачи информации.
HTTP — это гипертекстовый протокол передачи данных прикладного уровня в сетевой модели OSI. Главная особенность HTTP — представление всех данных в нём в виде простого текста. Через HTTP разные узлы в сети общаются между собой. Модель клиент-серверного взаимодействия классическая: клиент посылает запрос серверу, сервер обрабатывает запрос и возвращает ответ клиенту. Полученный ответ клиент обрабатывает и решает: прекратить взаимодействие или продолжить отправлять запросы.
Ещё одна особенность: протокол не сохраняет состояние между запросами. Каждый запрос от клиента для сервера — отдельная транзакция. Когда поступают два соседних запроса, сервер не понимает, от одного и того же клиента они поступили, или от разных. Такой подход значительно упрощает построение архитектуры веб-серверов.
HTTPS (HTTP Secure) — это надстройка над протоколом HTTP, которая поддерживает шифрование посредством криптографических протоколов SSL и TLS. Они шифруют отправляемые данные на клиенте и дешифруют их на сервере. Это защищает данные от чтения злоумышленниками, даже если им удастся их перехватить.
Сетевые модели:
На уровне сетевых интерфейсов передаются какие-то физические импульсы (например - оптоволокно).
На сетевом уровне происходит передача физических сигналов в виде битов или байтов.
На транспортном уровне происходят транспортные взаимодействия.
TCP протокол - надежный транспортный протокол, в результате которого при передаче данных происходит гарантия того, что данные доходят до клиента. Если информация не доходит и нет никакой гарантии, что клиент получил данные, то происходит повторная отправка данных (может применяться в почтовых сервисах).
UDP протокол - информация передается беспрерывным потоком без проверки того, дошли данные до клиента или нет (применяется в онлайн играх).
На прикладном уровне взаимодействие происходит посредством протоколов.
Составные части протокола HTTP:
Основная часть (payload)
Служебная информация (headers - заголовки)
HTTP - request:
HTTP - response:
Методы HTTP - запроса:
GET - запрашивает представление ресурса. Запросы с использованием этого метода могут только извлекать данные.
HEAD - запрашивает ресурс так же, как и метод GET, но без тела ответа.
POST - используется для отправки сущностей к определённому ресурсу. Часто вызывает изменение состояния или какие-то побочные эффекты на сервере.
PUT - заменяет все текущие представления ресурса данными запроса.
DELETE - удаляет указанный ресурс.
CONNECT - устанавливает "туннель" к серверу, определённому по ресурсу.
OPTIONS - используется для описания параметров соединения с ресурсом.
TRACE - выполняет вызов возвращаемого тестового сообщения с ресурса.
PATCH - используется для частичного изменения ресурса.
Коды ошибок:
Неплохая статья по HTTP - https://habr.com/ru/companies/avito/articles/710660/
Различия HTTP 1.0 от HTTP 2.0:
Web Glossary.
IP-адрес (от англ. Internet Protocol) — уникальный числовой идентификатор устройства в компьютерной сети, работающий по протоколу TCP/IP.
URI - последовательность символов, идентифицирующая физический или абстрактный ресурс, который не обязательно должен быть доступен через сеть Интернет, причем, тип ресурса, к которому будет получен доступ, определяется контекстом и/или механизмом.
URL - это URI, который, помимо идентификации ресурса, предоставляет ещё и информацию о местонахождении этого ресурса.
URN — это URI, который только идентифицирует ресурс в определённом пространстве имён (и, соответственно, в определённом контексте), но не указывает его местонахождение.
Маска подсети:
Для того, чтобы определить какие биты IP-адреса относятся к номеру хоста, а какие к номеру подсети используют так называемую маску подсети.
Допустим у вас есть IP-адрес, записанный в двоичном виде:
Красным цветом отмечены биты, ответственные за номер сети, зеленым – за номер хоста. Да, так тоже можно. Тут нет жесткой привязки к байтам.
Маской подсети будет называться такое число, где битам подсети будут соответствовать единички, а битам хоста – нули. Пример маски подсети для предыдущего адреса:
Все биты подсети равны 1 (красный), все биты хоста равны 0 (зеленый).
Пример выделения номера сети и идентификатора хоста в IP-адресе:
Важно: Всегда зарезервировано два ip-адреса (самый первый - адрес подсети, самый последний - широковещательный адрес (Broadcast Address) (широковещательный адрес - это такой IP адрес, который позволяет передать сетевые данные одновременно на все хосты заданной подсети, вместо передачи на конкретный хост).
MAC - адрес - это физический адрес устройства. Он прописывается при производстве сетевой карты.
DNS (Domain Name System) - это глобальное распределенное хранилище ключей и значений. Она необходима, в первую очередь, для соотнесения IP-адресов устройств в сети и более удобных для человеческого восприятия символьных имен.
Кэш (cash) - данные, которые загружаются с ПК при повторном посещении сайта для ускорения загрузки сайта (например - различные элементы дизайна сайта, изображения, музыка и т.п.).
Куки (cookies) - это небольшие текстовые файлы, сгенерированные сайтами. В них записана информация о посещении сайта. Эти файлы хранятся на компьютере. Cookie нужны, чтобы идентифицировать пользователя. Когда вы вернётесь на сайт, он узнает вас и автоматически подстроится. Формы регистрации будут заполнены, языковые и региональные настройки заданы. Если на сайте вы выбирали товары, то новые будут предложены на основе ваших предпочтений.
Немного порядка БУНДничный день )
Фото до
Фото после
Как отключить dns over https?
Всем привет!
Тут в соседней теме спрашивал, но ответ пока так и не дали(
Гугл и иже с ними для нашего удобства) ага, ага)) запилили в своих браузерах поддержку dns over https. Если коротко, то теперь запросы DNS от браузера могут идти не через стандартный порт 53, а инкапсулируются в трафик HTTPS. Из-за этого теперь стандартными средствами роутера невозможно вычленить DNS запросы(
Есть локальная сеть с WiFi и выходом в интернет. К сети могут подключаться "дети" и "взрослые" с ноутбуков и телефонов. Нужно сделать так чтобы "дети" подключаясь к этой сети не лазили куда не надо. Очевидное решение - подсунуть Яндекс DNS или ему подобный "малышам", но тут мешает гадский dns over https. Даже если я отключу вообще DNS в сети, то Хром свободно передает запросы через DoH.
Я вижу решение такое:
Каким-то образом отключаем всем dns over https, нахрен он не нужон. Но вот каким???
Пилим статический пул адресов на основе MAC для "взрослых", серверов и другой техники (ее не так много) и разрешаем им любые DNS запросы(например пусть берут из DHCP)
Все остальные "дети" получают Яндекс DNS и радуются тому что есть). До кучи данный пул получает запрет на исходящие запросы на несанкционированные DNS, чтобы особо умные не прописывали свои)
И еще. Самое главное чтобы это работало прозрачно, искаропки, без залезания в настройки браузера. Роутер стоит от Микротика.
Сетевой блатняк
Наткнулся на этот шедевр мемоделия в ленте ВК. Никогда б не подумал, что совмещать феню и сетевые термины может быть настолько ржачно.
Предлагайте в комментах свои идеи для хитов networking-шансона!
Источник: https://vk.com/it_joke
Вопрос по изучению компьютерных сетей
Друзья, добрый день. Есть необходимость с нуля разобраться в компьютерных сетях, иерархии протоколов, эталонных моделях и т.д. Есть книга Таненбаума, но в некоторых местах сложновато мне. Может кто-нибудь может посоветовать какие-нибудь хорошие ютюб-каналы, где для новичков в этой теме все более простым языком рассказывается? Может телега, дзен, на хабре что-нибудь.