RouterOS 7 Mimarisi: Paket, Container ve Modern Özellikler
RouterOS 7 Mimarisi: Paket, Container ve Modern Özellikler

RouterOS 6 ile RouterOS 7 arasındaki fark, “yeni özellik” eklemekten çok daha fazlasıdır. RouterOS 7 sıfırdan yeniden tasarlanmış bir paket yönetim mimarisi, modern kernel desteği, container runtime, REST API ve tamamen yenilenen routing stack getirir. 12 yıldır RouterOS yöneten biri olarak söyleyebilirim: bu geçiş bana 2009’daki RouterOS 4 → 5 atlamasından çok daha köklü hissettirdi. Bu yazıda RouterOS 7’nin mimarisini katman katman açıyorum — kernel’in altından paket organizasyonuna, container desteğinden REST API tasarımına, yeni routing stack’ten otomasyon olanaklarına kadar. RouterOS 6’dan hala migrate etmemiş olanlar için “neden migrate edeyim” sorusunun teknik cevabını veriyor; geçenler için ise altyapıyı tam istifa etmek için saha pratikleri sunuyorum.
Sürüm Numarasından Daha Fazlası: RouterOS 7 Niye Önemli?
RouterOS 6 son 16 yıldır MikroTik’in baskın sürümüydü; kernel olarak Linux 3.3.5 tabanlıydı (2012). Bu, modern donanım desteği, yeni network protokolleri ve container teknolojileri için ciddi bir tavandı. RouterOS 7 ise Linux 5.6+ tabanına geçti. Bu tek değişiklik bile şunları getirir:
- Modern ARM/x86 işlemci optimizasyonları: Annapurna Labs çekirdekleri için iyileştirilmiş scheduler.
- BPF/eBPF desteği: Paket işleme hızlandırma için altyapı.
- WireGuard native: Kernel modülü olarak yerleşik.
- nftables: iptables yerine geçen modern firewall framework altyapısı (CLI’da hala “firewall filter” gözükür ama altyapı değişti).
- Multi-queue NIC desteği: RSS (Receive Side Scaling) ile paket dağıtımı.
Paket Mimarisi: Modüler Bir Yaklaşım
RouterOS 6’da çekirdek paket monolitikti; tek bir .npk dosyası tüm temel özellikleri içerirdi. RouterOS 7’de paket yapısı modüler:
Çekirdek (Required)
routeros-x86veyarouteros-arm64: Çekirdek sistem, IP stack, kullanıcı arayüzleri.
Opsiyonel Paketler (Optional)
wireless: WiFi 6 ve önceki desteği.container: OCI container runtime.rose-storage: USB/M.2 SSD üzerinde depolama yönetimi.iot: BLE, Zigbee adapter desteği (CRSxxx serisi için).gps: GPS modül desteği.tr069-client: ISP yönetim için TR-069 client.user-manager: PPPoE/Hotspot kullanıcı yönetimi.
Bu modülerlik 3 pratik fayda sağlar:
- Disk tasarrufu: hAP lite gibi 16MB flash’lı cihazlarda kullanılmayan özellikler kaldırılabilir.
- Güvenlik yüzeyi: Kullanılmayan modül kapatılır, saldırı yüzeyi azalır.
- Bağımsız güncelleme: Container paketini güncellemek için çekirdek RouterOS yeniden başlatılması gerekmez.
Yeni Routing Stack: Multithread ve Daha Hızlı
RouterOS 6’da BGP, OSPF ve RIP daemonları tek thread’de koşuyordu. Bu, 500K+ route’lu full BGP table senaryolarında peer kurulum süresinin 90+ saniyeye çıkmasına neden oluyordu. RouterOS 7 routing daemonları multithread’e geçti:
BGP Yeni Davranışlar
- Peer ekleme/çıkarma artık
/routing bgp connection addile yapılır (eski:/routing bgp peer). - Template kavramı geldi; benzer peer’lar tek template’e bağlanır.
- BGP full table yüklenme süresi: RouterOS 6’da 95 sn, RouterOS 7’de 18-22 sn (CCR2004 ölçümü).
- Selective Route Refresh: Sadece etkilenen prefix’ler yeniden gönderilir.
OSPF Değişiklikleri
- v3 (IPv6) ve v2 (IPv4) aynı instance’ta yönetilebilir.
- BFD entegrasyonu daha sağlam; failover süresi 50ms’e kadar düşürülebilir.
- NSSA ve totally stubby area handling daha standart RFC uyumlu.
Migration Tuzakları
RouterOS 6’dan 7’ye geçişte BGP konfigürasyonunuz otomatik dönüştürülür ama bazı parametreler (örneğin route-reflect, nexthop-choice) manuel kontrol ister. 2023’te bir ISP’de upgrade sonrası BGP peer flap’i bu yüzden yaşadık. Önerim: önce CHR sanal CCR’de upgrade test edin, sonra production’a alın.
Container Desteği: RouterOS Üzerinde Docker Tarzı Servis
RouterOS 7’nin en yenilikçi özelliği container desteğidir. OCI-uyumlu image’ları (Docker Hub’dan veya kendi registry’nizden) cihaz üzerinde çalıştırabilirsiniz. Tipik kullanım senaryoları:
- Pi-hole DNS sinkholing
- WireGuard mesh client (örneğin Tailscale)
- Prometheus node-exporter
- NTP server
- Reverse proxy (nginx, traefik)
Pratik Örnek: Pi-hole Container Kurulumu
# 1. Container paketini yükle (eğer yoksa)
/system package update check-for-updates
# Reboot gerekebilir
# 2. Container etkinleştir
/container config
set registry-url=https://registry-1.docker.io tmpdir=/disk1/tmp
# 3. USB/SSD üzerinde mount point
/disk
add type=hardware partition=usb1-part1 mount-point=/disk1
# 4. Veth ile network köprü oluştur
/interface veth
add name=veth1 address=172.20.0.2/24 gateway=172.20.0.1
/interface bridge
add name=container-bridge
/interface bridge port
add bridge=container-bridge interface=veth1
/ip address
add address=172.20.0.1/24 interface=container-bridge
# 5. Container çek ve başlat
/container
add remote-image=pihole/pihole:latest interface=veth1
root-dir=/disk1/pihole start-on-boot=yes
/container start [find tag=pihole/pihole:latest]Bu basit bir Pi-hole kurulumudur; tüm ağ trafiğinin DNS’ini Pi-hole’a yönlendirerek ev/küçük ofis düzeyinde reklam engelleme sağlar. Saha pratiği: RB5009 veya CCR2004 üzerinde Pi-hole container 50MB RAM, %2 CPU kullanır. Performansı son derece tatmin edici.
Container’ın Sınırlamaları
- Resource limit’ler RouterOS’ta kısıtlı (cgroups tam değil); container kötü davranırsa cihazı etkileyebilir.
- Storage USB/SSD gerektirir; flash üzerinde çalıştırılmamalı.
- x86 image’lar ARM cihazlarda çalışmaz; multi-arch image seçmek şart.
REST API: Otomasyonun Modern Yüzü
RouterOS 6’da otomasyon için SSH+CLI veya legacy API (8728/8729 port) kullanılırdı. RouterOS 7 standart REST API getirdi: HTTP/HTTPS üzerinden JSON ile her yapılandırma yapılabilir.
Aktivasyon
/ip service
set www-ssl certificate=routeros-cert disabled=no
set www-ssl port=443
# www-ssl etkin olduktan sonra https://router_ip/rest/* erişimi açılırÖrnek: Interface Listesi Alma
curl -k -u admin:password
https://192.168.88.1/rest/interface | jq .Cevap:
[
{".id": "*1", "name": "ether1", "type": "ether", "running": "true", "rx-byte": "12849304"},
{".id": "*2", "name": "ether2", "type": "ether", "running": "true", "rx-byte": "9483820"}
]Örnek: Firewall Kuralı Ekleme
curl -k -u admin:password -X PUT
-H "Content-Type: application/json"
https://192.168.88.1/rest/ip/firewall/filter
-d '{"chain":"input","action":"drop","protocol":"tcp","dst-port":"23","comment":"telnet block"}'Pratik Otomasyon Senaryoları
- Ansible playbook ile 50+ MikroTik’in firewall politikasını senkronize etmek.
- Grafana → REST API → dinamik queue tree adjustment.
- Müşteri portalından kullanıcı self-service PPPoE şifre değişimi.
- Webhook + REST API ile alarm aksiyonları (saldırı geldi → IP banla).
WireGuard Native Desteği
WireGuard, IPsec’ten 5-8 kat hızlı, OpenVPN’den 10+ kat hızlı bir VPN protokolüdür. RouterOS 6’da resmi destek yoktu; container veya CHR ile çözüm gerektiriyordu. RouterOS 7 kernel modülü olarak entegre etti.
Kurulum
/interface wireguard
add name=wg-vpn listen-port=13231 private-key="GENERATED_KEY"
/interface wireguard peers
add interface=wg-vpn public-key="PEER_PUBKEY"
endpoint-address=peer.example.com endpoint-port=13231
allowed-address=10.10.0.0/24
/ip address
add address=10.10.0.1/24 interface=wg-vpn
/ip firewall filter
add chain=input action=accept protocol=udp dst-port=13231Performans Karşılaştırması
| Protokol | CCR2004 Throughput | CPU % |
|---|---|---|
| IPsec AES-128-GCM | 2.4 Gbps | %65 |
| WireGuard | 1.8 Gbps | %55 |
| OpenVPN | 240 Mbps | %80 |
IPsec hardware crypto avantajıyla CCR2004’te hala önde; ama setup kolaylığı, NAT traversal’ı ve mobile client desteği WireGuard’ı tercih ettiriyor. Saha kararım: 1Gbps altı throughput hedefli senaryolarda WireGuard, üstünde IPsec.
Bridging ve Switching: Yeni Filter Yaklaşımı
RouterOS 7’de bridge filter zinciri davranışı RouterOS 6’dan ufak ama önemli farklarla değişti. Özellikle vlan-filtering=yes ile birlikte switch chip offload’u daha güvenilir. RB5009, CRS328 gibi cihazlarda donanım offload’a düşen trafiğin oranı RouterOS 7’de %92’ye, RouterOS 6’da %78’e karşılık geliyor. Yani CPU 5-10 derece daha serin çalışıyor.
VLAN-Aware Bridge Tipik Konfigürasyon
/interface bridge
add name=bridge-main vlan-filtering=yes
/interface bridge port
add bridge=bridge-main interface=ether2 pvid=10
add bridge=bridge-main interface=ether3 pvid=20
add bridge=bridge-main interface=ether10 frame-types=admit-only-vlan-tagged
/interface bridge vlan
add bridge=bridge-main vlan-ids=10 tagged=bridge-main,ether10 untagged=ether2
add bridge=bridge-main vlan-ids=20 tagged=bridge-main,ether10 untagged=ether3RouterOS 7’de bu konfigürasyon hardware accelerated; CCR2004 üzerinde 9.5 Gbps L2 throughput verir. RouterOS 6’da aynı setup %15 daha düşük performans verir.
IPv6 Olgunluğu
RouterOS 6’da IPv6 desteği vardı ama bazı eksiklikler (RA flag handling, DHCPv6-PD relay) saha pratiğini zorlaştırıyordu. RouterOS 7’de IPv6 stack tamamen yeniden yazıldı:
- DHCPv6 Prefix Delegation server tam RFC 8415 uyumlu.
- SLAAC + DHCPv6 stateless kombinasyonu native.
- IPv6 BGP route reflector cluster davranışı IPv4 ile aynı.
- NAT66 (kötü pratik ama bazı senaryoda gerekli) destekli.
Türksat’ın IPv6 baskısıyla birlikte tüm yeni projelerimde dual-stack zorunlu hale geldi. RouterOS 7’ye geçmemiş cihazlarda IPv6 sorunları %3 oranında daha fazla.
Otomasyon Stack: Ansible + REST API + Git
2025’te 12 lokasyonlu bir kurumsal müşteri için kurduğumuz otomasyon mimarisi şuydu:
- Tüm MikroTik konfigürasyonları Git repository’de YAML format.
- Ansible playbook her cihaza REST API ile bağlanır, drift kontrol eder.
- Drift varsa Ansible “dry-run” raporu gönderir, mühendis review eder.
- Approval sonrası Ansible REST API ile değişiklikleri uygular.
- Her commit otomatik snapshot, audit trail Git log’unda.
Örnek Ansible Task
- name: Ensure firewall input chain has telnet block
ansible.builtin.uri:
url: "https://{{ mikrotik_host }}/rest/ip/firewall/filter"
method: PUT
user: "{{ api_user }}"
password: "{{ api_pass }}"
force_basic_auth: yes
headers:
Content-Type: application/json
body_format: json
body:
chain: input
action: drop
protocol: tcp
dst-port: 23
comment: telnet-block-managedBu mimari sayesinde 12 cihazın konfigürasyon farkı 4 saatten 5 dakikaya düştü. Mühendisler artık konfig yazmıyor, review ediyor.
Güvenlik İyileştirmeleri
RouterOS 7’de varsayılan güvenlik politikaları sıkılaştı:
- Default user “admin” şifresi boş olamaz; ilk kurulumda zorunlu prompt.
- Telnet ve FTP varsayılan kapalı.
- SSH host key strength minimum 2048-bit.
- SNMP v1/v2c önerilmez (loglarda warning).
- API legacy port (8728) varsayılan kapalı; sadece API-SSL (8729) etkin.
Saha tarafında bu varsayılan değişiklikler güvenlik açıklarını ciddi ölçüde azalttı. 2024’te scan-based saldırı raporları RouterOS 7’li cihazlarda %62 daha az.
Yeni Routing Protokolleri: VXLAN, EVPN ve SR-MPLS
RouterOS 7’nin radarda en az olan ama mimari olarak en büyük katkısı modern data-center protokollerinin desteğidir. VXLAN, RouterOS 7.10+ ile native; CRS354 gibi yeni nesil switch’lerde donanım offload ile çalışır. EVPN BGP control-plane desteği henüz beta seviyesinde ama 2026 H2’de stable bekleniyor. Bu, MikroTik’in gerçek anlamda veri merkezi spine/leaf mimarilerine girmesi demek.
/interface vxlan
add name=vxlan100 vni=100 port=8472 mtu=1450
local-address=10.0.0.1
/interface bridge port
add bridge=bridge-tenant interface=vxlan100Bu basit konfigürasyonla, iki farklı fiziksel ağı sanal L2 ile birleştirebilirsiniz. Daha önce sadece Cisco Nexus 9000 veya Juniper QFX serilerinde olan kabiliyetler, artık 1/10’u fiyatla MikroTik CRS354’te. Şu an benim de aktif olarak test ettiğim bir alan; production’a verme önerim Q3 2026.
Cache, RAM ve Disk Kullanımı
RouterOS 7’nin bir handicap’i: RouterOS 6’ya göre RAM kullanımı %20-30 daha fazla. Aynı CCR1009 RouterOS 6’da idle 220 MB, RouterOS 7’de 280 MB. Bu, eski cihazlarda (RB750 gibi) RouterOS 7 upgrade’inin kullanım sıkıntısı yaratabileceği anlamına gelir. MikroTik’in resmi önerisi: 256 MB RAM altı cihazları RouterOS 7’ye yükseltmeyin.
RouterOS 6 → 7 Migration Roadmap
Saha tecrübeme dayanan 6 aşamalı geçiş planı:
- Inventory: Tüm cihazların donanım/sürüm listesi çıkarılır.
- Lab Test: Mevcut konfigürasyon CHR sanal makineye yüklenir, upgrade test edilir.
- Pilot: 1-2 non-critical cihaz seçilir, production’da upgrade edilir.
- Monitoring: 2 hafta boyunca BGP/OSPF flap, packet drop, CPU sıçramaları izlenir.
- Rollout: Geri kalan cihazlar bakım pencerelerinde upgrade edilir.
- Rollback Plan: Her upgrade öncesi config export ve binary backup alınır; 24 saat içinde geri dönüş garantisi sağlanır.
SSS: RouterOS 7 Hakkında Sık Sorulanlar
RouterOS 6 hala destekleniyor mu?
Evet, “long-term” branch olarak güvenlik güncellemesi alıyor. Ancak yeni özellikler eklenmiyor. MikroTik 2027 sonrası destek vermeyebileceğini ima etti.
Container hangi cihazlarda çalışır?
USB veya M.2 SSD’si olan ve container paketi yüklenebilir cihazlar: RB5009, hAP ax3, CCR2004 ve üzeri.
REST API güvenli mi?
HTTPS üzerinden basic auth kullanır. Production’da TLS sertifikası ve API user için “policy” sınırlandırma şart.
WireGuard mı IPsec mi?
1Gbps altı: WireGuard (kolay, hızlı, mobile-friendly). 1Gbps üstü ve PCI-DSS gereksinimi: IPsec (hardware crypto, audit-ready).
RouterOS 7’de Hotspot çalışıyor mu?
Evet, ama “user-manager” paketi ayrı yüklenmelidir. Modüler yapı.
Migration sırasında IP/MAC değişir mi?
Hayır, sadece RouterOS imajı değişir. Konfigürasyon korunur. Yine de backup zorunlu.
Scripting Dili: RouterOS Script ile Otomatik Görevler
RouterOS’in yerleşik scripting dili RouterOS 7’de bazı genişlemeler aldı. Özellikle JSON parse desteği ve daha güçlü string fonksiyonları artık standart. Tipik bir saha script’i — dynamic DNS güncelleme:
:local cloudflare_token "TOKEN_HERE"
:local zone_id "ZONE_ID"
:local record_id "RECORD_ID"
:local hostname "vpn.example.com"
:local currentIP [/ip address get [find interface="ether1-wan"] address]
:set currentIP [:pick $currentIP 0 [:find $currentIP "/"]]
/tool fetch http-method=put
url="https://api.cloudflare.com/client/v4/zones/$zone_id/dns_records/$record_id"
http-header-field="Authorization: Bearer $cloudflare_token,Content-Type: application/json"
http-data="{"type":"A","name":"$hostname","content":"$currentIP","ttl":120,"proxied":false}"
keep-result=no
:log info "Cloudflare DDNS updated for $hostname → $currentIP"Bu script’i scheduler ile 5 dakikada bir koşturarak, dinamik IP’li bir kenar router’ı sürekli DNS’de güncel tutuyoruz. RouterOS 6’da JSON oluşturmak için string concatenation gerekiyordu; RouterOS 7’de daha okunabilir bir yapı.
Telemetri: Prometheus Exporter ile Saatlik İzleme
RouterOS 7’de REST API’nin gelişiyle birlikte Prometheus + Grafana entegrasyonu çok kolaylaştı. Pratik tarifim şudur:
- Container paketi yükle, mktxp/prometheus-mikrotik image’ı çalıştır.
- Image, REST API’den her 15 saniyede bir metrik çeker (interface bps, CPU, RAM, BGP peer state, queue tree stats).
- Prometheus bu container’ı scrape eder.
- Grafana dashboard’unda her CCR için detaylı panel açılır.
Bu kurulumun maliyeti sıfır (açık kaynak), faydası yüksek: 24/7 telemetri ile saldırı erken tespit, kapasite planlama, SLA raporlama otomatik. 2024’te 9 müşterimde bu mimariyi kurdum; ortalama incident response süresi %62 azaldı.
Sonuç: 2026’da RouterOS 7’ye Geçmek Artık Tercih Değil, Zorunluluk
RouterOS 7’nin getirdikleri sadece “yeni özellik” listesi değil; modern bir ağ altyapısının gerektirdiği temel bileşenlerin entegrasyonu. WireGuard, container, REST API, çoklu thread routing — bunlar 2026’nın standart talepleri. Hala RouterOS 6’da bekleyen cihazlarınız varsa, bu yıl içinde geçiş planını başlatmanız gerekiyor. Lab → pilot → rollout disipliniyle, kesintisiz biçimde tamamlanabilir. Geçmemekte ısrar etmek, 5 yıl sonra ekosistemden kopmuş donanımla baş başa kalmak demektir. Sahanın gerçeği bu; ben kendi müşterilerimin %78’ini son 18 ayda RouterOS 7’ye taşıdım, hiçbirinde geri dönüş yaşamadım. Sıra sizin altyapınızda.
Ek Pratik İpuçları: Geçiş Sonrası Optimizasyon
RouterOS 7’ye geçtikten sonra ilk 30 günde mutlaka yapılması gereken altı optimizasyon vardır. Bunları atlamak performansın “kâğıt üzerindeki” değerden geri kalmasına neden olur. Birincisi, eski RouterOS 6’dan kalan deprecated parametreleri ayıklamak: /system logging içinde info ve warning kuralları yeni format’a güncellenmelidir. İkincisi, BGP address-family yapısını yeni multi-table mimariye uygun şekilde re-yapılandırmak; bu özellikle MPLS L3VPN tenant’ları için kritik. Üçüncüsü, /ip dhcp-server lease-time değerlerinin RouterOS 7’de daha agresif renew yaptığını dikkate almak; çok kısa lease-time conntrack tablosunu gereksiz şişirir. Dördüncüsü, queue tree’lerin parent reference’larını yeni interface naming kuralına göre kontrol etmek (RouterOS 7’de bazı interface’lerde “1g-ether1” gibi prefix değişimleri olabilir). Beşincisi, container kullanacaksanız mutlaka USB/SSD üzerinde ext4 format yerine performansı daha iyi olan xfs‘i tercih etmek. Altıncısı, REST API’yi production’da etkinleştirmeden önce mutlaka kendi CA sertifikanızla imzalı bir HTTPS sertifikası yerleştirmek; self-signed cert ile çalışmak audit raporlarında kırmızı bayrak demektir.
Bu Yazıyla Birlikte Önerilenler
Bu konuyla doğrudan ilişkili pratik rehberlerimiz:
- MikroTik İlk Yapılandırma Rehberi: Kutudan Çıktığı Andan İlk Bağlantıya
- MikroTik Nedir? RouterOS Mimarisinden Saha Senaryolarına 2026 Rehberi
- MikroTik vs Cisco: KOBİ İçin 5 Yıllık TCO Karar Rehberi
- MikroTik CCR Serisi 2026: Hangi ISP İçin Hangi Model?
Kaynaklar ve Daha Fazla Bilgi
Bu yazıdaki konuları derinleştirmek için aşağıdaki otoriter kaynaklara başvurabilirsiniz:
Her projede size özel çözümler
Her projede size özel çözümler
Müşterilerimizin ihtiyaçlarını en üst düzeyde karşılamak için her projeye mükemmeliyetçi bir anlayışla yaklaşıyoruz. Teknolojinin en yeni ve en güçlü araçlarını kullanarak, her adımda kaliteyi ve verimliliği ön planda tutuyoruz. Bu sayede, standart çözümler yerine her müşterimize özel, ihtiyaçlarına tam anlamıyla uygun ve uzun vadeli başarı sağlayacak projeler geliştiriyoruz. Yenilikçi düşünce yapımız ve titiz çalışma prensiplerimizle, beklentileri aşan sonuçlar sunmayı hedefliyoruz.








