Вот здесь есть конфиг, я оттуда изначально начинал
Настроил клиент и сервер vless reality на sing-box, но почему-то если на клиенте задать любой буквенный tls.server_name, то соединение не устанавливается. А если пусто или ip, то устанавливается. Подскажите, что делаю не так и почему возникает проблема со sni?
Имя в конфиге и в сертификате должно быть одинаковое (либо можно отключить проверку серта allow_insecure)
В сертификате *.aaa.bbb, в sni aaa.bbb. При tls.insecure=true (клиент) тоже не соединяется. Самое смешное, что при тесте соединения клиент-сервер внутри туннеля та же проблема “reality verification failed“. В логе сервера такое:
INFO outbound/direct[t-dout]: outbound connection to aaa.bbb:443
+0600 2025-12-19 03:55:30 DEBUG dns: lookup domain aaa.bbb
+0600 2025-12-19 03:55:30 DEBUG dns: exchanged aaa.bbb NOERROR 138
+0600 2025-12-19 03:55:30 DEBUG dns: exchanged A aaa.bbb. 138 IN A
+0600 2025-12-19 03:55:30 DEBUG dns: exchanged A aaa.bbb. 138 IN A
+0600 2025-12-19 03:55:30 DEBUG dns: lookup succeed for aaa.bbb:
+0600 2025-12-19 03:55:30 INFO outbound/direct[t-dout]: outbound connection to aaa.bbb:443
+0600 2025-12-19 03:55:30 DEBUG dns: lookup domain aaa.bbb
+0600 2025-12-19 03:55:30 DEBUG dns: lookup succeed for aaa.bbb:
+0600 2025-12-19 03:55:30 INFO outbound/direct[t-dout]: outbound connection to aaa.bbb:443
Сколько не экспериментировал, у меня на паре клиент-сервер sing-box 1.12.12 и 1.12.13 reality работает только если в tls.server_name клиента пусто или ip. Как только там появляется хотя-бы одна буква, сразу “reality verification failed“. Интересно, это у всех так или только у меня? Не верится, что хоть у кого-то это работает не через опу… ![]()
Конфиг то покажешь? Или нам гадать на кофейной гуще?
Там особо смотреть-то нечего, все из доки Introduction - sing-box
Клиент:
“tls”: {
“enabled”: true,
“server_name”: “aaa.bbb”,
“insecure”: false,
“utls”: {
“enabled”: true,
},
“reality”: {
“enabled”: true,
“public_key”: “—”,
“short_id”: “—”
}
}
Сервер:
“tls”: {
“enabled”: true,
“reality”: {
“enabled”: true,
“handshake”: {
“domain_resolver”: “rdns”,
“server”: “aaa.bbb”,
“server_port”: 443
},
“private_key”: “—”,
“short_id”: [“—”],
“max_time_difference”: “3m”
}
}
fingerprint не указываете? Где параметр flow? type? Или вы кусочек конфига выложили?
Фингерпринты перебирал, пробовал с xtls-rprx-vision и без, мультиплексоры разные, транспорт, - результат один. Тут-бы понять что может влиять на “reality verification failed“, т.е. если правильно понимаю на успешность tls handshake, вроде привел что в логику вписывается. Но дока у афтара скудная, может что и упустил. У меня пока не получается выстроить полную логическую цепочку.
Влиять может либо несовпадение shortid, либо пары ключей (public/private), либо UUID.
Но тогда наверное и с пустым sni не соединялось-бы, если правильно понимаю?
Вы не путаете параметры server и server_name?
Где именно? Какую конфигурацию выбрать? - #47 by _sh
Конфиг то неполный, параметр server в клиенте присутствует? server - это адрес VPS(домен или IP), server_name это домен, под который маскировка (sni).
Покажи нормальный инбаунд сервера соблюдая форматирование, а не вот этот огрызок непонятный!
И зачем там domain_resolver тоже как-то не особо ясно.
UPD
У меня на серверной стороне за всё что касается VLESS отвечает Xray. Sing-Box тоже есть, но для других вещей типа hy2 и tuic. Но даже по образцу Xray если накидать инбаунд в синге, то будет как-то так:
Спойлер
{
"inbounds": [
{
"type": "vless",
"tag": "vless-in",
"listen": "0.0.0.0",
"listen_port": 443,
"users": [
{
"name": "admin",
"uuid": "sing-box generate uuid",
"flow": "xtls-rprx-vision"
}
],
"tls": {
"enabled": true,
"server_name": "www.google.com",
"alpn": ["h2", "http/1.1"],
"reality": {
"enabled": true,
"handshake": {
"server": "www.google.com",
"server_port": 443,
},
"private_key": "sing-box generate reality-keypair",
"short_id": ["sing-box generate rand --hex 8"]
}
}
}
]
}
А что тут неясного-то?
WARN[0000] missing route.default_domain_resolver or domain_resolver in dial fields is deprecated in sing-box 1.12.0 and will be removed in sing-box 1.14.0, checkout documentation for migration: https://sing-box.sagernet.org/migration/#migrate-outbound-dns-rule-items-to-domain-resolver
Xray - это уже другая история… Начинаю предполагать, что проблемка позаковыристее, а hy2 у меня тоже работает. ![]()
Разобрался, вопрос снимается. Благодарю всех кто откликнулся. ![]()
Написал бы, в чем было дело, может кому-нибудь пригодится
Да вроде никто ничего не скрывает: сравните то, что выложил я с тем, что выложил armdyn и шлепните себя мухобойкой за лень… ![]()
Ты ничего так и не выложил, во-первых. Во-вторых, ты общаешься с таким гонором, что… промолчу.