43 lines
1.9 KiB
Plaintext
43 lines
1.9 KiB
Plaintext
HY2XS: Hysteria runtime layer plan
|
|
|
|
Цель
|
|
Сделать серверный транспорт предсказуемым и полностью ванильным со стороны Hysteria2.
|
|
|
|
Решения
|
|
1. Hysteria2 не форкается.
|
|
2. Скачивается во время установки с official upstream.
|
|
3. Используется одна baseline-схема без port hopping.
|
|
|
|
Базовый runtime policy
|
|
- Listen: 0.0.0.0:<PORT>
|
|
- Transport: QUIC/UDP
|
|
- IPv4-only
|
|
- obfs.type: salamander
|
|
- obfs.password: генерируется при установке
|
|
- bandwidth.up: 50 Mbps
|
|
- bandwidth.down: 50 Mbps
|
|
- ignoreClientBandwidth: false
|
|
|
|
Что надо реализовать
|
|
1. Шаблон server config.
|
|
2. Генератор переменных для шаблона.
|
|
3. Проверку валидности конфига перед запуском.
|
|
4. Фиксацию фактической версии Hysteria в post-install.env.
|
|
|
|
Нужно зафиксировать в коде
|
|
- Единый путь к конфигу.
|
|
- Единый путь к бинарю.
|
|
- Единый путь к data dir.
|
|
- Единый набор сетевых переменных.
|
|
|
|
Что не смешивать
|
|
- Не смешивать UI-состояние и transport-конфиг в одном месте.
|
|
- Не полагаться на host TCP BBR как на главный механизм управления Hysteria.
|
|
- Не смешивать install runtime layer и access/delivery layer.
|
|
|
|
Acceptance criteria
|
|
- Сервис стартует через systemd.
|
|
- Конфиг читается без ошибки.
|
|
- Тестовый совместимый клиент подключается.
|
|
- Политика speed limit соответствует согласованной серверной и клиентской конфигурации.
|