Logo
Lose Weight
Windows XP
Windows Vista
Windows 7
Windows Azure
Windows Server
Windows Phone
 
 
Windows Server

Windows Server 2008 R2 : Server-to-Client Remote Access and DirectAccess - VPN Protocols

3/20/2011 11:29:49 AM
PPTP, L2TP, and SSTP are the communication standards used to manage tunnels and encapsulate private data. It is important to note that data traveling through a tunnel must also be encrypted to be a VPN connection. Windows Server 2008 R2 includes PPTP, L2TP, and SSTP tunneling protocols.

To establish a tunnel, both the tunnel client and tunnel server must be using the same tunneling protocol. Tunneling technology can be based on either a Layer 2 or Layer 3 tunneling protocol that corresponds to the Open System Interconnection (OSI) reference model. Layer 2 protocols correspond to the Data-link layer and use frames as their unit of exchange. PPTP and L2TP are Layer 2 tunneling protocols that encapsulate the payload in a PPP frame before it is sent across the Internet. Layer 3 protocols correspond to the Network layer and use packets. IPSec tunnel mode is a Layer 3 tunneling protocol that encapsulates IP packets in an additional IP header before sending them across the Internet.

Windows 7, Windows Vista, Windows XP, and Windows 2000 workstation VPN client and server computers support both L2TP/IPSec and PPTP by default. Both PPTP and L2TP/IPSec use PPP to provide an initial envelope for the data and then append additional headers for transport through the Internet. PPTP and L2TP also provide a logical transport mechanism to send PPP payloads and provide tunneling or encapsulation so that PPP payloads based on any protocol can be sent across the Internet. PPTP and L2TP rely on the PPP connection process to perform user authentication and protocol configuration.

There are a few differences between the three protocols. First, when using PPTP, the data encryption begins after the PPP connection process is completed, which means PPP authentication is used. With L2TP/IPSec, data encryption begins before the PPP connection process by negotiating an IPSec security association. In SSTP, the session is encrypted by SSL before authentication begins. In DirectAccess, communications are encrypted transparently before user data begins to flow.

Second, PPTP connections use MPPE, a stream cipher that is based on the Rivest-Shamir-Adleman (RSA) RC-4 encryption algorithm and uses 40-, 56-, or 128-bit encryption keys. Stream ciphers encrypt data as a bit stream. L2TP/IPSec connections use the Data Encryption Standard (DES), which is a block cipher that uses either a 56-bit key for DES or three 56-bit keys for 3DES. Block ciphers encrypt data in discrete blocks (64-bit blocks, in the case of DES). SSTP uses SSL with RC4 or AES. DirectAccess uses 3DES or AES.

Finally, PPTP connections require only user-level authentication through a PPP-based authentication protocol. L2TP/IPSec connections require the same user-level authentication as well as computer-level authentication using computer certificates. In contrast, SSTP and DirectAccess only require computer-level certificates for the VPN servers.

Table 1 compares some of the characteristics of the three tunneling protocols.

Table 1. Comparing VPN Protocols
CharacteristicsPPTPL2TP/IPSecSSTP
EncapsulationGREL2TP over UDPSSTP over TCP
EncryptionMicrosoft Point-to-Point Encryption (MPPE) with RC4IPSec ESP with Triple Data Encryption Standard (3DES) or Advanced Encryption Standard (AES)SSL with RC4 or AES
Tunnel maintenance protocolPPTPL2TPSSTP
When user authentication occursBefore encryption beginsAfter the IPSec session is establishedAfter the SSL session is established
Certificates neededNoneComputer certificates on both the VPN client and VPN serverComputer certificate on the VPN server and root CA certificate on the VPN client
ClientWindows 9x and aboveWindows 2000 and aboveWindows Server 2008, Windows XP SP3, and Windows Vista SP1

Tunneling Within a Windows Server 2008 R2 Networking Environment

For Layer 2 tunneling technologies, such as PPTP, L2TP, and SSTP, a tunnel is similar to a session; both of the tunnel endpoints must agree to the tunnel and must negotiate configuration variables, such as address assignment or encryption or compression parameters. In most cases, data transferred across the tunnel is sent using a datagram-based protocol. A tunnel maintenance protocol is used as the mechanism to manage the tunnel.

