Об этом проекте

Oryx — это приложение с текстовым пользовательским интерфейсом (TUI) для перехвата сетевого трафика в Linux с помощью eBPF. Оно предназначено для пользователей, которые хотят наблюдать и анализировать пакеты из командной строки без графического анализатора пакетов. Основные возможности, описанные в проекте: - Инспекция и визуализация трафика в реальном времени в терминале. - Подробная статистика трафика. - Функциональность фаервола. - Обозреватель метрик. - Нечёткий поиск для навигации по захваченным данным. Поддерживаемые протоколы сгруппированы по уровням: - Транспортный уровень: TCP, UDP, SCTP. - Сетевой уровень: IP (v4 и v6), ICMP (v4 и v6), IGMP (v1, v2, v3). - Канальный уровень: ARP. Требования и примечания по платформе: - Требуется операционная система на базе Linux. - Рекомендуется версия ядра Linux 6.10 или выше, чтобы все функции работали корректно. - В Debian или Ubuntu README указывает минимальные версии Debian 13 (Trixie) или новее и Ubuntu 24.04 (Noble) или новее. - Для корректного отображения иконок может потребоваться установка Nerd Fonts. Варианты установки: - Готовые бинарные файлы доступны на странице релизов проекта. - В Arch Linux пакет можно установить из репозитория extra с помощью pacman (`pacman -S oryx`). - Сборка из исходного кода требует ночной (nightly) цепочки инструментов Rust с компонентом rust-src, инструмента bpf-linker, а затем `cargo xtask build --release`, что создаёт исполняемый файл в `target/release/oryx`, который можно поместить в `$PATH`. Использование: - Инструмент запускается командой `sudo oryx`, так как для захвата пакетов требуются повышенные привилегии. - Поддерживаются аргументы командной строки; `oryx --help` выводит список доступных опций. Примечания по проекту и участию: - Проект заявляет строгую политику отказа от вкладов, созданных с помощью LLM. - Pull request следует отправлять только после предварительного issue или обсуждения. - Pull request должны быть небольшими и сфокусированными. - Логотип разработан @ling0x. - Проект распространяется под лицензией GPLv3.