"An existing connection was forcibly closed by the remote host"

Recently set up a new client with Duplicati the way we’ve been setting up most of our clients, on a B2 bucket, backing up whatever important server files the client has directly from their server. It’s failed around 5 times in a row now and I cannot figure out what is causing this issue. It keeps saying connection was forcibly closed, but does this mean there’s an internet issue or something? Most everything is default settings, smart retention and a timeout value of 5 minutes, and yet it keeps failing in a concerning way. Logs posted below.

            {
  "DeletedFiles": 0,
  "DeletedFolders": 2,
  "ModifiedFiles": 0,
  "ExaminedFiles": 2536,
  "OpenedFiles": 2534,
  "AddedFiles": 2534,
  "SizeOfModifiedFiles": 0,
  "SizeOfAddedFiles": 44796571841,
  "SizeOfExaminedFiles": 44949542102,
  "SizeOfOpenedFiles": 44796571841,
  "NotProcessedFiles": 0,
  "AddedFolders": 27,
  "TooLargeFiles": 0,
  "FilesWithError": 0,
  "ModifiedFolders": 0,
  "ModifiedSymlinks": 0,
  "AddedSymlinks": 0,
  "DeletedSymlinks": 0,
  "PartialBackup": false,
  "Dryrun": false,
  "MainOperation": "Backup",
  "CompactResults": null,
  "VacuumResults": null,
  "DeleteResults": null,
  "RepairResults": null,
  "TestResults": null,
  "ParsedResult": "Fatal",
  "Interrupted": false,
  "Version": "2.1.0.2 (2.1.0.2_beta_2024-11-29)",
  "EndTime": "2025-01-14T05:30:39.7781311Z",
  "BeginTime": "2025-01-14T03:00:00.0070637Z",
  "Duration": "02:30:39.7710674",
  "MessagesActualLength": 3090,
  "WarningsActualLength": 0,
  "ErrorsActualLength": 2,
  "Messages": [
    "2025-01-13 21:00:00 -06 - [Information-Duplicati.Library.Main.Controller-StartingOperation]: The operation Backup has started",
    "2025-01-13 21:00:00 -06 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: List - Started:  ()",
    "2025-01-13 21:00:18 -06 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: List - Completed:  (17.72 KB)",
    "2025-01-13 21:00:19 -06 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-b9556eb219bb1494194511fe1d186ce3b.dblock.zip (50.00 MB)",
    "2025-01-13 21:00:19 -06 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-b79f80bab372d4ecca2584feddb30f654.dblock.zip (49.85 MB)",
    "2025-01-13 21:00:19 -06 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-b04580538a4a4447f9dd3b165121b65ec.dblock.zip (49.01 MB)",
    "2025-01-13 21:00:19 -06 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-b396aa3b8c6ec48e0990fdef31ffec6ae.dblock.zip (49.18 MB)",
    "2025-01-13 21:01:06 -06 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Completed: duplicati-b396aa3b8c6ec48e0990fdef31ffec6ae.dblock.zip (49.18 MB)",
    "2025-01-13 21:01:06 -06 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-i2462740e0234449ea1295caf7b4dafa4.dindex.zip (2.27 KB)",
    "2025-01-13 21:01:07 -06 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Completed: duplicati-i2462740e0234449ea1295caf7b4dafa4.dindex.zip (2.27 KB)",
    "2025-01-13 21:01:07 -06 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-bac339dba0dd04942852e54ff67e4344e.dblock.zip (49.32 MB)",
    "2025-01-13 21:01:18 -06 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Completed: duplicati-b79f80bab372d4ecca2584feddb30f654.dblock.zip (49.85 MB)",
    "2025-01-13 21:01:18 -06 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-ie32ce9cc56eb4372a7ed970c2d53e4c4.dindex.zip (2.36 KB)",
    "2025-01-13 21:01:18 -06 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Completed: duplicati-ie32ce9cc56eb4372a7ed970c2d53e4c4.dindex.zip (2.36 KB)",
    "2025-01-13 21:01:18 -06 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-b98ac0235b6534be2808f84f3e63ea669.dblock.zip (49.02 MB)",
    "2025-01-13 21:01:27 -06 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Completed: duplicati-b04580538a4a4447f9dd3b165121b65ec.dblock.zip (49.01 MB)",
    "2025-01-13 21:01:27 -06 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Completed: duplicati-b9556eb219bb1494194511fe1d186ce3b.dblock.zip (50.00 MB)",
    "2025-01-13 21:01:27 -06 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-i477c412053d4441299c3c27402bd8977.dindex.zip (2.27 KB)",
    "2025-01-13 21:01:27 -06 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-ibe3bfe22e36c4cf588ab52f74d21f215.dindex.zip (5.31 KB)",
    "2025-01-13 21:01:27 -06 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Completed: duplicati-ibe3bfe22e36c4cf588ab52f74d21f215.dindex.zip (5.31 KB)"
  ],
  "Warnings": [],
  "Errors": [
    "2025-01-13 23:30:39 -06 - [Error-Duplicati.Library.Main.Operation.BackupHandler-FatalError]: Fatal error\r\nSocketException: An existing connection was forcibly closed by the remote host.",
    "2025-01-13 23:30:39 -06 - [Error-Duplicati.Library.Main.Controller-FailedOperation]: The operation Backup has failed with error: One or more errors occurred. (An existing connection was forcibly closed by the remote host. (An existing connection was forcibly closed by the remote host.) (One or more errors occurred. (An existing connection was forcibly closed by the remote host.)))\r\nAggregateException: One or more errors occurred. (An existing connection was forcibly closed by the remote host. (An existing connection was forcibly closed by the remote host.) (One or more errors occurred. (An existing connection was forcibly closed by the remote host.)))"
  ],
  "BackendStatistics": {
    "RemoteCalls": 1516,
    "BytesUploaded": 38654953025,
    "BytesDownloaded": 0,
    "FilesUploaded": 1492,
    "FilesDownloaded": 0,
    "FilesDeleted": 0,
    "FoldersCreated": 0,
    "RetryAttempts": 20,
    "UnknownFileSize": 0,
    "UnknownFileCount": 0,
    "KnownFileCount": 18148,
    "KnownFileSize": 469320397832,
    "LastBackupDate": "2025-01-08T21:00:00-06:00",
    "BackupListCount": 2,
    "TotalQuotaSpace": 0,
    "FreeQuotaSpace": 0,
    "AssignedQuotaSpace": -1,
    "ReportedQuotaError": false,
    "ReportedQuotaWarning": false,
    "MainOperation": "Backup",
    "ParsedResult": "Success",
    "Interrupted": false,
    "Version": "2.1.0.2 (2.1.0.2_beta_2024-11-29)",
    "EndTime": "0001-01-01T00:00:00",
    "BeginTime": "2025-01-14T03:00:00.0070678Z",
    "Duration": "00:00:00",
    "MessagesActualLength": 0,
    "WarningsActualLength": 0,
    "ErrorsActualLength": 0,
    "Messages": null,
    "Warnings": null,
    "Errors": null
  }
}
        

It means the server asked to close the connection.

I found this issue that has the same error, and reports either network issues or a blacklisted IP.

Does that seem plausible to your setup?

Backblaze speed test to the nearest location to yours might be an interesting networking test.

BackendTool and BackendTester can use an Export As Command-line URL, maybe modified.

"RetryAttempts": 20 might mean 4 parallel uploads at 5 retries each, and all of them failing.

You can check Job → Show log → Remote to see what happened. Seemingly it got first list. Uploads after that will be retried under a new name, but the hash value will show identical files.