• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

Jaranguda

Belajar Mengajar

  • Home
  • Sponsor/Jasa
  • Tentang

Script Mengambil IP Public Server dengan PHP

Last Updated on 11 July 2019 By tommy Leave a Comment

Untuk mendapatkan public IP dari server yang digunakan oleh PHP, kita harus menggunakan jasa pihak ketiga. Beberapa situs yang bisa digunakan adalah http://ip.jaranguda.com bisa juga menggunakan https://ip.jaranguda.com. Diluar itu ada banyak api.ipify.org, icanhazip.com dan lain sebagainya

Contoh script menampilkan IP publik

<?php
// ip-public.php
$situsInfoIP = file_get_contents("https://ip.jaranguda.com");
echo $situsInfoIP;

contoh eksekusi script diatas

> php /tutorial/ip-public.php 
139.10.22.1

Bergantung pada satu situs, sangat tidak disarankan, kita rubah script diatas agar lebih tahan banting

<?php
// ip-public.php
$situsInfoIP = file_get_contents("https://ip.jaranguda.com");
 
// pastikan IP yang di dapat adalah IP publik, bukan private IP atau lainnya
// bila anda membutuhkan selain IPv4 modifikasi FILTER_FLAG_xxx
if (! filter_var($situsInfoIP, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4 | FILTER_FLAG_NO_PRIV_RANGE | FILTER_FLAG_NO_RES_RANGE)) {
        $situsInfoIP = file_get_contents("http://icanhazip.com");
}
 
echo $situsInfoIP;

Jika anda menjalankan script diatas, dan situs pertama ip.jaranguda.com down ataupun tidak bisa diakses, maka hasilnya jadi berantakan, seperti contoh dibawah ini

PHP Warning: file_get_contents(): php_network_getaddresses: getaddrinfo failed: Name or service not known in /tmp/ip-public.php on line 3
PHP Warning: file_get_contents(https://ip.jaranguda.com): failed to open stream: php_network_getaddresses: getaddrinfo failed: Name or service not known in /tmp/ip-public.php on line 3
139.10.22.1

IP memang tetap didapat, tidak seperti rencana awal mendapatkan string yang bisa diolah langsung. Solusinya adalah dengan bantuan symbol at @, @ di PHP dikenal sebagai Error Control Operators

, dalam bahasa sederhana semua error yang muncul akan diabaikan oleh PHP.

<?php
// ip-public.php
$situsInfoIP = @file_get_contents("https://ip.jaranguda.com");
 
// pastikan IP yang di dapat adalah IP publik, bukan private IP atau lainnya
// bila anda membutuhkan selain IPv4 modifikasi FILTER_FLAG_xxx
if (! filter_var($situsInfoIP, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4 | FILTER_FLAG_NO_PRIV_RANGE | FILTER_FLAG_NO_RES_RANGE)) {
        $situsInfoIP = @file_get_contents("http://icanhazip.com");
}
 
echo $situsInfoIP;

Tulisan menarik lainnya

  • Monitoring Uptime Server Linux dengan Script PHP

    Dengan bantuang fungsi shell_exec, scriptnya sangat sederhana uptime.php tapi biasanya di web hosting ngga bisa…

  • Mengecek Server Online Atau Offline dengan PHP

    Script dibawah ini bisa digunakan untuk membuat website seperti Is my website down or not…

  • Validasi Angka dengan Script PHP

    Contoh kasus kita mau validasi nomor rekening yang dimasukkan pengguna di dalam sistem yang dibangun,…

  • Validasi Email dengan PHP

    Tutorial ini bisa dijalankan di PHP 5 >= 5.2.0 Validasi email dengan PHP, dengan validasi…

Filed Under: Linux

Reader Interactions

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Primary Sidebar

Pencarian

Tanya Jawab tentang DevOps SRE CPE, gabung di https://t.me/devopsindonesia

Terbaru

  • Cara Mengganti Port Screen Sharing macOS
  • Cara Menonaktifkan Pager di macOS
  • Cara Mengupdate Nama Apple silicon-as-a-Service Scaleway
  • Cara Force Delete Namespace di Kubernetes
  • Install PHP MariaDB di Mac Monterey

Komentar

  • adi on Menggunakan Mikrotik Sebagai SSH Client
  • aris u on Solusi Simple Queue Mikrotik Tidak Berjalan
  • Bowo on Cara Mematikan SSID Molecool Balifiber
  • aris on Solusi Simple Queue Mikrotik Tidak Berjalan
  • Alief on Password Router Huawei HG8245H5 Indihome

Tulisan Populer

  • Password Router Huawei HG8245H5 Indihome 1.1m views
  • Password Terbaru ZTE F609 Indihome 784.5k views
  • Password Superadmin Huawei HG8245A 318k views
  • Cara Setting Manual Modem GPON ZTE F609 Indihome 273k views
  • Cara Setting Wireless ZTE F609 Indihome 257.1k views
  • Mengaktifkan Port LAN di Huawei HG8245 Indihome 169.8k views
  • Akses UseeTV Indihome via Wireless ZTE F609 156.8k views
  • Kemana Menghilangnya Saldo BCA 50 ribu 153k views
  • Cara Reset Password ZTE F609 Indihome 147.5k views
  • Cara Setting DHCP Server Modem/Router ZTE F609 113.5k views

Kategori

  • Delphi
  • dll
  • Gambas
  • Internet
  • Java
  • Lazarus
  • Linux
  • PHP
  • Review
  • Teknologi

Sponsor

kadal.id
carakami.com
kuotabisa.com
Untuk jadi sponsor, hubungi kita lewat halaman sponsor
© 2021. Jaranguda
  • Linux
  • PHP
  • Internet
  • Teknologi
  • Delphi
  • Gambas
  • Java