Replies: 1 comment 2 replies
-
Using TUN/TAP should give you better results than using WinDivert, since OS will automatically optimize what really needs to be forwarded. |
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hello,
I have a question that isn't related to SharpPcap, but I didn't know where else to ask and since I'm using SharpPcap in this project, I thought maybe someone could help me here.
I am trying to create a VPN tunnel between a PC (client) and a private network consisting of client, server and bridge.
The first attempt worked, but the latency was around 300ms and the speed was 0.6MB/s. Afterwards I excluded the traffic to and from a list of known DNS and created a hash table on the bridge side, where I save the IPs with which the client tries to communicate and send back to the client only the packets from those IPs . This greatly reduced traffic (latency dropped to 70-100ms and speed increased to ~4MB/s).
Now I wonder if I can reduce the traffic even more. I have no experience in networking and I don't know how communication works at the IP level.
So, my question is if I can delete the IPs added in the hash table after a certain time since the client no longer sent packets to the respective IP so that I no longer send the packets received by the bridge from those IPs to client and keep the size of the hash table to a minimum? Or do you have other suggestions?
Thanks in advance for any help!
EDIT:
This are the filters that I pass to WinDivert:
Client: (ip or ipv6) and !loopback and outbound and ip.SrcAddr=="local PC IP" and (ip.DstAddr!="server IP")
Bridge: (ip or ipv6) and !loopback and inbound and ip.DstAddr=="local PC IP" and (ip.SrcAddr!="server IP")
The rest of the IP filtering (list of DNS and the hash table) is done in the software I wrote because WinDivert freezes if I add too many filters.
Beta Was this translation helpful? Give feedback.
All reactions