All Products
Search
Document Center

Anti-DDoS:Memperoleh alamat IP asal di balik Anti-DDoS Proxy

Last Updated:Mar 27, 2026

Setelah Anda menambahkan layanan ke Anti-DDoS Proxy, proxy tersebut meneruskan seluruh lalu lintas ke server origin Anda. Server origin dapat memperoleh alamat IP asal klien dengan mengurai header X-Forwarded-For atau menginstal modul TOA.

Untuk layanan non-situs web (Lapisan 4)

Untuk beberapa layanan non-situs web, Anda dapat menginstal modul TOA pada server origin untuk memperoleh alamat IP asal. Petunjuknya tersedia di Memperoleh alamat IP asal permintaan dengan menginstal modul TOA. Jika Anda tidak dapat menginstal modul TOA di lingkungan Anda, hubungi dukungan teknis.

Instans Anti-DDoS Proxy IPv4

Anti-DDoS Proxy menggunakan bidang TCP Option untuk mentransmisikan alamat IP asal. Setelah proxy dan server origin menyelesaikan handshake tiga arah, paket ACK terakhir berisi opsi TCP sepanjang 8 byte dengan Tipe 254. Opsi ini mencakup nomor port sumber dan alamat IP sumber. Gambar berikut menunjukkan lokasi informasi tersebut.image

  • Nomor port: Bidang Magic Number merepresentasikan nomor port dalam format heksadesimal. Misalnya, nilai c4 06 dikonversi menjadi nomor port desimal 50182.

  • Alamat IP sumber: Empat byte berturut-turut setelah nomor port berisi alamat IP sumber dalam format heksadesimal. Misalnya, 65 ** ** 85 dikonversi menjadi alamat IP desimal 101.***.***.133.

Instans Anti-DDoS Proxy IPv6

v6tov4 mode

Dalam mode v6tov4—di mana proxy menggunakan alamat IPv6 dan server origin menggunakan alamat IPv4—proxy memanfaatkan bidang TCP Option. Setelah handshake tiga arah, paket ACK terakhir berisi opsi TCP sepanjang 40 byte dengan Tipe 249 yang mencakup port sumber, IP sumber, dan alamat IP Anti-DDoS Proxy. Gambar berikut menunjukkan lokasi informasi tersebut.

image

  • Nomor port: Dalam Payload, dua byte pertama merepresentasikan nomor port dalam format heksadesimal. Misalnya, 9d7d dikonversi menjadi nilai desimal 40317.

  • Alamat IP sumber: Enam belas byte berturut-turut setelah nomor port berisi alamat IPv6 sumber dalam format heksadesimal. Misalnya, 2401*****0f87 sesuai dengan alamat IP 2401:b180:100*:*:*:f87:5d96:f87.

    Catatan

    Dalam Payload, selain nomor port dan alamat IP sumber, dua puluh byte sisanya berisi informasi IP Anti-DDoS.

Mode v6tov6

Dalam mode v6tov6—di mana baik proxy maupun server origin menggunakan alamat IPv6—proxy memanfaatkan bidang TCP Option. Setelah handshake tiga arah, paket ACK terakhir berisi opsi TCP sepanjang 20 byte dengan Tipe 253 yang mencakup port sumber dan alamat IP sumber. Gambar berikut menunjukkan lokasi informasi tersebut.

image

  • Nomor port: Bidang Experiment Identifier menentukan nomor port dalam format heksadesimal. Misalnya, nilai heksadesimal eb98 sesuai dengan nomor port desimal 60312.

  • Alamat IP sumber: Bidang Data merepresentasikan alamat IP sumber sebagai string heksadesimal yang secara langsung sesuai dengan alamat IPv6. Misalnya, nilai 2401*****0f87 berarti alamat IP sumber adalah 2401:b180:100*:*:*:f87:5d96:f87.

Penting

Untuk mencegah lalu lintas kembali-ke-asal dari Anti-DDoS Proxy diblokir, Anda harus menambahkan blok CIDR kembali-ke-asal Anti-DDoS Proxy ke daftar putih pada server origin. Untuk menemukan blok CIDR kembali-ke-asal, lihat Izinkan blok CIDR kembali-ke-asal mengakses server origin.

  • Jika arsitektur jaringan Anda adalah Anti-DDoS Proxy → ECS, tambahkan blok CIDR kembali-ke-asal Anti-DDoS Proxy ke grup keamanan instans ECS. Untuk informasi lebih lanjut, lihat Menambahkan aturan grup keamanan.

  • Jika arsitektur jaringan Anda adalah Anti-DDoS Proxy → SLB → ECS, tambahkan blok CIDR kembali-ke-asal Anti-DDoS Proxy ke daftar putih kontrol akses instans SLB. Untuk informasi lebih lanjut, lihat Mengaktifkan kontrol akses.

Untuk layanan situs web (Lapisan 7)

Metode 1: Gunakan header X-Forwarded-For

Cara kerja

  • Ketika server proxy Lapisan 7, seperti Anti-DDoS Proxy, meneruskan permintaan ke server origin, server origin menganggap permintaan tersebut berasal dari alamat IP proxy. Header HTTP X-Forwarded-For mencatat alamat IP asal aktual klien. Formatnya adalah: X-Forwarded-For: <alamat_IP_asal>.

  • Jika permintaan melewati satu atau beberapa server proxy (seperti WAF atau CDN) sebelum mencapai server origin, header HTTP X-Forwarded-For mencatat IP klien asli dan alamat IP semua server proxy yang dilewati. Formatnya adalah X-Forwarded-For: real-client-IP, proxy-server-1-IP, proxy-server-2-IP, proxy-server-3-IP, .... Saat node proxy meneruskan permintaan ke server origin, node tersebut menambahkan alamat node sebelumnya ke header X-Forwarded-For tetapi tidak menambahkan alamat IP-nya sendiri.

Metode pengambilan

Potongan kode berikut menunjukkan cara mengambil nilai header X-Forwarded-For dalam berbagai bahasa pemrograman:

Penting
  • Setelah mengambil nilai header X-Forwarded-For, ambil alamat IP pertama dalam daftar yang dipisahkan koma. Alamat IP ini merupakan alamat IP asal klien.

  • Anda juga dapat mengonfigurasi server web Anda (seperti Nginx, IIS 6, IIS 7, Apache, atau Tomcat) untuk mengurai header X-Forwarded-For guna memperoleh alamat IP asal. Untuk informasi lebih lanjut, lihat Memperoleh alamat IP asal klien.

  • ASP

    Request.ServerVariables("HTTP_X_FORWARDED_FOR")
  • ASP.NET (C#)

    Request.ServerVariables["HTTP_X_FORWARDED_FOR"]
  • PHP

    $_SERVER["HTTP_X_FORWARDED_FOR"]
  • JSP

    request.getHeader("HTTP_X_FORWARDED_FOR")

Metode 2: Gunakan header HTTP kustom

Ikhtisar

Dalam arsitektur jaringan yang kompleks, mengandalkan header standar X-Forwarded-For (XFF) dapat menimbulkan risiko seperti pemalsuan header, kebingungan alamat IP akibat beberapa lapisan proxy, serta logika penguraian yang rumit. Untuk meningkatkan keamanan dan kontrol, Anda dapat menggunakan header HTTP kustom untuk mentransmisikan alamat IP asal klien.

Prosedur

Anda dapat mengonfigurasi Anti-DDoS Proxy untuk menulis alamat IP klien ke header HTTP kustom. Untuk informasi lebih lanjut, lihat Mengonfigurasi pengaturan kembali ke asal.

  1. Masuk ke halaman Website Config di Konsol Anti-DDoS Proxy.

  2. Di halaman Website Config, klik Add Website.

  3. Di halaman Website Config, pada bagian Forwarding Settings, atur Traffic Marking ke Custom Header (misalnya, Custom-True-IP).

  4. Dalam kode aplikasi Anda, ambil nilai header kustom tersebut, misalnya: request.getHeader("Custom-True-IP").