I believe the issue you’re encountering is indeed related to the nature of how Windows machines typically resolve network names and how VPNs, particularly those using NAT, handle network traffic.
In a standard Windows network, machine names are often resolved using NetBIOS or LLMNR (Link-Local Multicast Name Resolution). These protocols rely on broadcast or multicast packets, which are not designed to be routed across different networks, such as those segmented by VPNs.
When a VPN is used, especially with NAT (Network Address Translation), these broadcast packets do not traverse through the VPN tunnel. This is because NAT changes the network address information in the IP packet headers, and VPNs encapsulate these packets, making them unreadable to devices not part of the VPN network.
Therefore, the inability to resolve Windows machine names over your VPN setup is an expected behavior. For a solution, you might consider using DNS for name resolution, which can work across different networks when properly configured. Alternatively, setting up a WINS server could also address this issue.