Untuk setting VPN Tunnel IPsec IKEv2 dari beberapa lokasi cabang (multi-site) ke satu router MikroTik pusat yang hanya memiliki satu IP publik, Kita harus menggunakan IKEv2 dengan PSK (Pre-Shared Keys) dan dynamic peers.
Dengan memakai IPSec Identifier FQDN (Fully Qualified Domain Name) unik sebagai identitas di tiap lokasi cabang, router pusat bisa mengenali asal koneksi setiap cabang walau semuanya terhubung ke IP publik pusat yang sama. Konfigurasi IPsec IKEv2 dengan model Hub-and-Spoke di MikroTik memfokuskan jalur VPN pada router utama (Hub) yang terhubung ke beberapa router cabang (Spoke).
Dokumentasi ini membahas cara membangun VPN Tunnel IPsec IKEv2 PSK dengan model Hub-and-Spoke menggunakan perangkat MikroTik RouterOS, di mana kantor pusat bertindak sebagai central hub yang melayani koneksi dari berbagai spoke (cabang).
Contoh Topologi Jaringan
| MikroTik Router | Peran | IP WAN | IP LAN | Subnet LAN |
|---|---|---|---|---|
| Kantor Pusat | Hub | 203.0.113.1 (Public IP Statik) | 192.168.10.1 | 192.168.10.0/24 |
| Kantor Cabang A | Spoke A | DHCP/Dynamic (Behind NAT) | 192.168.20.1 | 192.168.20.0/24 |
| Kantor Cabang B | Spoke B | DHCP/Dynamic (Behind NAT) | 192.168.30.1 | 192.168.30.0/24 |
Tujuan: Subnet LAN Kantor Cabang A (192.168.20.0/24) dan B (192.168.30.0/24) bisa terhubung langsung ke subnet LAN Kantor Pusat 192.168.10.0/24. Begitu juga sebaliknya subnet LAN Kantor Pusat bisa terhubung langsung ke Subnet LAN Kantor Cabang A dan B.
Prasyarat
- RouterOS versi v7.x
- Satu IP Public Statis/Dinamis di router Mikrotik kantor pusat
- Pastikan ISP atau Router Mikrotik di kantor pusat dan cabang mengizinkan koneksi UDP 500 (IKE) UDP 4500 (NAT-T)
Router MikroTik Kantor Pusat (Hub)
Konfigurasi IPsec IKEv2
Router Hub bertindak sebagai responder (pasif) yang menunggu koneksi masuk dari spoke. Kita akan membuat peer template yang dinamis.
Buat IPsec Profile dan Proposal (IKEv2)
Definisikan Profile (Fase 1 / IKE) dan Proposal (Fase 2 / IPsec SA)
/ip ipsec profile
add name=ikev2-profile \
dh-group=modp2048 \
enc-algorithm=aes-256 \
hash-algorithm=sha256 \
prf-algorithm=sha256
/ip ipsec proposal
add name=ikev2-proposal \
auth-algorithms=sha256 \
enc-algorithms=aes-256-cbc \
pfs-group=modp2048 \
lifetime=8h
Buat Peer (Negosiator Tunnel)
/ip ipsec peer
add name=ikev2-dynamic-peer \
address=0.0.0.0/0 \
exchange-mode=ike2 \
profile=ikev2-profile \
passive=yes
address=0.0.0.0/0: terima koneksi dari IP mana pun, karena spoke tidak punya IP publik statis, Hub harus “open” untuk dynamic peerpassive=yes: Hub hanya menunggu inbound connection dari spokeexchange-mode=ike2: Menggunakan IKEv2
Buat IPsec Identity (Autentikasi PSK)
IPSec Identifier FQDN (Fully Qualified Domain Name) unik sebagai identitas di tiap lokasi cabang agar router pusat bisa mengenali asal koneksi setiap cabang.
/ip ipsec identity
add peer=ikev2-dynamic-peer \
auth-method=pre-shared-key \
secret="PSK-CabangA-ModalSemangat2026!" \
match-by=remote-id \
remote-id=fqdn:cabangA.local \
generate-policy=port-override
add peer=ikev2-dynamic-peer \
auth-method=pre-shared-key \
secret="PSK-CabangB-ModalSemangat2026!" \
match-by=remote-id \
remote-id=fqdn:cabangB.local \
generate-policy=port-override
auth-method=pre-shared-key: Metode autentikasi sederhana dengan PSK untuk multi-site kecil-menengahmatch-by=remote-id: Cara matching identitas, Hub mencocokkan spoke berdasarkan ID yang dikirim spoke, bukan berdasarkan IP (karena IP spoke dinamis).remote-id: Seperti “username” untuk spoke saat autentikasi. Harus unik per spoke.secret: Pre-Shared Key. Minimal 20 karakter, kombinasi huruf, angka, dan simbol.generate-policy=port-override: Auto-generate policy, Cocok digunakan untuk skenario khusus seperti VPN L2TP/IPsec di balik NAT berlapis.
Buat IPsec Policy (Traffic Selector)
/ip ipsec policy
add src-address=192.168.10.0/24 \
dst-address=192.168.20.0/24 \
peer=ikev2-dynamic-peer \
proposal=ikev2-proposal \
tunnel=yes
add src-address=192.168.10.0/24 \
dst-address=192.168.30.0/24 \
peer=ikev2-dynamic-peer \
proposal=ikev2-proposal \
tunnel=yes
Firewall NAT Bypass ke Cabang
Kita harus memastikan traffic antar subnet LAN tidak di-NAT ketika melewati tunnel.
/ip firewall nat
add chain=srcnat action=accept \
src-address=192.168.10.0/24 dst-address=192.168.20.0/24 \
comment="Bypass NAT ke Cabang A"
add chain=srcnat action=accept \
src-address=192.168.10.0/24 dst-address=192.168.30.0/24 \
comment="Bypass NAT ke Cabang B"
Secara default, NAT srcnat (masquerade) akan mengubah IP sumber. Rule ini membuat traffic antar subnet LAN dilewatkan tanpa di-NAT, sehingga IP asli subnet terjaga dan IPsec policy bisa match. Wajib diletakkan di atas rule masquerade. Jika di bawah, traffic sudah di-NAT duluan sebelum dicek oleh IPsec.
Open Firewall input
Pastikan juga input chain pada Firewall Filter Anda mengizinkan protokol UDP port 500, UDP port 4500 (NAT-T), dan protokol ipsec-esp
/ip firewall filter
add chain=input action=accept \
protocol=udp dst-port=500,4500 \
comment="Allow IKEv2"
add chain=input action=accept \
protocol=ipsec-esp comment="Allow IPsec ESP"
Port 500 untuk IKE awal, 4500 untuk IKEv2 dengan NAT-T. Setelah negosiasi selesai, data aktual mengalir melalui ESP (IP protocol 50).
Router MikroTik Kantor Cabang A (Spoke)
Spoke A menginisiasi koneksi ke Hub secara aktif.
Konfigurasi IPsec IKEv2
Buat IPsec Profile dan Proposal (IKEv2)
/ip ipsec profile
add name=ikev2-profileA \
dh-group=modp2048 \
enc-algorithm=aes-256 \
hash-algorithm=sha256 \
prf-algorithm=sha256
/ip ipsec proposal
add name=ikev2-proposalA \
auth-algorithms=sha256 \
enc-algorithms=aes-256-cbc \
pfs-group=modp2048 \
lifetime=8h
Buat Peer (Pointing ke IP Public Kantor Pusat)
/ip ipsec peer
add name=peerKePusat \
address=203.0.113.1 \
exchange-mode=ike2 \
profile=ikev2-profileA
address=203.0.113.1: Ganti dengan IP publik router kantor pusat (Hub), kasih tahu kemana harus “dial”passive=no: spoke aktif menginisiasi koneksi, karena spoke di belakang NAT
Buat Identity (Autentikasi PSK)
/ip ipsec identity
add peer=peerKePusat \
auth-method=pre-shared-key \
secret="PSK-CabangA-ModalSemangat2026!" \
my-id=fqdn:cabangA.local
my-id=fqdn:cabangA.local: ID yang dikirim ke Hub, seperti “username” yang di-presentasikan ke Hub untuk matching.
Buat Policy
/ip ipsec policy
add src-address=192.168.20.0/24 \
dst-address=192.168.10.0/24 \
peer=peerKePusat \
proposal=ikev2-proposalA \
tunnel=yes
Bypass NAT ke Pusat
/ip firewall nat
add chain=srcnat action=accept \
src-address=192.168.20.0/24 dst-address=192.168.10.0/24 \
comment="Bypass NAT ke Kantor Pusat"
Router MikroTik Kantor Cabang B (Spoke)
Spoke B menginisiasi koneksi ke Hub secara aktif.
Konfigurasi IPsec IKEv2
Buat IPsec Profile dan Proposal (IKEv2)
/ip ipsec profile
add name=ikev2-profileB \
dh-group=modp2048 \
enc-algorithm=aes-256 \
hash-algorithm=sha256 \
prf-algorithm=sha256
/ip ipsec proposal
add name=ikev2-proposalB \
auth-algorithms=sha256 \
enc-algorithms=aes-256-cbc \
pfs-group=modp2048 \
lifetime=8h
Buat Peer (Pointing ke IP Public Kantor Pusat)
/ip ipsec peer
add name=peerKePusat \
address=203.0.113.1 \
exchange-mode=ike2 \
profile=ikev2-profileB
address=203.0.113.1: Ganti dengan IP publik router kantor pusat (Hub).
Buat Identity (Autentikasi PSK)
/ip ipsec identity
add peer=peerKePusat \
auth-method=pre-shared-key \
secret="PSK-CabangB-ModalSemangat2026!" \
my-id=fqdn:cabangB.local
Buat Policy
/ip ipsec policy
add src-address=192.168.30.0/24 \
dst-address=192.168.10.0/24 \
peer=peerKePusat \
proposal=ikev2-proposalB \
tunnel=yes
Bypass NAT ke Pusat
/ip firewall nat
add chain=srcnat action=accept \
src-address=192.168.30.0/24 dst-address=192.168.10.0/24 \
comment="Bypass NAT ke Kantor Pusat"
Rekomendasi Tambahan
Untuk memastikan tunnel ini tetap stabil dan aman dalam jangka panjang, berikut adalah beberapa tips optimasi yang sangat disarankan:
- Aktifkan DPD (Dead Peer Detection): Pada menu
/ip ipsec profile, pastikan fitur DPD aktif (misaldpd-interval=20sdandpd-maximum-failures=5). Ini berfungsi agar router segera mendeteksi jika ada gangguan koneksi internet di salah satu sisi, lalu otomatis membangun ulang (reconnect) tunnel tanpa perlu di-restart manual. - Sesuaikan IPsec MSS (Maximum Segment Size): Enkripsi IPsec memakan sedikit ruang overhead pada paket data. Agar performa transfer data/file besar antar-cabang tetap ngebut dan tidak ada web yang terasa lambat dibuka (akibat fragmentasi paket), tambahkan aturan Change MSS di menu
/ip firewall manglepada semua router:
/ip firewall mangle
add chain=forward action=change-mss new-mss=clamp-to-pmtu passthrough=yes protocol=tcp tcp-flags=syn comment="Fix IPsec MSS"
Kesimpulan
Konfigurasi IPsec IKEv2 Hub-and-Spoke dengan dynamic peers dan PSK adalah solusi yang sangat efektif dan ekonomis untuk menghubungkan multiple site ke kantor pusat menggunakan MikroTik RouterOS. Model ini memungkinkan cabang-cabang yang berada di belakang NAT untuk secara aman terhubung ke jaringan pusat tanpa memerlukan IP publik.