Hi - I have a problem with asymmetrical routing : my Dlink is default GW 192.168.2.1 and sends openVPN traffic to a server 192.168.2.203 on my LAN. The openVPN server assign 192.168.4.x addresses. To allow LAN computers to communicate with VPN client, I've added a route in the Dlink to route 192.168.4.x traffic to 192.168.2.203. This setup is fine and all LAN client can initiate a session with a VPN client. That does
192.168.2.x ==> 192.168.2.1 ==> 192.168.2.203 ==> 192.168.4.x
and on the return path
192.168.4.x ==> 192.168.2.203 ==> 192.168.2.x
The problem is that, as you can see, the route in is different from the route out. This not a problem when the session is initiated from the LAN side, but when any VPN client initiating the session, the path in
192.168.4.x ==> 192.168.2.203 ==> 192.168.2.x
but, on the return path
192.168.2.x ==> 192.168.2.1 == > dead
Packet is dead b/c Dlink router has not seen the opening of the session SYN, SYN-ACK, ACK and as a result, drop the "return" packets (this is similar to SPI filtering, but on the LAN side). I guess my question is probably more for Dlink people if they ever read this forum
- De-activating SPI does not change anything, so
- Could you add a feature that enables "triangle route" (other routers do) or at least could you not drop packets that are using the scheme I explained above ?
- Last but not least : adding a manual route on the LAN side of your router is feasible but is a hack (by default, only WAN side route are available) - can you change that too ?
PS : I know I can add a route in my LAN client to send 19.268.4.x to 192.168.2.203 (and it works), but changing all clients is a pain. I've also confirmed that the Dlink sends ICMP_redirect packets to the LAN client that sends 192.168.4.x packet to it, indicating that there is a better route, but most clients (including Win7) ignore ICMP_redirect for security reasons - so this is not a solution neither
Thanks