Skip to main content

Konteks

Universitas Muhammadiyah Surakarta memiliki 12 cabang/fakultas yang tersebar di area Solo Raya. Sebelumnya, koneksi antar site menggunakan static routing dengan backup link 4G yang diaktifkan manual. Beberapa masalah utama:

  • Failover lambat — begitu link utama putus, admin harus manual switch ke backup, rata-rata downtime 30 detik sampai 2 menit
  • Suboptimal routing — traffic dari Fakultas A ke server di Fakultas B kadang lewat core dulu padahal bisa langsung
  • Tidak ada QoS — Zoom meeting keputus saat ada download besar di site yang sama

Yang Saya Kerjakan

1. Audit & Dokumentasi Topologi

Sebelum menyentuh apa pun, saya dokumentasikan seluruh topologi existing — 300+ perangkat, mixed vendor (Cisco, MikroTik, Fortinet). Ini jadi baseline dan menyelamatkan saya berkali-kali saat rollback diperlukan.

2. Desain Arsitektur Baru

Pindah dari static routing ke SD-WAN dengan BGP sebagai underlay:

                  ┌──────────┐
                  │  CORE DC │
                  │ FortiGate│
                  └────┬─────┘
                       │ BGP
          ┌────────────┼────────────┐
          │            │            │
     ┌────┴────┐  ┌────┴────┐  ┌────┴────┐
     │ Site A  │  │ Site B  │  │ Site C  │
     │FortiGate│  │FortiGate│  │FortiGate│
     └────┬────┘  └────┬────┘  └────┬────┘
          │ IPSec      │ IPSec      │ IPSec
          │ + 4G B/U   │ + 4G B/U   │ + 4G B/U
  • BGP sebagai routing protocol (kenapa bukan OSPF? Karena policy-based routing lebih fleksibel dengan BGP attributes seperti local-pref dan AS-path)
  • IPSec tunnel ke semua site dengan 4G sebagai backup otomatis
  • SD-WAN rules untuk QoS: traffic VoIP/Zoom prioritas tertinggi, bulk download lowest

3. Migrasi Bertahap

Migrasi dilakukan per site, satu per satu, di luar jam kerja:

  1. Pre-config FortiGate di site target (parallel config, nggak ganggu existing)
  2. Schedule maintenance window 2 jam per site
  3. Swap fisik, verifikasi BGP neighbor up
  4. Monitor 24 jam sebelum lanjut site berikutnya

Total waktu migrasi: 3 minggu (12 site), zero complaint dari user.

4. Automation dengan Netmiko

Backup konfigurasi dan health check diotomasi pakai Python + Netmiko:

from netmiko import ConnectHandler
import json

devices = [
    {"host": "10.10.1.1", "device_type": "fortinet"},
    {"host": "10.10.2.1", "device_type": "fortinet"},
    # ... 12 devices
]

for device in devices:
    conn = ConnectHandler(**device, username="admin", password="...")
    bgp_status = conn.send_command("get router info bgp summary")
    # parse, log, alert if neighbor down

Hasil

MetrikSebelumSesudah
Failover time30-120 detik (manual)< 3 detik (otomatis)
Latency antar site12-18ms6-9ms
Zoom call qualitySering putusStabil, jitter < 5ms
Waktu provisioning site baru2 hari2 jam

Lesson Learned

  1. BGP itu overkill untuk network kecil, tapi lifesaver untuk multi-site. Static routing 3 site masih ok, 12 site + backup link = resep mimpi buruk.

  2. SD-WAN rule yang paling penting: SLA monitoring. Pastiin selalu ada health check ke next-hop, jangan cuma andalin interface up/down.

  3. Dokumentasi sebelum sentuh apa pun. Satu-satunya alasan kenapa rollback 2x tetap mulus adalah karena saya punya persis config sebelumnya.

  4. Kalau vendor bilang “seamless migration”, siapin rollback plan. Fortinet SD-WAN wizard bagus, tapi real world selalu ada edge case yang nggak ke-cover.