I have a Server 2008 R2 machine behind an Ubiquiti EdgeMAX router. The router has been configured as a NAT, and all GRE traffic along with the TCP control port (1723) has been forwarded to the internal RRAS server.
Previously, I had the same setup with a Cisco 2621 router with identical NAT/firewall setup. I had no issues with that setup.
With the Ubiquiti device I can connect a remote client to the VPN server just fine, until the client will lose data throughput on the GRE tunnel until it eventually times out. The server sees the same effect, the connection is fine and the RRAS logs show that the connection is closed due to client close request. This indicates that the server is in fact receiving the timeout disconnect packet from the client when the client times out.
I've run Wireshark on both the server and client. Both devices lose data connection when the server sends an RST packet on the VPN control port (1723) to the client. There is no other TCP traffic on that port that appears to be related until the client sends the timeout close packet. No FIN packets are identified in this transaction.
I've ruled out firewall issues on the router, it appears that the router drops the GRE tunnel when it sees the RST packet coming from the server. Checking logs on both the client and server, I cannot seem to find a reason for the RST packet being sent, and that appears to be the primary cause of the tunnel being closed.
I first raised this issue on the ubnt forums, you can see my responses to an Ubnt representative here:
I've scoured around for anyone else showing a similar issue, but others appear to be having issues with different configurations.
Anybody have a solution for this?