Pull to refresh
8
0.2
Send message

PIP — Загрузка пакетов python для офлайн установки

Level of difficultyEasy
Reading time13 min
Views7.6K

Разговор в этой статье пойдет о том, как достать пакеты Python для оффлайн установки на разных платформах и разных версиях Python. Возможно я плохо искал, но на просторах интернета я не смог найти достаточное количество статей на русском языке, которые бы подробно объясняли как производить загрузку пакетов и дальнейшую их доставку на машины с разными платформами и версиями языка. 

Читать далее
Total votes 16: ↑18 and ↓-2+20
Comments9

Надежный обход блокировок в 2024: протоколы, клиенты и настройка сервера от простого к сложному

Level of difficultyMedium
Reading time45 min
Views136K

Поскольку блокировки интернета в РФ в последние недели и месяцы многократно активизировались, а маразм все крепчает и крепчает, стоит еще раз поднять тему обхода этих самых блокировок (и делаем ставки, через сколько дней на эту статью доброжелатели напишут донос в РКН чтобы ограничить к ней доступ на территории страны).

Вы, наверняка, помните отличный цикл статей на Хабре в прошлом году от пользователя MiraclePtr, который рассказывал о разных методах блокировок, о разных методах обхода блокировок, о разных клиентах и серверах для обходов блокировок, и о разных способах их настройки (раз, два, три, четыре, пять, шесть, семь, восемь, десять, десять, и вроде были еще другие), и можете спросить, а зачем еще одна? Есть две основные причины для этого.

Читать далее
Total votes 506: ↑498 and ↓8+490
Comments351

Подключаем Firewall через ePBR

Reading time11 min
Views1.9K

Спустя неожиданно длительный перерыв возвращаюсь для продолжения разбора технологий, использующихся в построении сетей ЦОД. Настало время разобрать тему подключения внешних устройств, таких как Firewall, Proxy и других сетевых сервисов. А что делать, когда необходимо создать целую цепочку из таких сервисов, пропустив через них весь или только часть трафика? Конечно, использовать статику, но не обычную же.

Читать далее
Total votes 6: ↑6 and ↓0+6
Comments0

VxLAN фабрика. Часть 1

Reading time9 min
Views25K

Привет, хабр. В настоящее время я являюсь руководителем курса "Сетевой инженер" в OTUS.
В преддверии старта нового набора на курс "Сетевой инженер", я подготовил цикл статей по технологии VxLAN EVPN.


Существует огромное множество материалов по работе VxLAN EVPN, поэтому я хочу собрать различные задачи и практики решения задач в современном ЦОД.





В первой части цикла по технологии VxLAN EVPN хочу рассмотреть способ организации L2 cвязанности между хостами поверх сетевой фабрики.


Все примеры будем выполнять на Cisco Nexus 9000v, собранных в топологию Spine-Leaf. Останавливаться на настройке Underlay сети в рамках этой статьи мы не будем.

Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments5

Улучшаем возможности Nginx без затрат на коммерческую подписку (спойлер: с помощью Haproxy)

Level of difficultyMedium
Reading time16 min
Views20K

Nginx — прекрасный и надёжный обратный прокси-сервер. Уже много лет он является самым популярным инструментом обслуживания огромного количества веб-сайтов. Но его бесплатная версия имеет ряд ограничений в части работы с серверами-бэкендами. Давайте поговорим об этих ограничениях и о том, можем ли мы, не меняя Nginx как основную платформу, качественно улучшить наши возможности по распределению трафика между бэкендами.

Читать далее
Total votes 20: ↑18 and ↓2+16
Comments33

9 сервисов для доставки товаров в Россию в 2023 году. Разбираю риски

Level of difficultyEasy
Reading time8 min
Views11K

Сейчас сервисов, которые привозят товары в Россию – как грибов после дождя. Среди них много мошенников. Я сам дважды натыкался.

