Network IP Pool
Manajemen alamat IPv4 Publik sangat krusial dalam Cloud Provider. Karena keterbatasan jumlah IPv4 di dunia, Frog Cloud menggunakan sistem IP Pool. Modul ini memungkinkan Admin Jaringan (Network Engineer) untuk memecah blok IP (Subnet) yang mereka sewa dari ISP menjadi Pool yang lebih kecil, lalu mendistribusikannya ke berbagai lokasi Data Center.
Seluruh endpoint untuk manajemen IP Pool berada pada path /api/backoffice/pool.
1. Konsep IP Pool
IP Pool adalah "wadah" yang menyimpan sekumpulan alamat IPv4 yang bisa dialokasikan (assign) ke Virtual Machine pelanggan. Sebuah Pool akan terikat pada satu Lokasi (misalnya: Jakarta Data Center) dan satu VPC Subnet.
Melihat Daftar Wadah (Get IP Pools)
Digunakan untuk merender tabel manajemen IP Pool.
GET /api/backoffice/pool
Membuat Wadah Baru (Create IP Pool)
Ketika perusahaan membuka Data Center baru atau menyewa blok IP tambahan.
POST /api/backoffice/pool/create
Content-Type: application/json
{
"name": "Pool JKT-02 Premium",
"location_id": 1,
"gateway": "103.45.12.1",
"netmask": "255.255.255.0",
"dns1": "8.8.8.8",
"dns2": "1.1.1.1"
}
Mengubah Konfigurasi Wadah (Update IP Pool)
Digunakan jika ada perubahan Gateway atau DNS Resolver.
PUT /api/backoffice/pool/{pool_id}/update
Mendapatkan Opsi Dropdown (Get IP Pool Options)
Digunakan oleh Frontend ketika membuat form (misal: form deploy server baru) yang membutuhkan Admin memilih Pool tujuan.
GET /api/backoffice/pool/options
2. Injeksi Alamat IP (Pool IPs)
Setelah "wadah" (Pool) dibuat, "wadah" tersebut masih kosong. Admin harus menekan wadah tersebut di UI untuk menyuntikkan (memasukkan) alamat IP satu per satu atau secara massal (bulk) berdasarkan blok CIDR yang dimiliki.
Melihat Detail Wadah dan Isi IP
GET /api/backoffice/pool/{pool_id}/details
Melihat Daftar Alamat IP (Get Pool IPs)
Mengambil list alamat IP individual yang ada di dalam Pool tersebut, beserta statusnya (apakah sedang dipakai oleh pelanggan atau masih available).
GET /api/backoffice/pool/{pool_id}/ip
Menyuntikkan IP Baru ke Dalam Wadah (Create Pool IPs)
POST /api/backoffice/pool/{pool_id}/ip
Content-Type: application/json
{
"ip_addresses": [
"103.45.12.10",
"103.45.12.11",
"103.45.12.12"
]
}
3. Menghapus IP Terlarang (Delete IP)
Terkadang sebuah alamat IP masuk ke dalam Blacklist Spam global (karena disalahgunakan oleh pelanggan sebelumnya). Admin harus membuang IP tersebut agar tidak didapatkan oleh pelanggan baru secara acak.
DELETE /api/backoffice/ip/{ip_id}/delete
Perhatian: Sistem Backend (GORM) hanya memperbolehkan penghapusan IP jika statusnya sedang Available (tidak sedang disewa atau terikat dengan Virtual Machine).