2

Network Finland(internet)-PC(Sweden)-Uni(Sweden). Uni IP is fixed. Finland(internet) is gained with 3g-4 connection. I need to use a VPN provider to change my country but the VPN provider gives ppp0, does not provide split tunnelling and does not give a public IP.

  1. Internet is gained with a mobile-connection of Telia-Sonera of Finland.
  2. First VPN connection allows access to institutional materials ... but it requires local IP is in Sweden. I give them my username+password but they have extra security with local IP.
  3. Second VPN ("Slave") is required to change local IP from Finland to Sweden, but current VPN providers give only ppp0, no dynamic IP and no split tunnelling.
    • (2-3) multiples because there are multiple institutions

Goals

  • Mobile internet. I am using Telia-Sonera located in Finland. I do not know if you can change the server location of the operator dynamically. TODO ask it from the operator.
  • VPN provider. Find one which provides a dynamic IP and/or split tunnelling.
  • Software. Make Split tunnelling. TODO how to make this?

Unsuccessful attempts to gain access to split tunnelling

  1. VPN - Tor (NordVPN Tor Sweden). This does not work; uni connection is rejected.
  2. ...

System

Problem: VPN provider provides only private access ppp0. I contacted several VPN providers for the thing. My current VPN provider is NordVPN. Their answers about having multiple VPN connections at the same time, which I do not believe, since I think they are talking about their NordVPN application only, and their technical proficiency has been generally low

Unfortunately, it is not possible to have multiple VPN connections active on same computer at the same time. - - No, you can not change the subnet details assigned for you. - - NordVPN routes your entire internet traffic through VPN, thus the only option for two VPN connections is to set up one VPN connection on a virtual machine. - - No we do not support split tunneling.

but I am ready to change my VPN provider if it is needed here for the task. I am not sure if you can do split tunnelling by software.

Proposal: Build a second layer of VPN on top of your established connection "inside" Finland. Do this with ifconfig, openvpn and not with "mass market GUI". (here)

OS X El-Capitan Tunnelblick for both VPN connections?

Some OS X part of the thread is discussed here about How to use unique subnets of two VPN connections? Here is Tunnelblick's demo file config.ovpn without any changes; which you install by just drag-and-drop it to Tunnelblick's GUI menubar

##############################################
# 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 my-server-1 1194
;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 ca.crt
cert client.crt
key client.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 x

# 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

Ubuntu 16.04

I can start to test here also if necessary. It would be great if the above OpenVPN solution works in both systems.


How can you make such a tunnel with OpenVPN?

  • Do all machines from all those networks need to talk to each other? – Julie Pelletier May 21 '16 at 21:41
  • Then what is the exact problem? If you need to setup a server on a subnet to be accessible by the others, you need to set those routing rules, such as a port forwarding rule or DMZ in its router, or a static route on the client side router if needed. – Julie Pelletier May 21 '16 at 22:30
  • What is the problem you face? You're trying to access an IP address that is on two subnets, but those subnets can not be accessed directly from the outside unless configured in their router. – Julie Pelletier May 21 '16 at 22:38
  • 1
    @Masi I think I get it. What you're saying is, your school (or business, or hospital, or agency) only allows access via their own private network, but they firewall authentication to that VPN. Only Sweden IPs are allowed to connect. Is that right? Because the rest of your question is kind of flailing around with suggestions which only confuse the issue. If what I said is anything at all like what you really want, please edit your question and remove the suggestions (at most, list what you've tried to do so far). – Ryder May 21 '16 at 23:51
  • 1
    Then subnets have little to do with your problem, and are just a "red herring". You basically need a properly configured VPN connection to some point in Sweden. You can then run your institution's VPN connection across that. The only way this would be a problem with regards to an overlapping subnet, is if your local home network actually used the same address space as the institution's. That is to say, if your home network was 192.168.101.0/24, and your institution's network used the range 192.168.100.0/23, then you would have an overlapping subnet. But that's got nothing to do with this. – Ryder May 22 '16 at 0:07
1

There's nothing particularly wrong with that setup. You'll use a PPTP client to connect to the VPN provider in Sweden, first. Then route all traffic across that connection. When it's working, launch the second VPN client —I believe you said it was OpenVPN?

This will be easier to keep track of if you're using different VPN protocols, but not fundamentally different. Just to be warned, however— PPTP clients differ depending on whether you're using Linux or BSD.

The tricky part with NAT tables and routing is dealt with at the Swedish VPN's server— only. If you're using an external provider, this will already be taken care of for you.

  • 1
    In case it wasn't clear; ppp0 is just the name for the virtual network interface created by a PPTP connection. OpenVPN would create either a tun or tap interface instead. LT2P, IPSec have similarly protocol-specific interfaces, but I've never used them and don't know off-hand what they are. – Ryder May 22 '16 at 0:54
  • 1
    @Masi yes, but you'll need details from the "institutional" vpn server you're trying to connect to. For starters, you want a host name or IP address to replace my-server-1 with, and confirm they listen on the default port 1194. You may also need to explicitly set comp-lzo on, or off, and get any additional buttons and knobs configured. – Ryder May 24 '16 at 11:35
  • 1
    Under a standard config, your Openvpn client will log its connection attempt and failure. It'll let you know off the bat if the server is reachable or not, and clue you in if LZO is an issue. – Ryder May 24 '16 at 18:50
  • 1
    Lzo is just a data stream connection method. Servers can have it on, off, or auto-negotiate (but older versions of OpenVpn didn't offer this). Your best bet is comp-lzo auto, but if the server you're connecting to has it set to on, or off, it can be frustrating to diagnose if you don't know to look for it and just flip the setting. It's the only reason I mentioned it at all; I've dealt with several OpenVpn setups before and just a couple years ago I'd still occasionally run into it. – Ryder May 24 '16 at 19:53
  • I have not managed to complete the solution with your proposal. I however, found another proposal to use virtual machine instead for the task. See the wiki answer below for it. – Léo Léopold Hertz 준영 May 29 '16 at 8:49
0

I have not managed to complete the solution with Ryder's answer. My current understand is that you can only reach the target by using Virtual Machine as described here about How to Mimic Location of Slave VPN for Primary VPN? by klanomath

  1. Create a new VM hull and attach it to this NAT network.
  2. Install a familiar OS (e.g OS X 10.9-10.11) in this VM
  3. Set up a VPN connection in the VM to your school's VPN server in Sweden in the VPN in System Preferences -> Network, shut down the VM and quit the hypervisor.
  4. Connect to NordVPN in the non-virtualized OS
  5. Start the VM
  6. Connect to the school's VPN server in the virtualized OS.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.