Layer 3 tunneling technologies generally assume that all the configuration settings are preconfigured, often by manual processes. For these protocols, there might be no tunnel maintenance phase. For Layer 2 protocols (PPTP, L2TP, and SSTP), however, a tunnel must be created, maintained, and then terminated.

After the tunnel is established, tunneled data can be sent. The tunnel client or server uses a tunnel data transfer protocol to prepare the data for transfer. For example, as illustrated in Figure 1, when the tunnel client sends a payload to the tunnel server, the tunnel client first appends a tunnel data transfer protocol header to the payload. The client then sends the resulting encapsulated payload across the internetwork, which routes it to the tunnel server. The tunnel server accepts the packets, removes the tunnel data transfer protocol header, and forwards the payload to the target network. Information sent between the tunnel server and tunnel client behaves similarly.

Figure 1. Tunneling payload through a VPN connection.

Point-to-Point Tunneling Protocol

The Point-to-Point Tunneling Protocol (PPTP) is a Layer 2 protocol that encapsulates PPP frames in IP datagrams for transmission over the Internet. PPTP can be used for remote access and router-to-router VPN connections. It uses a TCP connection for tunnel maintenance and a modified version of Generic Routing Encapsulation (GRE) to encapsulate PPP frames for tunneled data. The payloads of the encapsulated PPP frames can be encrypted and/or compressed. Figure 2 shows the structure of a PPTP packet containing user data.

Figure 2. Structure of the PPTP packet.


Layer 2 Tunneling Protocol

Layer 2 Tunneling Protocol (L2TP) is a combination of the Point-to-Point Tunneling Protocol (PPTP) and Layer 2 Forwarding (L2F), a technology proposed by Cisco Systems, Inc. L2TP encapsulates PPP frames that are sent over IP, X.25, frame relay, and ATM networks. The payloads of encapsulated PPP frames can be encrypted and/or compressed. When sent over the Internet, L2TP frames are encapsulated as User Datagram Protocol (UDP) messages, as shown in Figure 3.

Figure 3. Structure of the L2TP packet.


L2TP frames include L2TP connection maintenance messages and tunneled data. L2TP connection maintenance messages include only the L2TP header. L2TP tunneled data includes a PPP header and PPP payload. The PPP payload can be encrypted or compressed (or both) using standard PPP encryption and compression methods.

In Windows Server 2008 R2, L2TP connections do not negotiate the use of PPP encryption through Microsoft Point-to-Point Encryption (MPPE). Instead, encryption is provided through the use of the IP Security (IPSec) Encapsulating Security Payload (ESP) header and trailer.

IP Security

IP Security (IPSec) was designed as an end-to-end mechanism for ensuring data security in IP-based communications. Illustrated in Figure 4, the IPSec architecture includes an authentication header to verify data integrity and an encapsulation security payload for both data integrity and data encryption. IPSec provides two important functions that ensure confidentiality: data encryption and data integrity. IPSec uses an authentication header (AH) to provide source authentication and integrity without encryption and the Encapsulating Security Payload (ESP) to provide authentication and integrity along with encryption. With IPSec, only the sender and recipient know the security key. If the authentication data is valid, the recipient knows that the communication came from the sender and that it was not changed in transit.

Figure 4. Structure and architecture of the IPSec packet.


Note

IPSec also plays a key role in another remote access technology, the new Windows Server 2008 R2 DirectAccess.


Secure Socket Tunneling Protocol

Introduced in Windows Server 2008, SSTP was specifically developed to get around the difficulties of setting up VPN tunnels through corporate firewalls, which block many of the ports and protocols used by PPTP and L2TP. The SSTP tunnel uses the HTTP over SSL (HTTPS) protocol, which is widely supported for secure web traffic. SSTP uses port 443 for the connection.

The tunneling protocol functions by encapsulating the original IP packet with a PPP header and then an SSTP header. The SSTP header, the PPP header, and the original IP packet are all encrypted by the SSL session. Finally, an IP header is added to the packet and it is routed to the destination. The structure of the packet is shown in Figure 5.

Figure 5. Structure and architecture of the SSTP packet.


Note

Interestingly, even though SSTP is based on the HTTPS web protocol, the VPN server does not have to be configured with IIS. The RRAS VPN server listens for SSTP connections on the uniform resource identifier (URI) /sra_{BA195980-CD49-458b-9E23-C84EE0ADCD75}/. This does not conflict with or require IIS, so IIS can be installed if needed for other purposes.