За полтора года я поработал с 12 мейлфорвардерами – сервисами по доставке товаров из стран Европы, США, Турции и ОАЭ. Более менее приличные описал ниже. Также в статье рассказываю о рисках и нюансах работы с описанными сервисами.

Читать далее
Total votes 15: ↑14 and ↓1+13
Comments15

Установка, настройка и эксплуатация стэка OpenSearch в классической среде

Reading time45 min
Views54K
image

Передо мной встала задача сбора логов с парка серверов на ОС Windows и ОС Linux. Для того чтобы решить её я воспользовался стэком OpenSearch. Во время настройки OpenSearch мне не хватало в открытых источниках наглядных примеров, а информация на официальных сайтах ElasticSearch и OpenSearch мне показалась обрывочной, слабо привязанной к реальным ситуациям. Поэтому я решил поделиться своим опытом и описать основные моменты установки и некоторые сценарии настройки и применения стэка OpenSearch, которые я применил в своей практике.
Читать дальше →
Total votes 17: ↑16 and ↓1+15
Comments15

История одной DDOS атаки на роутер и методы защиты Juniper routing engine

Reading time19 min
Views61K
По долгу службы мне часто приходится сталкиваться с DDOS на сервера, но некоторое время назад столкнулся с другой атакой, к которой был не готов. Атака производилась на роутер Juniper MX80 поддерживающий BGP сессии и выполняющий анонс подсетей дата-центра. Целью атакующих был веб-ресурс расположенный на одном из наших серверов, но в результате атаки, без связи с внешним миром остался весь дата-центр. Подробности атаки, а также тесты и методы борьбы с такими атаками под катом.
Читать дальше →
Total votes 18: ↑17 and ↓1+16
Comments17

Фабрики для ЦОД в текущих реалиях

Level of difficultyMedium
Reading time14 min
Views4K

Поддержание работоспособности сетей и поиск вариантов развития имеющихся и построения новых за последние полгода стали приоритетной задачей. CTI более 20 лет строит сети для enterprise-заказчиков из телеком-сферы. В этой статье мы расскажем о возможных решениях, их плюсах и замеченных минусах.

Читать далее
Total votes 4: ↑4 and ↓0+4
Comments0

Полное руководство по модулю asyncio в Python. Часть 1

Reading time11 min
Views106K

Python-модуль asyncio позволяет заниматься асинхронным программированием с применением конкурентного выполнения кода, основанного на корутинах. Хотя этот модуль имеется в Python уже много лет, он остаётся одним из самых интересных механизмов языка. Но asyncio, при этом, можно назвать ещё и одним из модулей, которые вызывают больше всего недоразумений. Дело в том, что начинающим разработчикам бывает трудно приступить к использованию asyncio.

Перед вами — подробное и всестороннее руководство по использованию модуля asyncio в Python. В частности, здесь будут рассмотрены следующие основные вопросы:

Читать далее
Total votes 31: ↑29 and ↓2+27
Comments8

Связываем VXLAN-фабрики на Maipu и Cisco

Reading time41 min
Views4.3K

Довольно популярным запросом у заказчиков стало наращивание существующей фабрики Cisco коммутаторами Maipu. Недавно нам удалось наконец собрать необходимый пул оборудования и разобраться, что может и чего не может оборудование Maipu в таких кейсах. Ранее, кстати, рассказал, как мы расширяем существующую DMVPN-сеть Cisco с помощью Maipu, и про коммутаторы Maipu для сетей ЦОД.

Читать далее
Total votes 4: ↑4 and ↓0+4
Comments0

Создание системы документирования, или как мы от «ворда» к docs as code за месяц переходили

Reading time6 min
Views12K

Привет, Хабр! Меня зовут Юрий Никулин, и я руководитель направления документирования Cloud. Сегодня расскажу, как мы перешли с документирования в Word на подход docs as code и почему в качестве языка разметки выбрали reStructuredText.

