Do you mean you are trying to get two LANs of the same subnet to talk via a VPN? You use the term "192.168.0.x" so one would assume you are talking about a range of IPs within the given 192.168.0.x subnet.
The reason why you can't (and shouldn't) is due to the fact that a router's job is to route traffic from a known network to an unknown network.
When a computer in network A (192.168.0.2) tries to talk to, say, 192.168.0.3 the router will think this address is within the local network (A). It is saying "the address is within my LAN so don't route elsewhere (I.e. network B)". Thus computer .2 will either receive a response from the .3 on network A or - if .3 is only on the other network (B) - it will not make a connection and timeout.
If your network B was 192.168.1.x then the router WILL say "I don't look after 192.168.1.x addresses but (if a route to say that the VPN knows where to find the answer) I will send this over the VPN and see what response I get".
The router on network B does its job and sends the request to the correct workstation.
Source: I've recently had to do this so did my research ( mainly on the SE sites! )
IP addresses in the 192.168.x.x range are private addresses, the routers have public IP addresses that face the Internet. Although both private networks are using the same IP addresses, they are still 2 separate private networks. IANA (Internet assigned number authority) sets aside several blocks of "private use" IP addresses i.e. 10.x.x.x, 172.16.x.x, and 192.168.x.x are by definition private use local network ip addresses. – Tyson – 2015-08-24T03:58:22.100
I think I understand the gist of what you're saying, but I don't know what causes the communication problem in layman's terms. – xpkiro – 2015-08-24T04:57:22.463