I've got a strange issue with openVPN. My setup is:
Everything on this network works. 192.168.1.0/24 is firewalled from 192.168.0.0/24, and everything can reach the internet via the cisco. Devices in the 192.168.0.0/24 have the cisco as their default gateway. The cisco has routing rules to point 192.168.1.0/24 and anything that's not internet-bound towards the linux router (192.168.0.6).
Clients in the 192.168.1.0/24 have the linux router as their default gw which then has the cisco as it's default gateway.
Now, I've got openvpn set up on the linux router. I can vpn in from the outside world and it gets forwarded through the cisco to the linux router and the tunnel is established. From here, I can see anything on 192.168.0.0/16. The vpn network is 192.168.100.0/24 and the correct routes seem to get established on the linux router. I've added a route for the vpn network to the cisco, and I can ping vpn clients from the cisco. Vpn clients are configured to redirect all network traffic down the vpn.
However, the problem is that no vpn client can ping or see the internet. A traceroute simply says that it goes through the linux router, then to the cisco router, then just times out. I've a hunch it's because the reply packets don't know how to get routed back to the client, but given that the cisco can see the clients, it should be able to route the packets. Similarly, the linux router is the vpn server so can route to the clients.
What am I doing wrong here?
Code:
[ Internet ]
||
\/
Cisco 837 (192.168.0.1) -> about 3/4 servers
||
\/
linux router (192.168.0.6,192.168.1.6) -> laptops, desktops etc.
Everything on this network works. 192.168.1.0/24 is firewalled from 192.168.0.0/24, and everything can reach the internet via the cisco. Devices in the 192.168.0.0/24 have the cisco as their default gateway. The cisco has routing rules to point 192.168.1.0/24 and anything that's not internet-bound towards the linux router (192.168.0.6).
Clients in the 192.168.1.0/24 have the linux router as their default gw which then has the cisco as it's default gateway.
Now, I've got openvpn set up on the linux router. I can vpn in from the outside world and it gets forwarded through the cisco to the linux router and the tunnel is established. From here, I can see anything on 192.168.0.0/16. The vpn network is 192.168.100.0/24 and the correct routes seem to get established on the linux router. I've added a route for the vpn network to the cisco, and I can ping vpn clients from the cisco. Vpn clients are configured to redirect all network traffic down the vpn.
However, the problem is that no vpn client can ping or see the internet. A traceroute simply says that it goes through the linux router, then to the cisco router, then just times out. I've a hunch it's because the reply packets don't know how to get routed back to the client, but given that the cisco can see the clients, it should be able to route the packets. Similarly, the linux router is the vpn server so can route to the clients.
What am I doing wrong here?