How PCC on MikroTik Can Help You Save Money and Bypass Limits

Published 12.06.2025

In today’s digital world, where every megabyte counts and stable connectivity is gold, a single internet channel is often just not enough. Maybe you have several external IP addresses gathering dust, or your hosting provider suddenly introduced those “unpleasant” traffic limits, threatening your budget and peace of mind. But don’t panic! PCC (Per Connection Classifier) on your MikroTik router running the updated RouterOS 7.x is your ticket to a world without limits. It allows you to optimize costs and bypass annoying restrictions.


What Is PCC and Why It Might Save Your Day?

Imagine having a multi-lane highway, but for some reason, all the traffic uses only one lane. PCC ensures that all lanes are used efficiently and evenly. It takes every new internet connection and intelligently distributes it across your different external IP addresses. It’s like having not one, but several internet connections working together in harmony!

Why do you need this? Here are the main reasons:

  • Faster internet! Instead of funneling all your outgoing traffic through a single IP address, PCC will distribute it across all available ones. You’ll get a significant bandwidth boost and forget about congestion.
  • Real cost savings and limit avoidance. Many ISPs and hosting providers apply traffic limits per IP address. PCC lets you distribute the load so that each IP stays within its limit, even if the total data volume exceeds what’s allowed per IP. This helps you avoid overage charges and use every purchased IP address to the fullest. Think of it as your personal smart usage strategy!
  • Reliability and fault tolerance. Although PCC by itself doesn’t provide automatic failover, it’s a foundation for building such systems. If one external IP goes down, others can pick up the load (with a bit of extra configuration).
  • Maximize usage of all your IPs. If you’re paying for multiple IPs, why not squeeze every bit of value from them? PCC ensures that none of your valuable resources are sitting idle.
  • Precise traffic control. Want your gaming traffic to go through one IP and file downloads through another? PCC gives you that flexibility, letting you direct specific types of connections through specific addresses.

In this guide, we’ll configure PCC for six external IP addresses using the both-addresses-and-ports method. This is the most effective way to evenly distribute the load, considering both IP addresses and ports. To keep your important connections (like online banking or video calls) stable, we’ll enable sticky-connection — this ensures that all packets from the same connection go through the same IP address.


Configuring PCC on MikroTik RouterOS 7.x: Step-by-Step Guide

Before you begin, make sure your MikroTik router is updated to the latest RouterOS 7.x.

1. Add Your External IP Addresses

These are like entry ramps to your digital highway. All of them must be assigned to your external network interface. In our example, it’s wan-bridge; if yours is named differently, replace it accordingly.

/ip address
add address=100.77.214.99/24 interface=wan-bridge network=100.77.214.0 comment="Main IP"
add address=100.77.214.97/24 interface=wan-bridge network=100.77.214.0
add address=100.77.214.109/24 interface=wan-bridge network=100.77.214.0
add address=100.77.214.110/24 interface=wan-bridge network=100.77.214.0
add address=100.77.214.111/24 interface=wan-bridge network=100.77.214.0
add address=100.77.214.112/24 interface=wan-bridge network=100.77.214.0

2. Configure DNS Servers

These are like road signs helping your router find websites on the internet.

/ip dns
set servers="8.8.8.8, 1.1.1.1"

3. Create Individual Routing Tables

For each external IP address participating in load balancing, we’ll create a separate routing table. This lets the router route traffic through the correct IP.

/routing table
add name=to_wan1 fib
add name=to_wan2 fib
add name=to_wan3 fib
add name=to_wan4 fib
add name=to_wan5 fib
add name=to_wan6 fib

4. Define the Gateway for Each Table

Now each “lane” needs its own “exit ramp” to the ISP’s gateway. In our example, the gateway is 100.77.214.1 for all WAN interfaces.

/ip route
add dst-address=0.0.0.0/0 gateway=100.77.214.1 routing-table=to_wan1
add dst-address=0.0.0.0/0 gateway=100.77.214.1 routing-table=to_wan2
add dst-address=0.0.0.0/0 gateway=100.77.214.1 routing-table=to_wan3
add dst-address=0.0.0.0/0 gateway=100.77.214.1 routing-table=to_wan4
add dst-address=0.0.0.0/0 gateway=100.77.214.1 routing-table=to_wan5
add dst-address=0.0.0.0/0 gateway=100.77.214.1 routing-table=to_wan6

5. Mark Connections Using PCC (Mangle)

This is the key step. We’ll use Mangle rules to mark new connections so the router knows which IP to route them through. Use both-addresses-and-ports:6/X, where 6 is the total number of IPs and X is the index (0 to 5). Don’t forget sticky-connection=yes to keep long-lived sessions stable. Replace lan-bridge with your actual LAN interface.

6. Strengthen Firewall Rules

These rules help with asymmetric routing problems, where responses come back via a different IP. They ensure established connections work and drop invalid packets.

/ip firewall filter
add chain=forward connection-state=established,related action=accept comment="Accept established connections"
add chain=forward connection-state=invalid action=drop comment="Drop invalid connections"

7. Configure NAT for Each IP

So internal devices can go online via the correct external IP, we’ll configure NAT (Network Address Translation). Each marked connection will be translated using its respective external IP.

Important: The masquerade rule must be the last one in the NAT list to act as a fallback for unmarked connections.

8. Improve Connection Stability (Connection Tracking)

To ensure stable internet sessions, especially long ones, tweak these settings:

/ip firewall connection tracking
set generic-timeout=10m tcp-established-timeout=1d tcp-fin-wait-timeout=30s tcp-close-wait-timeout=30s

Check How Well Your Load Balancing Works

Once configured, check that traffic is really being distributed. Use WinBox or WebFig stats or this basic script for live feedback:


Conclusion: Goodbye Limits!

Configuring PCC on MikroTik RouterOS 7.x isn’t just a technical tweak — it’s a strategic move that makes your network faster, more stable, and importantly, more cost-effective. You’ll fully utilize your external IPs and avoid unnecessary overcharges due to traffic caps. Your network becomes a highway, not a bottleneck.

Want to explore other MikroTik tricks? Let me know!

Get in Touch

Ready to discuss your project and offer the best solution