Virtual Private Networks

A VPN (Virtual Private Network) is defined as a virtual private network, meaning a network that allows you to enjoy the benefits of a private network while routing traffic through the Internet. In practical terms, this means that a client connected via VPN will have a private address belonging to the network it connects to, as if it were actually physically connected to that network, even if it is actually connected to the Internet.

Private Networks

An organization spread across a large geographical area that wants to communicate in complete security might consider using a private network, meaning a dedicated network where information is accessible only to those connected to that network. However, large-scale private networks are extremely expensive, as all the connections and equipment necessary for the network to function must be purchased, maintained, and installed. To use a private network without actually owning one, you can use VPNs, virtual private networks that provide the same benefits as a private network even if the network traffic travels over the Internet.

Security of Private Networks

For a VPN to guarantee the same security as a private network in all its aspects (primarily regarding privacy), traffic traveling over the Internet must be encrypted.

The most effective way to encrypt traffic is to implement encryption in the Network Layer of the ISO/OSI stack, using the IPSec protocol. With IPSec, the entire IP packet destined for the VPN is encrypted and encapsulated within the IP packet destined for the Internet. This way, an attacker has no way to obtain any information from the packet, other than the public sending and destination addresses. Spoofing or man-in-the-middle attacks would be ineffective against this type of protocol.


Of course, implementing IPSec requires a whole series of additional configurations on the network devices involved. In particular, it is essential that:
Routers are enabled for IPSec;

  • There is a VPN server in the LAN that manages, for example, authentication and DHCP for address assignment;
  • There is a VPN client on the remote hosts that want to access the LAN.

    The cryptographic algorithms used for the VPN typically involve asymmetric encryption to manage authentication and symmetric encryption or hybrid encryption to manage secrecy.

    Tunnel VPN

    One of the most widely used software for implementing a VPN is OpenVPN. OpenVPN, however, uses SSL rather than IPSec, so it implements security only at the Transport Layer level. This type of connection is commonly referred to as a "VPN tunnel." This type of connection is also widely used for personal purposes, for example, to prevent others from intercepting all the data that
    a user sends while using a public wireless network.
    Â