Читать далее
Total votes 20: ↑20 and ↓0+20
Comments27

Гидропоника. Выращиваем сверхострый чили и заставляем всех его есть

Reading time14 min
Views137K


Полтора килограмма термоядерного Тринидадского Скорпиона я в итоге собрал с одного куста на гидропонике.


У меня было много довольно странных хобби. Некоторые приводили к странным эффектам, вроде массового домашнего производства домашнего порошка для посудомойки. В список к этому странному ряду я решил добавить еще один пункт. Теперь я развлекаюсь еще и с гидропоникой. Причем эффект получился еще более адовый, чем я ожидал.


Небольшая часть урожая


Тема чудовищно огромная, охватить ее за один пост вряд ли получится, поэтому я постараюсь ограничиться описанием принципа, почему это вообще работает и дать максимально исчерпывающий мануал, чтобы каждый смог из желудей и спичек повторить мой эксперимент. В самом начале будет много теории. Можете ее проскочить и сразу перейти к нужным покупкам, а вернуться к ней позже.


Сегодня в меню


  1. Что такое гидропоника и почему она гораздо проще, чем почва с червячками
  2. Никаких дорогих бутылочек. Мешаем компоненты по три рубля за ведро
  3. Питание растения как алгоритм
  4. Как быстро собрать прототип гидропонной установки
  5. Что такое capsicum chinense и как выжить при дегустации
Total votes 248: ↑248 and ↓0+248
Comments328

Разрабатываем чат с помощью Nest, React и Postgres

Reading time17 min
Views16K


Привет, друзья!


В данном туториале мы разработаем чат с использованием следующих технологий:


  • TypeScript — статический типизатор;
  • NestJS — сервер;
  • Socket.IO — библиотека для работы в веб-сокетами;
  • React — клиент;
  • TailwindCSS — библиотека для стилизации;
  • PostgreSQL — база данных (далее — БД);
  • PrismaORM;
  • Docker — платформа для разработки, доставки и запуска приложений в изолированной среде — контейнере.

Функционал чата будет таким:


  • фейковая регистрация пользователей:
    • хранение имен пользователей в памяти (объекте) на сервере;
    • хранение имен и идентификаторов пользователей в localStorage на клиенте;
  • регистрация подключений и отключений пользователей на сервере и передача этой информации подключенным клиентам;
  • запись, обновление и удаление сообщений из БД в реальном времени на сервере и передача этой информации клиентам.

Репозиторий с кодом проекта.


Если вам это интересно, прошу под кат.

Читать дальше →
Total votes 9: ↑7 and ↓2+5
Comments11

АДСМ5. История сетевой автоматизации

Reading time37 min
Views8.8K

Это первая статья - историческая ретроспектива технологий и интерфейсов автоматизации сети. Если хочется более практического разбора, я отсылаю читателя к статье-спутнику!!!, в которой мы собираем лабу, дёргаем апишки, настраиваем коробки. В этой же разбираемся, как мы оказались в том месте, где мы находимся, и куда ведёт нас этот путь. Практическую пользу вам принесут только обе прочитанные статьи. Вторая без первой будет непонятна. Первая без второй - беллетристика.

Читать далее
Total votes 19: ↑19 and ↓0+19
Comments8

АДСМ6. Интерфейсы взаимодействия с сетевыми устройствами

Reading time81 min
Views14K

Это вторая статья - техническо-практический разбор протоколов и интерфейсов автоматизации сети.

Если хочется исторической справки, я отсылаю читателя к статье-спутнику, в которой мы двигаемся от начала времён в будущее человечества. Какую роль сыграли в нашем настоящем IETF, ISO, олдовые и современные вендоры и даже просто люди.
В этой же мы раскрываем дерево XML, пробуем на вкус капабилити NETCONF, шлём первые RPC и наконец уже расставим в правильном порядке буквы YANG, OpenConfig, gNMI.

