There are some browser based solutions like sharedrop.io and file.pizza. I haven’t had the latter work for me though, not sure if it’s still functional. They work through WebRTC to discover local candidates for receiving files, the same way that video calling typically finds the best connection.
Security
ShareDrop uses a secure and encrypted peer-to-peer connection to transfer information about the file (its name and size) and file data itself. This means that this data is never transfered through any intermediate server but directly between the sender and recipient devices. To achieve this, ShareDrop uses a technology called WebRTC (Web Real-Time Communication), which is provided natively by browsers. You can read more about WebRTC security here.
I don’t know if this is possible or even advisable, but theoretically maybe the NIC could be hardware passed through to a linux VM, and then configure the host to use the guest VM as a gateway? It’d be kind of a nuts solution but it’d get points for creativity. Guest VM takes hardware control of the NIC and the host connects to the VM like it’s a separate device on the same network.
Something like the question posed here
You’d have to solve a few separate problems that might not be worth it, unfortunately I don’t have these answers: