OpenVPN Help: Same Subnet/IP ranges on local and remote

Soldato
Joined
10 Apr 2004
Posts
13,497
Need some help from some OpenVPN gurus.

Essentially have OpenVPN running on my Tomato Router.

Works perfectly everywhere apart from places which use the same subnet and ip range as my remote network.

Server is config as:

serverconf1.png

serverconf2.png


My client config is:

Code:
##############################################
# Sample client-side OpenVPN 2.0 config file #
# for connecting to multi-client server.     #
#                                            #
# This configuration can be used by multiple #
# clients, however each client should have   #
# its own cert and key files.                #
#                                            #
# On Windows, you might want to rename this  #
# file so it has a .ovpn extension           #
##############################################

# Specify that we are a client and that we
# will be pulling certain config file directives
# from the server.
client

# Use the same setting as you are using on
# the server.
# On most systems, the VPN will not function
# unless you partially or fully disable
# the firewall for the TUN/TAP interface.
dev tap
;dev tun

# Windows needs the TAP-Win32 adapter name
# from the Network Connections panel
# if you have more than one.  On XP SP2,
# you may need to disable the firewall
# for the TAP adapter.
;dev-node MyTap

# Are we connecting to a TCP or
# UDP server?  Use the same setting as
# on the server.
proto tcp
;proto udp

# The hostname/IP and port of the server.
# You can have multiple remote entries
# to load balance between the servers.
remote *****
;remote my-server-2 1194

# Choose a random host from the remote
# list for load-balancing.  Otherwise
# try hosts in the order specified.
;remote-random

# Keep trying indefinitely to resolve the
# host name of the OpenVPN server.  Very useful
# on machines which are not permanently connected
# to the internet such as laptops.
resolv-retry infinite

# Most clients don't need to bind to
# a specific local port number.
nobind

# Downgrade privileges after initialization (non-Windows only)
;user nobody
;group nobody

# Try to preserve some state across restarts.
persist-key
persist-tun

# If you are connecting through an
# HTTP proxy to reach the actual OpenVPN
# server, put the proxy server/IP and
# port number here.  See the man page
# if your proxy server requires
# authentication.
;http-proxy-retry # retry on connection failures
;http-proxy [proxy server] [proxy port #]

# Wireless networks often produce a lot
# of duplicate packets.  Set this flag
# to silence duplicate packet warnings.
;mute-replay-warnings

# SSL/TLS parms.
# See the server config file for more
# description.  It's best to use
# a separate .crt/.key file pair
# for each client.  A single ca
# file can be used for all clients.
ca *****
cert *****
key *****

# Verify server certificate by checking
# that the certicate has the nsCertType
# field set to "server".  This is an
# important precaution to protect against
# a potential attack discussed here:
#  http://openvpn.net/howto.html#mitm
#
# To use this feature, you will need to generate
# your server certificates with the nsCertType
# field set to "server".  The build-key-server
# script in the easy-rsa folder will do this.
;ns-cert-type server

# If a tls-auth key is used on the server
# then every client must also have the key.
;tls-auth ta.key 1

# Select a cryptographic cipher.
# If the cipher option is used on the server
# then you must also specify it here.
cipher **********

# Enable compression on the VPN link.
# Don't enable this unless it is also
# enabled in the server config file.
comp-lzo

# Set log file verbosity.
verb 3

# Silence repeating messages
;mute 20


This is running on OS X 10.8 and the latest Shibby Build of Tomato for the RT-N66U with either Viscosity or Tunnelblick as my client.

What do I need to change to sort this out? I want to be able to access everything on my remote network, so I don't think I can change the subnet, but I don't completely understand how all that works.

Bottom line is, I can't change either the remote network or the local network, so I need to set the OpenVPN up in such a way to solve the problem.

Also, any changes I should make for security? The key was generated at 2048 length.

Thanks!!!
 
I believe that with the same subnets at both ends it won't have any way of knowing which network the traffic is destined for. It's one of the first things you check for when a VPN isn't working.

If the network you're connecting to via the VPN is under your control there shouldn't be any problem changing it to use a less common subnet.
 
Look for a feature called split tunnelling and turn it off (if you don't need access to the lan that you're connected to). All traffic will be forced into the VPN tunnel
 
You could turn off split tunneling but then you'll get access to everything remotely at the expense of loosing access to anything on the local network you're on...

The better solution is probably to renumber your local network (that you'll access over the VPN) into some less used RFC1918 space, like something from the top of 172.16/12. Numbering a subnet you need VPN access in the super common lower end of the 192.168/16 and 10/8 is asking for trouble....
 
As said above, renumber your LAN if you can. If not, you could always use a static route to force traffic over the VPN for those IPs you want to connect to. Bit of a pita to configure since you'll need to enter a rule for every IP you want access to over VPN and, if anything on the local LAN uses the same IP, you won't be able to connect to it whilst the rule is active.
 
Back
Top Bottom