Соседние протоколы: VMess, Trojan, Shadowsocks и прокси
Первое слово строки говорит, по каким правилам пойдёт разговор с сервером. Кроме VLESS, там встречаются ещё три-четыре имени, и у каждого своя манера передачи. Ниже — чем они отличаются, без рейтингов и «лучших».
Короткий ответ
Все они решают одну задачу — довести ваш трафик до сервера и обратно. Различаются они тем, что берут на себя, а что оставляют соседним слоям.
- VMess — старший родственник VLESS с собственным шифрованием на уровне протокола.
- Trojan прикидывается обычным защищённым запросом к веб-серверу, но платит за это настоящим доменом и сертификатом.
- Shadowsocks — самый простой шифрующий прокси, и маскировки у него нет вовсе.
- Обычные прокси передают данные без шифрования — это не то же самое, что перечисленные выше.
- Выбирать не приходится. В строке уже стоит то, на что настроен сервер, и переключателя протокола в приложении нет.
Сравнение по существу
Только свойства самих протоколов. Программы, которые их читают, тут ни при чём.
| Протокол | Своё шифрование | Маскировка | Что нужно на стороне сервера |
|---|---|---|---|
| VLESS | Нет, закрывает внешний слой | Через режим слоя, например Reality | Ничего лишнего: сертификат не обязателен |
| VMess | Да, на уровне протокола | Отдельной маскировки не несёт | Совпадение времени с устройством |
| Trojan | Идёт внутри защищённого слоя | Выдаёт себя за обычный запрос к сайту | Настоящий домен и сертификат |
| Shadowsocks | Да, это шифрующий прокси | Нет, сам по себе ни подо что не подделывается | Минимум настройки |
| Обычный прокси | Нет | Нет | Ничего |
Почему у VMess «сбиваются часы»
Потому что этот протокол требует, чтобы время на устройстве и на сервере совпадало. Разошлись часы — разговор не состоялся.
Это известная причина отказа, и выглядит она обидно: интернет есть, строка верная, а подключения нет.
VLESS на часы устройства не смотрит вовсе — одно из немногих отличий, которое читатель замечает своими глазами.
Что проверить в этом случае
Автоматические дату и время на устройстве. Расхождение даже в несколько минут ломает установление защищённого соединения.
Если после этого заработало — дело было в часах, а не в строке и не в сервере.
Почему Shadowsocks так часто попадается в открытых раздачах
Он проще всех в настройке, поэтому им и наполняют открытые списки.
Своей маскировки у него нет: её добавляют отдельными надстройками, и в раздачах этим обычно не занимаются.
Практический вывод простой: строка Shadowsocks из открытого списка — это ровно тот случай, о котором отдельная страница.
Чего в этом семействе нет вовсе
Привычных WireGuard и OpenVPN. Это протоколы другого класса, и в ядре, на котором работает клиент, их просто нет.
Поэтому строка от такого протокола в приложение не добавится: ей нечем её прочитать. Это не поломка и не ограничение сборки.
- Совпадают источники на четырёх именах: VLESS, VMess, Trojan и Shadowsocks.
- Про остальной список сведения расходятся — один источник называет одно, другой другое, и честнее сказать «зависит от сборки».
- Один доступ не равен одному протоколу. В списке серверов могут лежать подключения с разными настройками, и программа берёт то, которое поднимается.
Короткие ответы
Какой протокол лучше?
Вопрос без ответа: сравнивать надо связку целиком, вместе с защитным слоем и сервером. Отдельно взятый протокол ни быстрым, ни медленным не бывает.
Мне дали строку Trojan вместо VLESS. Это понижение?
Нет, это другая манера маскировки. Trojan прикидывается обычным обращением к сайту, а Reality — обращением к чужому известному сайту. Задача одна, приёмы разные.
Можно ли переделать строку одного протокола в другой?
Нет. Сервер настроен на один разговор и на другой не перейдёт. Подобрать параметры со стороны клиента невозможно.
Почему у меня в списке серверов записи разных протоколов?
Так бывает: внутри одного доступа могут лежать подключения с разными настройками. Приложение поднимает то, которое отвечает.