Практическую пользу вам принесут только обе прочитанные статьи. Вторая без первой будет непонятна. Первая без второй - беллетристика.

Читать далее
Total votes 18: ↑18 and ↓0+18
Comments9

Асинхронный python без головной боли (часть 1)

Reading time14 min
Views257K

Почему так сложно понять asyncio?

Асинхронное программирование традиционно относят к темам для "продвинутых". Действительно, у новичков часто возникают сложности с практическим освоением асинхронности.

Но будь я автором самого толстого в мире учебника по python, я бы рассказывал читателям про асинхронное программирование уже с первых страниц. Вот только написали "Hello, world!" и тут же приступили к созданию "Hello, asynchronous world!". А уже потом циклы, условия и все такое.

Съешь красную таблетку
Total votes 135: ↑135 and ↓0+135
Comments56

JavaScript: разрабатываем чат с помощью Socket.io, Express и React с акцентом на работе с медиа

Reading time25 min
Views26K



Привет, друзья!


В данной статье я хочу показать вам, как разработать простое приложение для обмена сообщениями в режиме реального времени с использованием Socket.io, Express и React с акцентом на работе с медиа.


Функционал нашего приложения будет следующим:


  • при первом запуске приложение предлагает пользователю ввести свое имя;
  • имя пользователя и его идентификатор записываются в локальное хранилище;
  • при повторном запуске приложения имя и идентификатор пользователя извлекаются из локального хранилища (имитация системы аутентификации/авторизации);
  • выполняется подключение к серверу через веб-сокеты и вход в комнату main_room (при желании можно легко реализовать возможность выбора или создания других комнат);
  • пользователи обмениваются сообщениями в реальном времени;
  • типом сообщения может быть текст, аудио, видео или изображение;
  • передаваемые файлы сохраняются на сервере;
  • путь к сохраненному на сервере файлу добавляется в сообщение;
  • сообщение записывается в базу данных;
  • пользователи могут записывать аудио и видеосообщения;
  • после прикрепления файла и записи аудио или видео сообщения, отображается превью созданного контента;
  • пользователи могут добавлять в текст сообщения эмодзи;
  • текстовые сообщения могут озвучиваться;
  • и т.д.

Репозиторий с исходным кодом проекта.


Если вам это интересно, прошу под кат.

Читать дальше →
Total votes 10: ↑8 and ↓2+6
Comments3

Написание скриптов для tmux

Reading time3 min
Views12K
Мне, когда я пользуюсь tmux, часто надо открывать похожие рабочие пространства. Например, мне всегда нужно выводить последние строки пары файлов журналов в панели, или мне нужно открывать и vim, и mysql. Бывает, что мне нужно и что-то другое.



Если вы попробуете найти сведения об открытии рабочих пространств tmux, то почти гарантированно обнаружите советы по использованию программы-обёртки вроде tmuxinator, tmux-resurrect или tmux-continuum. Эти программы, возможно, хороши, но я предпочитаю что-нибудь попроще.
Читать дальше →
Total votes 45: ↑43 and ↓2+41
Comments9

Переход с iptables на nftables. Краткий справочник

Reading time18 min
Views107K
image

В Debian теперь нет iptables. Во всяком случае, по умолчанию.

Узнал я об этом, когда на Debian 11 ввёл команду iptables и получил “command not found”. Сильно удивился и стал читать документацию. Оказалось, теперь нужно использовать nftables.

Хорошие новости: одна утилита nft заменяет четыре прежних — iptables, ip6tables, ebtables и arptables.

Плохие новости: документация (man nft) содержит больше 3 тысяч строк.

Чтобы вам не пришлось всё это читать, я написал небольшое руководство по переходу с iptables на nftables. Точнее, краткое практическое пособие по основам nftables. Без углубления в теорию и сложные места. С примерами.
Читать дальше →
Total votes 126: ↑126 and ↓0+126
Comments46

Information

Rating
2,171-st
Registered
Activity