Вроде понял теперь что к чему, спасибо. Единственное OpenVPN сервер я не смогу поднять у себя, т.к. идея именно проксировать до рабочего VPN который уже поднят на другом сервере и я его не могу менеджить никак, но я так понимаю это не особо что-то меняет, можно просто вместо 127.0.0.1 указать его доменное имя.
Да. Даже если на “том конце” сервер не на одном узле с xray, все будет работать.
Наблюдаю SS+prefix работает на мобильных операторах (вновь?)
В общем я попробовал dokodemo-door, сначала обрадовался что заработало, но на деле та же проблема что и через socks-proxy и напрямую, т.е. оно вроде как коннектится, но потом в логах впн постоянно идёт вот это:
Connection reset, restarting [0]
Да, xray сам по себе (policy) и протоколы имеют дефолтные таймауты, после которых сессия просто рвется. Нужно поднастроить и в openvpn включить посылку keepalive-пингов, чтобы сессия не падала
Изначально было вот так:
ping 10
ping-restart 60
сделал ping 3, но как-то особо ничего не поменялось
Нужно проверять всю цепочку и логи xray: точно ли подключение уходит в Xray, а не мимо и нет ли проблемы на последнем участке, где он выходит с сервера и подключается к серверу Openvpn.
У меня такая схема работала несколько суток и на wireguard и на openvpn вполне успешно. Задумчиво конечно, но работала.
Врубайте все логи и на клиенте и на сервере Xray, чекайте что происходит.
{
"log": {
"access": "/var/log/xray/access.log",
"error": "/var/log/xray/error.log",
"loglevel": "info",
"dnsLog": true,
}
}
Вот так выглядит на клиенте:
2024/09/18 14:28:02 [Info] [1646436414] proxy/socks: TCP Connect request to tcp:myvpn:16147
2024/09/18 14:28:02 [Info] [1646436414] app/dispatcher: default route for tcp:myvpn:16147
2024/09/18 14:28:02 [Info] [1646436414] transport/internet/tcp: dialing TCP to tcp:myvps:443
2024/09/18 14:28:02 from tcp:127.0.0.1:59134 accepted tcp:myvpn:16147 [proxy]
2024/09/18 14:28:02 [Info] [1646436414] proxy/vless/outbound: tunneling request to tcp:myvpn:16147 via myvps:443
2024/09/18 14:28:02 [Info] [1646436414] proxy: XtlsPadding 88 105 0
2024/09/18 14:28:02 [Info] [1646436414] proxy: Xtls Unpadding new block, content 100 padding 0 command 0
2024/09/18 14:28:02 [Info] [1646436414] proxy: XtlsPadding 96 178 0
2024/09/18 14:28:02 [Info] [1646436414] proxy: XtlsPadding 365 123 0
2024/09/18 14:28:02 [Info] [1646436414] proxy: Xtls Unpadding new block, content 4022 padding 211 command 0
2024/09/18 14:28:02 [Info] [1646436414] proxy: XtlsPadding 96 45 1
2024/09/18 14:28:02 [Info] [1646436414] proxy: XtlsFilterTls stop filtering1655
2024/09/18 14:28:02 [Info] [1646436414] proxy: Xtls Unpadding new block, content 278 padding 212 command 0
2024/09/18 14:28:02 [Info] [1646436414] proxy: Xtls Unpadding new block, content 96 padding 23 command 1
2024/09/18 14:28:08 [Info] [1646436414] app/proxyman/inbound: connection ends > proxy/socks: connection ends > context canceled
Вот так на сервере:
2024/09/18 18:28:26 [Info] [2568750180] proxy/vless/encoding: Xtls Unpadding new block0 0 content 96 padding 106 0
2024/09/18 18:28:26 [Info] [2568750180] proxy/vless/encoding: Xtls Unpadding new block0 0 content 365 padding 233 0
2024/09/18 18:28:26 [Info] [2568750180] proxy/vless/encoding: XtlsPadding 4022 165 0
2024/09/18 18:28:26 [Info] [2568750180] proxy/vless/encoding: XtlsPadding 278 85 0
2024/09/18 18:28:26 [Info] [2568750180] proxy/vless/encoding: Xtls Unpadding new block0 0 content 96 padding 134 0
2024/09/18 18:28:26 [Info] [2568750180] proxy/vless/encoding: Xtls Unpadding new block0 0 content 96 padding 176 1
2024/09/18 18:28:26 [Info] [2568750180] proxy/vless/encoding: XtlsFilterTls stop filtering96
2024/09/18 18:28:26 [Info] [2568750180] proxy/vless/encoding: XtlsPadding 96 106 1
2024/09/18 18:28:37 [Info] [1640820586] proxy/vless/inbound: firstLen = 254
2024/09/18 18:28:37 [Info] [1640820586] proxy/vless/inbound: received request for tcp:myvpn:16147
2024/09/18 18:28:37 [Info] [1640820586] proxy/vless/encoding: Xtls Unpadding new block0 16 content 88 padding 82 0
2024/09/18 18:28:37 [Info] [1640820586] app/dispatcher: default route for tcp:myvpn:16147
2024/09/18 18:28:37 [Info] [1640820586] transport/internet/tcp: dialing TCP to tcp:myvpn:16147
2024/09/18 18:28:37 172.23.0.6:35042 accepted tcp:myvpn:16147 [vless_tls >> direct] email: my@email.com
2024/09/18 18:28:37 [Info] [1640820586] proxy/freedom: connection opened to tcp:myvpn:16147, local endpoint 172.23.0.9:37026, remote endpoint 54.175.35.115:16147
2024/09/18 18:28:37 [Info] [1640820586] proxy/vless/encoding: XtlsPadding 100 153 0
2024/09/18 18:28:37 [Info] [1640820586] proxy/vless/encoding: Xtls Unpadding new block0 0 content 96 padding 39 0
2024/09/18 18:28:37 [Info] [1640820586] proxy/vless/encoding: Xtls Unpadding new block0 0 content 365 padding 77 0
2024/09/18 18:28:37 [Info] [1640820586] proxy/vless/encoding: XtlsPadding 4022 38 0
2024/09/18 18:28:37 [Info] [1640820586] proxy/vless/encoding: XtlsPadding 278 130 0
2024/09/18 18:28:37 [Info] [1640820586] proxy/vless/encoding: Xtls Unpadding new block0 0 content 96 padding 223 0
2024/09/18 18:28:37 [Info] [1640820586] proxy/vless/encoding: Xtls Unpadding new block0 0 content 96 padding 68 1
2024/09/18 18:28:37 [Info] [1640820586] proxy/vless/encoding: XtlsFilterTls stop filtering96
2024/09/18 18:28:37 [Info] [1640820586] proxy/vless/encoding: XtlsPadding 96 63 1
2024/09/18 18:28:48 [Info] [2859029822] proxy/vless/inbound: firstLen = 188
2024/09/18 18:28:48 [Info] [2859029822] proxy/vless/inbound: received request for tcp:myvpn:16147
2024/09/18 18:28:48 [Info] [2859029822] proxy/vless/encoding: Xtls Unpadding new block0 16 content 88 padding 16 0
2024/09/18 18:28:48 [Info] [2859029822] app/dispatcher: default route for tcp:myvpn:16147
2024/09/18 18:28:48 [Info] [2859029822] transport/internet/tcp: dialing TCP to tcp:myvpn:16147
2024/09/18 18:28:48 172.23.0.6:56666 accepted tcp:myvpn:16147 [vless_tls >> direct] email: my@email.com
Только вот какие ещё выводы можно из этих логов сделать, явно подключение идёт не мимо xray, а вот почему обрывается не понятно.
В логе не видно никакх обрывов по timeout или failed connection, можно погрепать всю жизнь конкретной сессии по [session_id]
2024/09/18 18:28:37 [Info] [1640820586] proxy/freedom: connection opened to tcp:myvpn:16147, local endpoint x.x.x.x:37026, remote endpoint x.x.x.x:16147
Здесь на сервере Xray не заблокированы файерволом ответы от openvpn-сервера?
Еще можно попробовать подкрутить policy 0 (если конечно вы явно не используете какие-то другие номера политик) Xray-docs-next/docs/ru/config/policy.md at main · XTLS/Xray-docs-next · GitHub
Особенно в части connIdle
и downlinkOnly
. Например uplinkOnly
по умолчанию всего 2 секунды
На том же сервере прекрасно проксирует shadowsocks, т.ч. файервол отпадает. К тому же до обрыва можно даже успеть открыть какой-нибудь ресурс который доступен только из под этого VPN, притом как я уже говорил поведение одинаковое что с xray что напрямую, поэтому складывается впечатление что через xray никакой обфускации нет для OpenVPN и его точно также рубит ТСПУ. Жаль у меня нет простого способа проверить подключение через xray с какой-нибудь ноды вне РФ.
Policy на сервере или на клиенте нужно настраивать?
Обфускация конечно есть, по логам мы видим, что трафик “превращается” в https (xtls padding). Другое дело, если ТСПУ действительно отсекает вам или сессию https по каким-то своим критериям или сессию на последнем куске (xray server - openvpn-сервер) - тогда дело дрянь, конечно.
Таймауты лучше увеличить на обоих узлах на время отладки.
Можно конечно попробовать Cloak или obfs4, но тут надо и сервер openvpn прятать “за них”, это как я понял, не вариант
"policy": {
"levels": {
"0": {
"uplinkOnly": 300,
"downlinkOnly": 300
}
}
},
Попробовал вот так сделать на клиенте и сервере, ничего особо не поменялось.
А Cloak разве не получится использовать таким же образом?
Если предположить, что трафик openvpn ломается где-то на участке xray-сервер - openvpn-сервер, то Cloak надо в идеале ставить прямо на хосте с openvpn.
А почему он должен ломаться? Ведь shadowsocks-сервер (тот же VPS) - openvpn-сервер работает без проблем.
В таком случае пускайте openvpn по shadowsocks вместо vless
Я в общем так и делаю Просто хотел разобраться почему не работает через VLESS, т.к. может пригодиться на случай если shadowsocks начнут блочить, что насколько я помню вполне возможно.
Москва, Интек-М. Наблюдается нестабильная работа XRay. Подключение есть - дальше в интернет не ходит, собственно как иногда при использовании OpenVPN. Неужели и до XRay добрались.
у проксей типа xray не существует состояния подключено/отключено, каждый новый сайт - новое подключение к серверу, к тому же вы не назвали какой у вас конфиг, непонятно вообще ничего
Это же не совсем так, есть же mux который должен переиспользовать существующие подключения?