Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Connection to Steam failed. Trying again #546

Open
joe-durisin opened this issue Oct 11, 2024 · 6 comments
Open

Connection to Steam failed. Trying again #546

joe-durisin opened this issue Oct 11, 2024 · 6 comments
Labels

Comments

@joe-durisin
Copy link

joe-durisin commented Oct 11, 2024

What did you expect to happen?

Tried downloading older version of a game, thought I got the command wrong or something.

Tried example command from the README file of the repo.
Still not working, any suggestions?

Instead of that, what actually happened?

Got an error:
Connection to Steam failed. Trying again

Which operating system are you running on?

Windows

Version

2.7.2

Command

./DepotDownloader -app 730 -depot 731 -manifest 7617088375292372759 -debug

Relevant log output

PS C:\test_test> ./DepotDownloader -app 730 -depot 731 -manifest 7617088375292372759 -debug
DepotDownloader v2.7.2+5a695e6dd13db74a286659d129784a872a5648b8
Runtime: .NET 8.0.8 on Microsoft Windows 10.0.19045
No username given. Using anonymous account with dedicated server subscription.
Connecting to Steam3...[ServerList] Resolving server list
[ServerList] Server list provider had no entries, will query SteamDirectory
09:30:53.2758053  System.Net.Http.RequestStart(scheme: https, host: api.steampowered.com, port: 443, pathAndQuery: /ISteamDirectory/GetCMListForConnect/v1/?format=vdf&cellid=0, versionMajor: 1, versionMinor: 1, versionPolicy: 0)
09:30:53.3111565  System.Net.NameResolution.ResolutionStart(hostNameOrAddress: api.steampowered.com)
09:30:53.3678201  System.Net.NameResolution.ResolutionStop()
09:30:53.3692644  System.Net.Sockets.ConnectStart(address: InterNetwork:16:{1,187,104,96,144,90,0,0,0,0,0,0,0,0})
09:30:53.4014494  System.Net.Sockets.ConnectStop()
09:30:53.4038570  System.Net.Security.HandshakeStart(isServer: False, targetHost: api.steampowered.com)
09:30:53.4878811  System.Net.Security.HandshakeStop(protocol: 3072)
09:30:53.4903900  System.Net.Http.ConnectionEstablished(versionMajor: 1, versionMinor: 1, connectionId: 0, scheme: https, host: api.steampowered.com, port: 443, remoteAddress: 104.96.144.90)
09:30:53.4914314  System.Net.Http.RequestLeftQueue(timeOnQueueMilliseconds: 189.0103, versionMajor: 1, versionMinor: 1)
09:30:53.4935441  System.Net.Http.RequestHeadersStart(connectionId: 0)
09:30:53.4939871  System.Net.Http.RequestHeadersStop()
09:30:53.6484376  System.Net.Http.ResponseHeadersStart()
09:30:53.6491939  System.Net.Http.ResponseHeadersStop(statusCode: 200)
09:30:53.6503138  System.Net.Http.ResponseContentStart()
09:30:53.6823294  System.Net.Http.ResponseContentStop()
09:30:53.6824602  System.Net.Http.RequestStop(statusCode: 200)
09:30:53.6878301  System.Net.Http.ConnectionClosed(versionMajor: 1, versionMinor: 1, connectionId: 0)
[ServerList] Resolved 160 servers
[ServerList] Next server candidate: Unspecified/cmp2-fra1.steamserver.net:27024 (WebSocket)
09:30:53.7036066  System.Net.Http.RequestStart(scheme: wss, host: cmp2-fra1.steamserver.net, port: 27024, pathAndQuery: /cmsocket/, versionMajor: 1, versionMinor: 1, versionPolicy: 2)
09:30:53.7041933  System.Net.NameResolution.ResolutionStart(hostNameOrAddress: cmp2-fra1.steamserver.net)
09:30:53.7046855  System.Net.NameResolution.ResolutionStop()
09:30:53.7050065  System.Net.Sockets.ConnectStart(address: InterNetworkV6:28:{105,144,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,155,133,250,20,0,0,0,0})
09:30:53.7325910  System.Net.Sockets.ConnectStop()
09:30:53.7328934  System.Net.Security.HandshakeStart(isServer: False, targetHost: cmp2-fra1.steamserver.net)
09:30:53.7635037  System.Net.Security.HandshakeFailed(isServer: False, elapsedMilliseconds: 30.4886, exceptionMessage: Authentication failed because the remote party sent a TLS alert: 'ProtocolVersion'.)
09:30:53.7636642  System.Net.Security.HandshakeStop(protocol: 0)
09:30:53.7649712  System.Net.Http.RequestLeftQueue(timeOnQueueMilliseconds: 61.0177, versionMajor: 1, versionMinor: 1)
09:30:53.7655265  System.Net.Http.RequestFailed(exceptionMessage: The SSL connection could not be established, see inner exception.)
09:30:53.7726190  System.Net.Http.RequestFailedDetailed(exception: System.Net.Http.HttpRequestException: The SSL connection could not be established, see inner exception.
 ---> System.Security.Authentication.AuthenticationException: Authentication failed because the remote party sent a TLS alert: 'ProtocolVersion'.
 ---> System.ComponentModel.Win32Exception (0x80090326): The message received was unexpected or badly formatted.
   --- End of inner exception stack trace ---
   at System.Net.Security.SslStream.ForceAuthenticationAsync[TIOAdapter](Boolean receiveFirst, Byte[] reAuthenticationData, CancellationToken cancellationToken)
   at System.Net.Security.SslStream.ProcessAuthenticationWithTelemetryAsync(Boolean isAsync, CancellationToken cancellationToken)
   at System.Net.Http.ConnectHelper.EstablishSslConnectionAsync(SslClientAuthenticationOptions sslOptions, HttpRequestMessage request, Boolean async, Stream stream, CancellationToken cancellationToken)
   --- End of inner exception stack trace ---
   at System.Net.Http.ConnectHelper.EstablishSslConnectionAsync(SslClientAuthenticationOptions sslOptions, HttpRequestMessage request, Boolean async, Stream stream, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(QueueItem queueItem)
   at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.HttpConnectionWaiter`1.WaitForConnectionWithTelemetryAsync(HttpRequestMessage request, HttpConnectionPool pool, Boolean async, CancellationToken requestCancellationToken)
   at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
   at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.HttpMessageInvoker.<SendAsync>g__SendAsyncWithTelemetry|6_0(HttpMessageHandler handler, HttpRequestMessage request, CancellationToken cancellationToken))
09:30:53.7737749  System.Net.Http.RequestStop(statusCode: -1)
[01d961b3cdaf4504b345c859a5086001/WebSocketContext] Exception connecting websocket: System.Net.WebSockets.WebSocketException - Unable to connect to the remote server
[Steam3Session] Disconnected: bIsConnectionRecovery = False, UserInitiated = False, bExpectingDisconnectRemote = False
Connection to Steam failed. Trying again

Additional Information

Looked at issue #76, I am able to connect to https://api.steampowered.com/ISteamDirectory/GetCMList/v1?cellid=0
Added the exe to firewall and AVG exceptions.

OS
Edition Windows 10 Home
Version 22H2
Installed on ‎08-‎Jul-‎21
OS build 19045.5011
Experience Windows Feature Experience Pack 1000.19060.1000.0

Device
CPU: 7700K
RAM: 32GB
GPU: 6650XT

@joe-durisin
Copy link
Author

After few failed attempts it seems that it is working, this issue may be a duplicate of #540.

@modderchris
Copy link

it is a duplicate error, many people are having this "badly formatted, TLS version" error

@xPaw
Copy link
Member

xPaw commented Oct 13, 2024

To me it seems like a real problem with Steam servers, because steam mobile chat app also broke: https://steamcommunity.com/discussions/forum/8/4849905062599698735/

@modderchris
Copy link

interesting, they ping fine, only the login authentication for game downloads is buggy
perhaps the depotdownloader can have a special option added for "never abort, try forever" which I am surprised isn't more common as lots of people have poor connections because there is no way to properly place routers(because people are RF idiots most of the time) and lots of homes are incapable of being wired for ethernet(yes I know it is a protocol, but saying CATx omits the possibility of MOCA, powerline, fiber or other options)

the "try forever" needs to exist because lots of people still literally can't make their connection better, at least for another 10-20 years
sorry ranty

the solution to steam messing up is to have a debug switch for "never abort" that allows you to force retry until the entire command intent completes successfully(including lost connections during the file download step causing the command to repeat until all files validate/download, as pre-downloaded ones will validate to speed up retries)

it remains an "unsolved" bug until steam(valve) fixes their s**t or we have a debug workaround for the intermittent issues

xPaw added a commit that referenced this issue Oct 13, 2024
@xPaw
Copy link
Member

xPaw commented Oct 15, 2024

See SteamRE/SteamKit#1448 for more discussion. Might have been fixed on Steam's side.

@modderchris
Copy link

sorry xpaw, if it was I wouldn't be so pissed trying to get my skyrim mod install to boot with mods that worked before on the same version I am trying to re-download
never had an issue until skyrim non-consensually updated to a version my irreplaceable mods couldn't work on
then restoring the pre-updated version had this issue and it seems also causes corrupt downloads
unless steam did a major server update in the last 3 days(I very much doubt it but tuesday is the update day) then it is still broken

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants