Что делать, если не отображается трафик клиентов и их онлайн-статус в панели 3x-ui?
В логах обнаружена ошибка:
DEBUG - Failed to fetch Xray traffic:rpc error: code = Unavailable desc = connection error: desc = "error reading server preface: EOF"
Порты, кажется, работают и не конфликтуют, но я не специалист. На VPS-сервере установлены последние версии xray и 3x-ui. Как решить эту проблему?
The error “error reading server preface: EOF” typically indicates a communication breakdown between the 3x-ui panel and the Xray core, preventing traffic data collection. This is often caused by configuration mismatches, version conflicts, or communication protocol issues between the components.
Содержание
- Основные причины проблемы
- Пошаговое решение проблемы
- Проверка конфигурации Xray
- Решение конфликтов версий
- Дополнительные методы устранения
- Профилактические меры
Основные причины проблемы
На основе исследования GitHub-issues, основные причины ошибки “Failed to fetch Xray traffic” с EOF-ошибкой включают:
- Несоответствие версий компонентов - между 3x-ui и xray-core
- Проблемы с конфигурацией - особенно с настройками логирования и статистики
- Ошибки в формате конфигурации - JSON-синтаксические ошибки
- Конфликты портов или процессов - перекрытие портов или зомби-процессы
- Проблемы с правами доступа - недостаточные права для чтения конфигурации
Как указано в issue #1684, эта ошибка возникает из-за проблем с запросом статистики от xray-core: QueryStats only works its own stats.Manager.
Пошаговое решение проблемы
1. Перезапуск сервисов
systemctl restart x-ui systemctl restart xray
2. Проверка статуса сервисов
systemctl status x-ui systemctl status xray
3. Проверка логов на наличие ошибок
journalctl -u x-ui -f journalctl -u xray -f
Важно: Если после перезапуска ошибка сохраняется, переходите к следующим шагам диагностики.
Проверка конфигурации Xray
1. Проверка файла конфигурации
/usr/local/x-ui/x-ui xray check
2. Валидация JSON-формата
cat /usr/local/x-ui/bin/config.json | python3 -m json.tool
3. Настройка логирования трафика
Согласно официальной документации, добавьте путь к access log в настройках:
- Перейдите в “Xray Configs”
- Установите путь к логу:
./access.log - Сохраните и перезапустите xray
4. Проверка конфигурации inbound/outbound
Убедитесь, что все конфигурации корректны и не содержат синтаксических ошибок, особенно в настройках протоколов (VLESS, Vmess, Trojan и т.д.).
Решение конфликтов версий
1. Проверка совместимости версий
Проверьте совместимость версий 3x-ui и xray-core на официальном GitHub.
2. Обновление компонентов
# Обновление 3x-ui
bash <(curl -Ls https://raw.githubusercontent.com/MHSanaei/3x-ui/main/install.sh)
# Проверка версии xray
/usr/local/x-ui/x-ui version
3. Ручная установка совместимой версии xray
Если автоматическое обновление не решает проблему, установите совместимую версию вручную.
4. Полная переустановка
В крайних случаях выполните полную переустановку:
bash <(curl -Ls https://raw.githubusercontent.com/MHSanaei/3x-ui/main/install.sh) --remove
Дополнительные методы устранения
1. Очистка кэша и временных файлов
rm -rf /tmp/x-ui-*
rm -rf /var/log/x-ui/*
2. Проверка прав доступа
chown -R nobody:nogroup /usr/local/x-ui/
chmod -R 755 /usr/local/x-ui/
3. Проверка наличия конфликтующих процессов
lsof -i :port_number ps aux | grep xray
4. Тестирование конфигурации вручную
/usr/local/x-ui/xray run -test -confdir /usr/local/x-ui/bin/
Профилактические меры
1. Регулярное резервное копирование конфигурации
cp /usr/local/x-ui/bin/config.json /usr/local/x-ui/bin/config.json.bak
2. Мониторинг состояния сервисов
Настройте мониторинг с помощью cron:
*/5 * * * * /usr/local/x-ui/x-ui check > /dev/null 2>&1
3. Своевременное обновление
Регулярно проверяйте наличие обновлений и устанавливайте их.
4. Использование стабильных версий
Избегайте использования бета-версий в рабочих средах.
Источники
- GitHub Issue #1684 - get xray traffic failed rpc error
- GitHub Issue #1784 - Panel won’t restart xray
- GitHub Issue #3178 - xray state: Not Running
- GitHub Issue #3301 - xray state: Not running
- GitHub Configuration Wiki
- GitHub Common questions and problems
- XTLS/Xray-core Discussion #4124 - EOF error with CDN
Заключение
- Основная проблема заключается в сбое коммуникации между 3x-ui и xray-core, что приводит к невозможности сбора статистики трафика.
- Наиболее эффективное решение - проверка и обновление компонентов, валидация конфигурации и устранение конфликтов версий.
- Для предотвращения проблем в будущем рекомендуется регулярно делать резервные копии конфигураций и использовать только совместимые версии компонентов.
- Если проблема сохраняется после всех предпринятых мер, стоит обратиться к сообществу разработчиков 3x-ui на GitHub для получения более специализированной помощи.
Обратите внимание, что эта проблема часто встречается при обновлении компонентов, поэтому всегда проверяйте совместимость версий перед установкой обновлений.