Unfortunately, SSTP does not support tunneling through web proxies that require authentication. Another limitation of SSTP is that it does not support site-to-site connections in Windows Server 2008 R2, which both PPTP and L2TP do.

Other -----------------
- Windows Server 2008 R2 : Authentication Options to an RRAS Systema
- VPN in Windows Server 2008 R2
- Routing with Windows Server 2003 : Configuring Demand-Dial Routing (part 2) - Deploying a Demand-Dial Router-to-Router Configuration & Troubleshooting Demand-Dial Routing
- Routing with Windows Server 2003 : Configuring Demand-Dial Routing (part 1) - Configuring Demand-Dial Interfaces
- Exchange Server 2010 : Troubleshooting DNS Problems
- Understanding DNS Requirements for Exchange Server 2010
- Exchange Server 2010 : Examining DNS Components (part 2) - DNS Replication or Zone Transfer & DNS Resource Records
- Exchange Server 2010 : Examining DNS Components (part 1) - DNS Zones & DNS Queries
- Domain Name System and Its Role in Exchange Server 2010
- Configuring Windows Server 2003 for LAN Routing (part 4) - Exploring LAN Routing Scenarios
- Configuring Windows Server 2003 for LAN Routing (part 3) - Managing General IP Routing Properties & Working with Routing Tables
- Configuring Windows Server 2003 for LAN Routing (part 2) - Configuring Routing And Remote Access Service Properties
- Configuring Windows Server 2003 for LAN Routing (part 1) - Using the Routing And Remote Access Console
- Microsoft Content Management Server : Managing Template Galleries and Templates (part 4) - Moving Template Galleries and Templates
- Microsoft Content Management Server : Managing Template Galleries and Templates (part 3) - Copying Templates
- Microsoft Content Management Server : Managing Template Galleries and Templates (part 2) - Creating Templates
- Microsoft Content Management Server : Managing Template Galleries and Templates (part 1) - Creating Template Galleries
- Integrating Exchange Server 2010 in a Non-Windows Environment : Administrative Improvements with Windows Server 2008
- Integrating Exchange Server 2010 in a Non-Windows Environment : Understanding the Identity Management for UNIX Components
- Using Services for UNIX to Integrate UNIX Systems with an Active Directory/Exchange Server 2010 Environment (part 3)
 
 
Most view of day
- Windows Server 2012 : Enhancing DHCP Reliability - Link-Layer Filtering, DHCP Reservations
- SharePoint 2013 : Health and Monitoring (part 1) - Logging
- Microsoft Visio 2010 : Linking External Data to Shapes (part 3) - Using the Database Wizard - Setting Up the Excel File as a Data Source
- Workflow in Dynamics AX 2009 : Workflow Architecture
- Automating Windows 7 Installation : Applying an Image Using ImageX
- Windows Phone 8 : Configuring Basic Device Settings - Accessing the Device Settings Screen - Changing the Device Theme
- Microsoft Exchange Server 2007 : Load Balancing in Exchange Server 2007
- Microsoft Project 2010 : Fine-Tuning Task Details (part 5) - Changing Task Types
- Microsoft Dynamics AX 2009 : Integration with Microsoft Office - Reading Excel files
- Microsoft Exchange Server 2007 : Single Copy Clusters (part 1)
Top 10
- MDT's Client Wizard : Package Properties
- MDT's Client Wizard : Driver Properties
- MDT's Client Wizard : Application Properties
- MDT's Client Wizard : Operating System Properties
- MDT's Client Wizard : Customizing the Deployment Share
- Windows Server 2012 : Software and User Account Control Administration (part 5) - Maintaining application integrity - Configuring run levels
- Windows Server 2012 : Software and User Account Control Administration (part 4) - Maintaining application integrity - Application access tokens
- Windows Server 2012 : Software and User Account Control Administration (part 3) - Mastering User Account Control - Configuring UAC and Admin Approval Mode
- Windows Server 2012 : Software and User Account Control Administration (part 2) - Mastering User Account Control - Elevation, prompts, and the secure desktop
- Windows Server 2012 : Software and User Account Control Administration (part 1) - Software installation essentials
 
Windows XP
Windows Vista
Windows 7
Windows Azure
Windows Server
Windows Phone
2015 Camaro