Команда
less помогает листать большие текстовые файлы в терминале, не загружая их целиком в память.Запуск:
less filenameКлавиши для движения
• Стрелка вниз/Enter/j – на строку вперёд
• Стрелка вверх/k – на строку назад
• Пробел/Page Down – страница вперед
• Page Up/b – страница назад.
• g – в начало, G – в конец.
Поиск:
/текст для поиска вперед, ?текст для поиска назад. n – следующий, N – предыдущий.Полезные флаги:
• -
N – номера строк•
-s – сжимает пустые строки•
-i – поиск без учета регистра•
+F – следит за изменениями, как tail -f📍 Навигация: Вакансии • Задачи • Собесы
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤1
🛠 Дебажим DNS
➡️ Предыдущая часть
Файл /etc/resolv.conf:
Содержит адреса DNS серверов:
Если файл пустой или содержит неправильные адреса — резолвинг не работает.
Проверьте доступность DNS сервера:
Порт 53 — это DNS. Если порт закрыт или недоступен — сервер не может отвечать на DNS запросы.
dig — детальная DNS диагностика:
Показывает весь процесс разрешения имени:
• Какой DNS сервер ответил
• Сколько времени занял запрос
• Полученные A записи — IP адреса
Типичные ошибки в dig:
nslookup — альтернатива dig:
Проще, чем dig, но менее информативен. Полезен для быстрой проверки.
Проблемы с DNS в контейнерах
В Kubernetes и Docker DNS часто предоставляется внутренним сервисом.
Kubernetes:
• CoreDNS или kube-dns
• Проверьте:
• Логи:
Docker:
• Встроенный DNS на 127.0.0.11
• Проблемы при неправильной конфигурации сети контейнера
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#арсенал_инженера
ping 8.8.8.8 работает, но ping google.com выдаёт "Name or service not known" — это проблема с DNS. Современные приложения используют доменные имена для всего, поэтому DNS критичен.Файл /etc/resolv.conf:
cat /etc/resolv.conf
Содержит адреса DNS серверов:
nameserver 8.8.8.8
nameserver 8.8.4.4
Если файл пустой или содержит неправильные адреса — резолвинг не работает.
Проверьте доступность DNS сервера:
ping 8.8.8.8
nc -zv 8.8.8.8 53
Порт 53 — это DNS. Если порт закрыт или недоступен — сервер не может отвечать на DNS запросы.
dig — детальная DNS диагностика:
dig google.com
Показывает весь процесс разрешения имени:
• Какой DNS сервер ответил
• Сколько времени занял запрос
• Полученные A записи — IP адреса
Типичные ошибки в dig:
status: NXDOMAIN — домен не существует. Опечатка или домен удалёнstatus: SERVFAIL — DNS сервер столкнулся с ошибкой. Проблема на стороне DNSstatus: REFUSED — сервер отказался обрабатывать запрос. ACL блокирует ваш IPconnection timed out — DNS сервер недоступен. Проверьте firewallnslookup — альтернатива dig:
nslookup google.com
Проще, чем dig, но менее информативен. Полезен для быстрой проверки.
Проблемы с DNS в контейнерах
В Kubernetes и Docker DNS часто предоставляется внутренним сервисом.
Kubernetes:
• CoreDNS или kube-dns
• Проверьте:
kubectl get pods -n kube-system | grep dns• Логи:
kubectl logs -n kube-system coredns-xxxDocker:
• Встроенный DNS на 127.0.0.11
• Проблемы при неправильной конфигурации сети контейнера
📍 Навигация: Вакансии • Задачи • Собесы
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
🌐 Браузер для маленького интернета
Вышел Offpunk 3.0 — терминальный браузер для Gemini/Gopher/Web с фокусом на офлайн-режим.
Философия: серфинг без отвлекающих факторов, кеширование всего, чтение без интернета.
Главные изменения в 3.0
➡️ Offpunk теперь говорит на нескольких языках:
• Испанский
• Галисийский
• Голландский
• Английский (по умолчанию)
➡️ Новая команда websearch с дефолтом на wiby.me. Wiby.me — это поисковик по старому вебу.
➡️ Социальные фичи
• Команда share — отправить страницу по email.
• Команда reply — написать автору страницы:
➡️ Теперь работают HTTP cookies через команду cookies. Для тех редких случаев, когда они действительно нужны.
🖇 Официальный сайт
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#пульс_индустрии
Вышел Offpunk 3.0 — терминальный браузер для Gemini/Gopher/Web с фокусом на офлайн-режим.
Философия: серфинг без отвлекающих факторов, кеширование всего, чтение без интернета.
Главные изменения в 3.0
• Испанский
• Галисийский
• Голландский
• Английский (по умолчанию)
• Команда share — отправить страницу по email.
• Команда reply — написать автору страницы:
🖇 Официальный сайт
📍 Навигация: Вакансии • Задачи • Собесы
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
🛠 Автоматизация монтирования в Linux
В Linux и Unix-подобных системах файловые системы необходимо примонтировать, чтобы они стали доступны.
Команда
Файл /etc/fstab — сердце автоматизации
Каждая строка файла описывает одну файловую систему с параметрами:
• Устройство: путь, UUID или метка (например,
• Точка монтирования: каталог назначения (
• Тип файловой системы:
• Опции:
• Dump: для утилиты резервного копирования (обычно
• Pass: порядок проверки через
Пример:
Команда
• Имеют опцию auto
• Ещё не смонтированы
Записи с опцией noauto пропускаются — они монтируются только вручную.
Зачем это нужно
Init-система запускает
После правки /etc/fstab не нужно перезагружаться или монтировать всё вручную — достаточно одной команды.
Добавление нового раздела:
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#root_prompt
В Linux и Unix-подобных системах файловые системы необходимо примонтировать, чтобы они стали доступны.
Команда
mount подключает файловую систему с устройства к каталогу — точке монтирования.Файл /etc/fstab — сердце автоматизации
Каждая строка файла описывает одну файловую систему с параметрами:
• Устройство: путь, UUID или метка (например,
/dev/sdb1, UUID=xxxxxxxx)• Точка монтирования: каталог назначения (
/mnt/data, /home)• Тип файловой системы:
ext4, xfs, ntfs, nfs, cifs• Опции:
defaults, rw, ro, noauto, nofail и др.• Dump: для утилиты резервного копирования (обычно
0 или 1)• Pass: порядок проверки через
fsck (0 — отключена, 1 — корневая ФС, 2 — остальные)Пример:
UUID=a1b2c3d4-e5f6-7890 /mnt/backup ext4 defaults,nofail 0 2
Команда
mount -a (mount all) монтирует все файловые системы из /etc/fstab, которые:• Имеют опцию auto
• Ещё не смонтированы
Записи с опцией noauto пропускаются — они монтируются только вручную.
Зачем это нужно
Init-система запускает
mount -a, автоматически монтируя все необходимые файловые системы: корневую, /home, /var, сетевые шары.После правки /etc/fstab не нужно перезагружаться или монтировать всё вручную — достаточно одной команды.
Добавление нового раздела:
# Создаём точку монтирования
sudo mkdir /data
# Добавляем в /etc/fstab
/dev/sdc1 /data ext4 defaults 0 2
# Применяем изменения
sudo mount -a
# Проверяем
df -h /data
mount -a — избавляет от рутины и обеспечивает применение конфигурации монтирования.📍 Навигация: Вакансии • Задачи • Собесы
#root_prompt
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
DNS работает, IP связность есть, но сервис всё равно недоступен? Проверяем конкретный порт.
netcat (nc) — универсальный тестер
nc -zv example.com 80
Флаги:
•
-z — только проверка, без отправки данных•
-v — подробный выводРезультаты:
Connection to example.com 80 port [tcp/http] succeeded! — порт открыт, сервис слушаетConnection refused — порт закрыт, сервис не запущенConnection timed out — пакеты не доходят, firewall или сетьПроверьте, слушает ли приложение:
ss -tulpn | grep :80
или старая версия:
netstat -tulpn | grep :80
Должны увидеть строку типа:
tcp LISTEN 0.0.0.0:80 0.0.0.0:* users:(("nginx",pid=1234))0.0.0.0:80 означает слушает на всех интерфейсах. 127.0.0.1:80 — только локально и не доступен снаружи.Если ничего нет — сервис не запущен или слушает на другом порту.
📍 Навигация: Вакансии • Задачи • Собесы
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍2
DevOps-инженер — Удалёнка
SRE/DevOps — от 4 000 до 7 000 $. Удалёнка
DevOps Engineer (Стриминг) — от 5 000 €. Переезд на Кипр
#вакансия_недели
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🤔3
🐳 Docker Hardened Images (DHI) теперь бесплатны
Docker объявил о бесплатном доступе к более 1000 образов, включая Alpine, Debian, базы данных и среды выполнения.
Это снижает линию безопасности: ниже этой линии уязвимости управляются Docker, выше — вашей командой. Когда сканер находит проблему в слое DHI, это не требует действий от вас. Всё, что выше базового образа, остаётся вашей зоной ответственности.
DHI защищает не только от CVE. Community-образы несут риски компрометации учётных записей, вредоносных инъекций через перезапись тегов. DHI создаются из контролируемого namespace с процессами проверки, что изолирует от целого класса атак.
➡️ Блог разработчиков
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#пульс_индустрии
Docker объявил о бесплатном доступе к более 1000 образов, включая Alpine, Debian, базы данных и среды выполнения.
Это снижает линию безопасности: ниже этой линии уязвимости управляются Docker, выше — вашей командой. Когда сканер находит проблему в слое DHI, это не требует действий от вас. Всё, что выше базового образа, остаётся вашей зоной ответственности.
DHI защищает не только от CVE. Community-образы несут риски компрометации учётных записей, вредоносных инъекций через перезапись тегов. DHI создаются из контролируемого namespace с процессами проверки, что изолирует от целого класса атак.
📍 Навигация: Вакансии • Задачи • Собесы
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Наткнулись на KiilerCoda. Платформа работает по простому принципу: открываете сайт, выбираете сценарий обучения и получаете доступ к изолированному окружению с предустановленными инструментами.
Под капотом Killercoda использует контейнеризованные окружения с эфемерным выделением ресурсов.
Каждая сессия запускается в изолированном namespace со строгими сетевыми политиками, а после завершения работы окружение автоматически уничтожается.
Главное преимущество платформы — мгновенный запуск. От открытия сайта до выполнения первой команды проходят секунды, а не часы настройки.
📍 Навигация: Вакансии • Задачи • Собесы
#root_prompt
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
🧑💻 Дебажим логи
Интерфейсы UP, маршруты правильные, firewall настроен, но связь всё равно работает нестабильно или периодически пропадает. Время копаться в логах и системных сервисах.
➡️ Предыдущий пост
➡️ Системные логи: /var/log/messages
Главный системный лог содержит события от kernel и системных демонов, включая сетевую подсистему.
Что искать:
•
•
•
•
➡️ journalctl — современный способ
Фильтр по юниту (сервису):
Фильтр по времени:
➡️ NetworkManager и systemd-networkd
Современные Linux-дистрибутивы используют один из этих сервисов для управления сетью.
Проверка статуса:
Ищите:
-
-
- Ошибки в выводе
Логи в реальном времени:
Запустите эту команду, затем воспроизведите проблему — увидите, что происходит.
➡️ Перезапуск сетевых сервисов
Используйте
Если потеряли соединение, screen сохранит сессию. Переподключитесь и вернётесь в неё командой
Альтернатива:
Если что-то пойдёт не так, через 2 минуты сеть автоматически перезапустится.
➡️ Мониторинг ресурсов
Иногда сетевые проблемы вызваны нехваткой ресурсов.
Проверка памяти:
Если своп активно используется — система испытывает нехватку RAM. Сетевые процессы могут тормозить или падать.
Проверка CPU:
Высокая загрузка CPU может замедлять обработку пакетов.
Проверка дискового I/O:
Если диск перегружен, логирование замедляется, конфигурационные файлы читаются медленно.
Типичные находки в логах
- Интерфейс потерял линк
- Проверьте физику (кабель, порт)
- Не может получить IP от DHCP сервера
- DHCP сервер недоступен или перегружен
- OOM killer убил процесс
- Возможно, убил NetworkManager или systemd-networkd
- Firewall блокирует пакеты
- Найдено блокирующее правило
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#арсенал_инженера
Интерфейсы UP, маршруты правильные, firewall настроен, но связь всё равно работает нестабильно или периодически пропадает. Время копаться в логах и системных сервисах.
Главный системный лог содержит события от kernel и системных демонов, включая сетевую подсистему.
grep -i "network\|eth0\|link" /var/log/messages | tail -50
Что искать:
•
link down / link up — интерфейс терял линк•
firmware — проблемы с firmware сетевой карты•
dropped — kernel отбрасывал пакеты•
OOM — Out of Memory, могло убить сетевые процессыjournalctl -n 100 # Последние 100 записей
journalctl -f # Следить в реальном времени (как tail -f)
journalctl -p err # Только ошибки
Фильтр по юниту (сервису):
journalctl -u NetworkManager -n 100
journalctl -u systemd-networkd -n 100
Фильтр по времени:
journalctl --since "10 minutes ago"
journalctl --since "2025-02-03 14:00" --until "2025-02-03 15:00"
Современные Linux-дистрибутивы используют один из этих сервисов для управления сетью.
Проверка статуса:
systemctl status NetworkManager
systemctl status systemd-networkd
Ищите:
-
Active: active (running) — всё ОК-
Active: failed — сервис упал- Ошибки в выводе
Логи в реальном времени:
journalctl -u NetworkManager -f
Запустите эту команду, затем воспроизведите проблему — увидите, что происходит.
На удалённом сервере это может разорвать SSH соединение!
Используйте
screen или tmux перед перезапуском:screen
systemctl restart NetworkManager
Если потеряли соединение, screen сохранит сессию. Переподключитесь и вернётесь в неё командой
screen -r.Альтернатива:
at команда для отложенного восстановления сети:echo "systemctl restart NetworkManager" | at now + 2 minutes
Если что-то пойдёт не так, через 2 минуты сеть автоматически перезапустится.
Иногда сетевые проблемы вызваны нехваткой ресурсов.
Проверка памяти:
free -h
Если своп активно используется — система испытывает нехватку RAM. Сетевые процессы могут тормозить или падать.
Проверка CPU:
top
htop
Высокая загрузка CPU может замедлять обработку пакетов.
Проверка дискового I/O:
iostat -x 1
Если диск перегружен, логирование замедляется, конфигурационные файлы читаются медленно.
Типичные находки в логах
NetworkManager: device disconnected- Интерфейс потерял линк
- Проверьте физику (кабель, порт)
dhclient: DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval X- Не может получить IP от DHCP сервера
- DHCP сервер недоступен или перегружен
kernel: Out of memory: Killed process X (name)- OOM killer убил процесс
- Возможно, убил NetworkManager или systemd-networkd
iptables: DROP IN=eth0 SRC=X.X.X.X- Firewall блокирует пакеты
- Найдено блокирующее правило
📍 Навигация: Вакансии • Задачи • Собесы
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍3
4 января 2026 года было зафиксировано драматическое падение глобального Telnet-трафика — объём сессий упал на 65% за один час, затем на 83% за два часа.
Первоначальная гипотеза предполагала, что крупные провайдеры начали блокировать порт 23 в ответ на критическую уязвимость в GNU Inetutils telnetd, позволяющую получить root-доступ без аутентификации.
Компания Terrace Networks провела собственное расследование и пришла к противоположным выводам. Они провели Telnet-трассировки от якобы затронутых автономных систем к своим серверам и успешно достигли цели.
Terrace анализировала уникальные IP-адреса источников, а не общее количество сессий. Этот метод точнее, поскольку единичные масштабные сканирования, например, от ботов, перебирающих пароли Telnet, могут радикально исказить счётчики сессий.
Terrace предполагает, что первоначальные результаты могли быть артефактом измерений
Пока всё работает предлагаем побаловаться в живых telnet серверах.
📍 Навигация: Вакансии • Задачи • Собесы
#разбор_полётов
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
🔄 Минималистичный дистрибутив стал еще современнее
Tiny Core Linux — это система, которая весит всего 11-16 МБ и загружается полностью в оперативную память. Дистрибутив получил версию 17.0.
Главное в обновлении — свежее ядро Linux 6.18.2 с улучшенной поддержкой нового оборудования. Обновились основные библиотеки: glibc 2.42, компилятор gcc 15.2.0 и утилиты для работы с дисками.
Из практичных изменений — скрипты теперь умеют работать с HTTPS-зеркалами, исправлены баги в обновлении расширений и резервном копировании настроек.
➡️ Анонс + ссылки на скачивание
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#пульс_индустрии
Tiny Core Linux — это система, которая весит всего 11-16 МБ и загружается полностью в оперативную память. Дистрибутив получил версию 17.0.
Главное в обновлении — свежее ядро Linux 6.18.2 с улучшенной поддержкой нового оборудования. Обновились основные библиотеки: glibc 2.42, компилятор gcc 15.2.0 и утилиты для работы с дисками.
Из практичных изменений — скрипты теперь умеют работать с HTTPS-зеркалами, исправлены баги в обновлении расширений и резервном копировании настроек.
📍 Навигация: Вакансии • Задачи • Собесы
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
Собираем фулл-хаус: 3 курса по цене 1
Хватит выбирать между «полезно», «модно» и «для души». Мы запустили механику, которая позволяет собрать кастомный стек навыков без удара по бюджету: покупаете один курс — два других забираете бесплатно.
Для написания сложной автоматизации и тулинга забирайте обновлённый Python. Чтобы лучше понимать разработчиков и проектировать отказоустойчивые системы — архитектуру и шаблоны проектирования.
Для внедрения MLOps-практик пригодится полный набор по AI: от математики и ML-старта до разработки автономных агентов.
А алгоритмы и структуры данных помогут оптимизировать работу скриптов.
Собрать свой пак
Хватит выбирать между «полезно», «модно» и «для души». Мы запустили механику, которая позволяет собрать кастомный стек навыков без удара по бюджету: покупаете один курс — два других забираете бесплатно.
Для написания сложной автоматизации и тулинга забирайте обновлённый Python. Чтобы лучше понимать разработчиков и проектировать отказоустойчивые системы — архитектуру и шаблоны проектирования.
Для внедрения MLOps-практик пригодится полный набор по AI: от математики и ML-старта до разработки автономных агентов.
А алгоритмы и структуры данных помогут оптимизировать работу скриптов.
Собрать свой пак
Случайно создали файл «-rf» в директории. Теперь
rm -rf воспринимает его как флаги и готов снести всё вокруг.Что делать в такой ситуации? Как удалить этот файл?
Один из ответов
📍 Навигация: Вакансии • Задачи • Собесы
#задача_со_звёздочкой
Please open Telegram to view this post
VIEW IN TELEGRAM
😁2❤1👍1
Вышла новая версия 7-Zip с улучшениями для работы с архивами и багфиксами.
Главное — баг с извлечением TAR-архивов, содержащих sparse-файлы. Раньше 7-Zip мог их неправильно распаковывать, теперь всё работает корректно.
Файловый менеджер теперь использует имя файла как вторичный ключ сортировки и бенчмарк поддерживает системы с более чем 64 потоками.
📍 Навигация: Вакансии • Задачи • Собесы
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤2
Для админов на Windows есть Microsoft Store CLI, с помощью которого можно устанавливать и обновлять приложения без GUI.
Основные команды:
Поиск приложений по категориям и фильтрам:
store browse-apps --category Productivity --listing-type top-free
Можно искать по категории, подкатегории, рынку и языку, топ бесплатных, платных, новинки.
Установка:
store install vlc
store install 9NBLGGH4NNS1 # По ProductId
Похожие приложения:
store similar vlc
Список установленных:
store installed
Обновления:
store updates
store upgrade vlc
store upgrade --all
# Обновление конкретного приложения
store update 9WZDNCRFJ3Q2
Ограничение: работает только на машинах с включенным Microsoft Store. На Server Core придётся его сначала активировать.
📍 Навигация: Вакансии • Задачи • Собесы
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍1
📰 Обновления недели
Собрали самые заметные новости и обновы недели.
— Linux 6.19
— Offpunk 3.0
— Тысячи бесплатных образов Docker
— Блокировки Telnet не было
— Tiny Core Linux 17.0
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#дайджест_недели
Собрали самые заметные новости и обновы недели.
— Linux 6.19
— Offpunk 3.0
— Тысячи бесплатных образов Docker
— Блокировки Telnet не было
— Tiny Core Linux 17.0
📍 Навигация: Вакансии • Задачи • Собесы
#дайджест_недели
Please open Telegram to view this post
VIEW IN TELEGRAM
🔄 Релиз документации для Linux
Вышла версия 6.17 пакета man-pages — документации для GNU/Linux.
Масштабное обновление секций HISTORY и STANDARDS в справочных страницах. Теперь документация точнее описывает соответствие стандартам и историю API в старых системах.
Новые утилиты:
•
•
•
➡️ Анонс
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#пульс_индустрии
Вышла версия 6.17 пакета man-pages — документации для GNU/Linux.
Масштабное обновление секций HISTORY и STANDARDS в справочных страницах. Теперь документация точнее описывает соответствие стандартам и историю API в старых системах.
Новые утилиты:
•
grepc — поиск C-кода без индексации•
grepc_c, grepc_mk — вспомогательные утилиты•
mansectf — работа с секциями man-страниц📍 Навигация: Вакансии • Задачи • Собесы
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
🌐 tcpdump и анализ трафика
Все уровни проверены, логи изучены, но проблема остаётся неуловимой. Время смотреть на реальные пакеты. Утилита
➡️ Предыдущий пост
Базовое использование tcpdump
Начинает захват всех пакетов на интерфейсе eth0 и выводит на экран. Внимание: генерирует огромное количество данных. Используйте фильтры.
Фильтр по хосту:
Только пакеты от/к этому IP.
Фильтр по порту:
Только HTTP трафик.
Комбинация фильтров:
HTTPS трафик к конкретному хосту.
Направление:
Полезные флаги
•
•
•
•
•
Сохранение в файл для анализа
Сохраняет пакеты в файл capture.pcap. Можно открыть в Wireshark для детального анализа.
Чтение из файла:
Ограничение размера захвата
•
•
➡️ Типичные паттерны в дампах
— TCP SYN без SYN-ACK
Клиент отправляет SYN (запрос на соединение), но сервер не отвечает SYN-ACK. Возможные причины:
• Сервис не слушает на порту
• Firewall блокирует на сервере
• Пакеты не доходят до сервера
— TCP RST пакеты
Сервер отвечает reset — порт закрыт, соединение отклонено. Сервис точно не слушает.
— Множественные ретрансмиты
Пакет отправляется повторно, потому что ACK не приходит. Указывает на:
• Потери пакетов в сети
• Проблемы производительности на принимающей стороне
• Перегруженный канал
➡️ Wireshark — графический анализ
Сохраните дамп и откройте в Wireshark на вашей рабочей станции:
Wireshark умеет:
• Разбирать сотни протоколов
• Показывать TCP stream (весь диалог)
• Находить ретрансмиты автоматически
• Строить графики I/O
• Экспортировать объекты (файлы из HTTP)
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#арсенал_инженера
Все уровни проверены, логи изучены, но проблема остаётся неуловимой. Время смотреть на реальные пакеты. Утилита
tcpdump — инструмент для захвата и анализа сетевого трафика.Базовое использование tcpdump
tcpdump -i eth0
Начинает захват всех пакетов на интерфейсе eth0 и выводит на экран. Внимание: генерирует огромное количество данных. Используйте фильтры.
Фильтр по хосту:
tcpdump -i eth0 host 192.168.1.10
Только пакеты от/к этому IP.
Фильтр по порту:
tcpdump -i eth0 port 80
Только HTTP трафик.
Комбинация фильтров:
tcpdump -i eth0 host 192.168.1.10 and port 443
HTTPS трафик к конкретному хосту.
Направление:
tcpdump -i eth0 dst 192.168.1.10 # Только к этому IP
tcpdump -i eth0 src 192.168.1.10 # Только от этого IP
Полезные флаги
•
-n — не резолвить IP в имена (быстрее)•
-v — verbose (больше деталей)•
-vv — очень verbose•
-X — показать содержимое пакетов в hex и ASCII•
-A — показать содержимое в ASCII (для HTTP/текста)Сохранение в файл для анализа
tcpdump -i eth0 -w capture.pcap
Сохраняет пакеты в файл capture.pcap. Можно открыть в Wireshark для детального анализа.
Чтение из файла:
tcpdump -r capture.pcap
Ограничение размера захвата
tcpdump -i eth0 -w capture.pcap -C 100 -W 5
•
-C 100 — создавать новый файл каждые 100 МБ•
-W 5 — хранить максимум 5 файлов (ротация)— TCP SYN без SYN-ACK
14:32:15.123456 IP client > server: Flags [S], seq 123456
14:32:16.123456 IP client > server: Flags [S], seq 123456 # Ретрансмит
Клиент отправляет SYN (запрос на соединение), но сервер не отвечает SYN-ACK. Возможные причины:
• Сервис не слушает на порту
• Firewall блокирует на сервере
• Пакеты не доходят до сервера
— TCP RST пакеты
14:32:15.123456 IP client > server: Flags [S], seq 123456
14:32:15.123457 IP server > client: Flags [R.], seq 0
Сервер отвечает reset — порт закрыт, соединение отклонено. Сервис точно не слушает.
— Множественные ретрансмиты
14:32:15.123456 IP client > server: Flags [.], seq 1000:2000
14:32:15.623456 IP client > server: Flags [.], seq 1000:2000 # Ретрансмит
14:32:16.623456 IP client > server: Flags [.], seq 1000:2000 # Ещё ретрансмит
Пакет отправляется повторно, потому что ACK не приходит. Указывает на:
• Потери пакетов в сети
• Проблемы производительности на принимающей стороне
• Перегруженный канал
Сохраните дамп и откройте в Wireshark на вашей рабочей станции:
# На сервере
tcpdump -i eth0 -w /tmp/capture.pcap
# Скачайте файл
scp server:/tmp/capture.pcap .
# Откройте в Wireshark
Wireshark умеет:
• Разбирать сотни протоколов
• Показывать TCP stream (весь диалог)
• Находить ретрансмиты автоматически
• Строить графики I/O
• Экспортировать объекты (файлы из HTTP)
📍 Навигация: Вакансии • Задачи • Собесы
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
🔄 Новая эра легендарного редактора
Проект Vim анонсировал выход версии 9.2, которая принесла режим сравнения файлов, систему автодополнения и поддержку современных платформ.
Vim 9.2 включает поддержку нечёткого поиска при автодополнении в режиме вставки и возможность дополнять слова напрямую из регистров через CTRL-X CTRL-R
Реализована полная поддержка UI и буфера обмена Wayland, а на Linux и Unix-подобных системах Vim теперь следует спецификации XDG Base Directory.
Появилась вертикальная панель вкладок как альтернатива горизонтальной, GUI для Windows получил нативную тёмную тему для меню и заголовков окон.
➡️ Эволюция Vim9 Script
Язык получил нативную поддержку енамов, дженерик функций и кортежей. Встроенные функции теперь интегрированы как методы объектов, а классы поддерживают защищённые методы _new() и команду :defcompile для полной компиляции методов.
➡️ Революция в diff-режиме
Алгоритм «linematch» для настройки 'diffopt' выравнивает изменения между буферами на похожих строках, значительно повышая точность подсветки различий.
Новая опция 'diffanchors' позволяет указывать якорные точки для разделения и независимого сравнения секций буфера.
➡️ Официальный сайт
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека devops'a
#пульс_индустрии
Проект Vim анонсировал выход версии 9.2, которая принесла режим сравнения файлов, систему автодополнения и поддержку современных платформ.
Vim 9.2 включает поддержку нечёткого поиска при автодополнении в режиме вставки и возможность дополнять слова напрямую из регистров через CTRL-X CTRL-R
Реализована полная поддержка UI и буфера обмена Wayland, а на Linux и Unix-подобных системах Vim теперь следует спецификации XDG Base Directory.
Появилась вертикальная панель вкладок как альтернатива горизонтальной, GUI для Windows получил нативную тёмную тему для меню и заголовков окон.
Язык получил нативную поддержку енамов, дженерик функций и кортежей. Встроенные функции теперь интегрированы как методы объектов, а классы поддерживают защищённые методы _new() и команду :defcompile для полной компиляции методов.
Алгоритм «linematch» для настройки 'diffopt' выравнивает изменения между буферами на похожих строках, значительно повышая точность подсветки различий.
Новая опция 'diffanchors' позволяет указывать якорные точки для разделения и независимого сравнения секций буфера.
📍 Навигация: Вакансии • Задачи • Собесы
#пульс_индустрии
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7