Hello,
For organizational purposes, I expanded my LAN to use a netmask of 255.255.254.0 (192.168.0.0/23). This allows me to assign DHCP clients addresses in the range 192.168.0.2–192.168.0.254, while devices with static IPs are in the range 192.168.1.1–192.168.1.254. The router is at 192.168.1.1. As a result, my iPads are in the 192.168.0.x range, and my Windows PC is in the 192.168.1.x range.
iPad PRO iOS v.26.3.1.(a), MS v3.9.34
PC Windows 11, MS v3.9.34
The issue I’m experiencing is that synchronization has become unreliable. Specifically:
iPad → PC works most of the time,
iPad → iPad and PC → iPad often fail, either with the error shown in the below trace or with a generic message indicating that the connection was interrupted by the client.
To complete the PC → iPad sync, I first tried disabling MAC address randomization so I could assign a stable DHCP address in the 192.168.0.x range. However, synchronization only worked reliably when I assigned a fixed IP address in the 192.168.1.x range. I.e PC -> iPad both in 192.168.1.x with the same /23 mask work.
That strengthens the hypothesis that the app mishandles peers in the other half of the subnet. In other words, this suggests a possible issue on the iPad side (or in the sync logic) when handling either non-/24 netmasks, or peers located in a different /24 block but still within the same /23 subnet.
Many thanks in advance for any insight, and kind regards.
------
16:52:09 - Sending database file to connected device
16:52:28 - Error sending database to device: System.Exception: An existing connection was forcibly closed by the remote host.
An existing connection was forcibly closed by the remote host.
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() + 0x21
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task) + 0x70
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task) + 0x38
at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task) + 0x17
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() + 0x10
at MobileSheetsPro.SyncLibrary.BaseTransport.<SendBytesFromFile>d__33.MoveNext() + 0x654
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() + 0x21
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task) + 0x70
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task) + 0x38
at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task) + 0x17
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() + 0xF
at MobileSheetsPro.SyncLibrary.BaseTransport.<SendUpdatedDatabase>d__71.MoveNext() + 0x334
For organizational purposes, I expanded my LAN to use a netmask of 255.255.254.0 (192.168.0.0/23). This allows me to assign DHCP clients addresses in the range 192.168.0.2–192.168.0.254, while devices with static IPs are in the range 192.168.1.1–192.168.1.254. The router is at 192.168.1.1. As a result, my iPads are in the 192.168.0.x range, and my Windows PC is in the 192.168.1.x range.
iPad PRO iOS v.26.3.1.(a), MS v3.9.34
PC Windows 11, MS v3.9.34
The issue I’m experiencing is that synchronization has become unreliable. Specifically:
iPad → PC works most of the time,
iPad → iPad and PC → iPad often fail, either with the error shown in the below trace or with a generic message indicating that the connection was interrupted by the client.
To complete the PC → iPad sync, I first tried disabling MAC address randomization so I could assign a stable DHCP address in the 192.168.0.x range. However, synchronization only worked reliably when I assigned a fixed IP address in the 192.168.1.x range. I.e PC -> iPad both in 192.168.1.x with the same /23 mask work.
That strengthens the hypothesis that the app mishandles peers in the other half of the subnet. In other words, this suggests a possible issue on the iPad side (or in the sync logic) when handling either non-/24 netmasks, or peers located in a different /24 block but still within the same /23 subnet.
Many thanks in advance for any insight, and kind regards.
------
16:52:09 - Sending database file to connected device
16:52:28 - Error sending database to device: System.Exception: An existing connection was forcibly closed by the remote host.
An existing connection was forcibly closed by the remote host.
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() + 0x21
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task) + 0x70
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task) + 0x38
at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task) + 0x17
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() + 0x10
at MobileSheetsPro.SyncLibrary.BaseTransport.<SendBytesFromFile>d__33.MoveNext() + 0x654
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() + 0x21
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task) + 0x70
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task) + 0x38
at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task) + 0x17
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() + 0xF
at MobileSheetsPro.SyncLibrary.BaseTransport.<SendUpdatedDatabase>d__71.MoveNext() + 0x334
-Carlo

