PPTP and L2TP · Topic 1 of 3

PPTP and L2TP Theory and Comparison

Compare PPTP and L2TP tunnels on RouterOS: ports and protocols, how each encrypts traffic, and when to choose L2TP with IPsec instead of plain PPTP.

  • 4 min
  • Includes a diagram
In a nutshell
  • PPTP uses TCP port 1723 for control and GRE for data.
  • GRE is IP protocol 47, so a firewall must allow it for PPTP.
  • PPTP encrypts with MPPE and needs MS-CHAP authentication for the keys.

What it is

PPTP and L2TP are two tunnelling protocols that carry PPP sessions across an IP network.

A tunnel lets a remote user or a branch router join a private network over the internet. The client wraps its PPP traffic inside packets that the internet can carry, and the server unwraps them.

Both protocols use the same PPP profiles and secrets. They differ in how they carry the traffic and in how they protect it.

ClientPPP sessionPPTP or L2TP over IPInternetcarries the tunnelarrives atServerunwraps the PPP sessionintoPrivate LANreachable

How it works

Each protocol builds a control connection and a data path, and each handles encryption differently.

PPTP

PPTP uses a TCP connection on port 1723 for control. The tunnelled data travels in GRE packets, which are IP protocol 47.

PPTP encrypts with MPPE, which is controlled by the PPP profile setting use-encryption. MPPE keys come from MS-CHAP authentication, so encryption needs mschap1 or mschap2.

The protocol is old and is regarded as weak, so it is better for convenience than for strong security.

L2TP

L2TP uses UDP port 1701 for both control and data. On its own it does not encrypt anything.

To protect the data, L2TP is paired with IPsec. RouterOS can set this up with use-ipsec on the server and the client. IPsec then uses UDP ports 500 and 4500, and ESP.

Comparison

FeaturePPTPL2TP
Control transportTCP port 1723UDP port 1701
Data transportGRE, IP protocol 47UDP port 1701
Built in encryptionMPPENone
Strong protectionWeakGood when paired with IPsec
NAT friendlinessNeeds GRE to passPlain UDP, easy to pass
Setup effortLowHigher with IPsec

Common ground

Both protocols work in the same way once a session is up. The server checks the secret, applies the profile, and creates a dynamic interface for the client.

The tunnel is a point to point link with two addresses. A client that must reach a LAN behind the server needs a route that points into the tunnel.

Firewall needs

A remote client reaches a tunnel server across the internet. PPTP needs TCP port 1723 plus GRE, and L2TP with IPsec needs UDP 1701, UDP 500, UDP 4500 and ESP. A router that hosts a tunnel server must allow the control and data traffic in its input chain.

/ip firewall filter add chain=input protocol=tcp dst-port=1723 action=accept comment=pptp
/ip firewall filter add chain=input protocol=gre action=accept comment=pptp-gre
/ip firewall filter add chain=input protocol=udp dst-port=1701,500,4500 action=accept comment=l2tp-ipsec
/ip firewall filter add chain=input protocol=ipsec-esp action=accept comment=l2tp-ipsec-esp

The first two rules serve PPTP. The last two serve L2TP with IPsec.

Choosing between them

Pick L2TP with IPsec when protection matters, or when the path crosses NAT devices that block GRE. Pick PPTP only for legacy clients that cannot do anything else.

Plain L2TP without IPsec is an unencrypted tunnel. It suits a trusted path or a case where another layer already encrypts the traffic.

What both share with other PPP services

PPTP and L2TP share the /ppp profile, /ppp secret and /ip pool objects with PPPoE, SSTP and OpenVPN. A change to a profile therefore affects every service that uses it.

What to remember for the exam

Seven facts cover most comparison questions.

  • PPTP uses TCP port 1723 for control and GRE for data.
  • GRE is IP protocol 47, so a firewall must allow it for PPTP.
  • PPTP encrypts with MPPE and needs MS-CHAP authentication for the keys.
  • L2TP uses UDP port 1701.
  • L2TP has no encryption of its own and is paired with IPsec.
  • L2TP with IPsec also needs UDP 500, UDP 4500 and ESP.
  • Both protocols use PPP profiles and secrets.
Exam tip

A blocked PPTP tunnel usually means TCP 1723 is open but GRE is dropped.

Common mistakes

These four errors appear again and again.

Opening only the TCP port for PPTP. The control connection works, but the data cannot pass without GRE.

Assuming L2TP is encrypted. Without IPsec the traffic is sent in the clear.

Expecting encryption with PAP or CHAP. MPPE keys come from MS-CHAP, so other methods cannot give MPPE.

Forgetting the IPsec ports. L2TP with IPsec needs UDP 500, UDP 4500 and ESP, not only UDP 1701.

Watch out

PPTP is considered weak. Do not use it for sensitive traffic when an alternative exists.

Check yourself

Work through these three questions.

  • Which ports and protocols does PPTP need?

    PPTP uses TCP port 1723 for control and GRE, IP protocol 47, for data.

  • Why is plain L2TP not enough for a secure tunnel?

    L2TP uses UDP port 1701 and has no encryption of its own. It is paired with IPsec for protection.

  • What drives MPPE encryption in PPTP?

    The profile setting use-encryption turns it on, and the keys come from MS-CHAP authentication.

Topic 1 of 3 in PPTP and L2TP

Test yourself on PPTP and L2TP

The full MikroTik MTCUME question bank has 482 questions, with timed practice exams and an explanation for every answer.

This study guide is independent and is not affiliated with, endorsed by, or sponsored by MikroTik. Vendor names, certification names and exam codes are trademarks of their respective owners and are used for identification only.