#!/bin/bash #created By Henry Saptono #iplocation.sh berfungsi untuk mengetahui dimanakah #lokasi Negara, Provinsi, dan Kota dari sebuah Public IP Address #script ini menggunakan bantuan form lookup IP dari http://www.ip2location.com #Thx to http://www.ip2location.com # Jan 2008 EXT="iplocation" TOOL="/usr/bin/curl" IP=$1 FILTER=$2 TEMP="/tmp" IP2LOC="http://www.ip2location.com/demo.aspx" OUTFILE="$1.$USER.$EXT" if [ "$3" = "--nocache" ] || [ "$2" = "--nocache" ] ; then rm -rf $TEMP/$OUTFILE fi if [ ! -x $TOOL ]; then echo "ERROR: Tidak ditemukan tools 'curl'"; exit 1; fi if [ -z "$1" ]; then echo "Gunakan: $0 [-anpki ] [ --nocache ]"; exit 1; fi if [ "$1" = "--help" ]; then echo "Gunakan: $0 [-anpki ] [--nocache ]"; echo "Keterangan bantuan:" echo " , misal: 202,176.29.1" echo "Options :" echo "-n , Menampilkan nama Negara dari IP address yang dilookup" echo "-p , Menampilkan nama Profinsi dari IP address yang dilookup" echo "-k , Menampilkan nama kota dari IP address yang dilookup" echo "-i , Menampilkan nama ISP dari IP address yang dilookup" echo "-a, Menampilkan nama Negara, Provinsi, dan Kota dari IP address yang dilookup" echo "--nocache, Tidak menggunakan data cache" exit 1; fi echo " Sedang proses lookup ,Tunggu sebentar ya Mr....." echo "" if [ ! -f "$TEMP/$OUTFILE" ]; then $TOOL -d "ipaddresses=$1" $IP2LOC 1> $TEMP/$OUTFILE 2> /dev/null fi x="dgLook" n="lblICountry" p="lblIRegion" k="lblICity" i="lblIISP" if [ ! -f "$TEMP/$OUTFILE" ]; then echo "ERROR: Data tidak ditemukan" exit 1 fi #Mulai parsing data / info negara=`grep dgLook $TEMP/$OUTFILE 2> /dev/null |grep $n 2> /dev/null |cut -f2 -d">" 2> /dev/null |cut -f1 -d"<" 2> /dev/null ` profinsi=`grep dgLook $TEMP/$OUTFILE 2> /dev/null |grep $p 2> /dev/null |cut -f2 -d">" 2> /dev/null |cut -f1 -d"<" 2> /dev/null ` kota=`grep dgLook $TEMP/$OUTFILE 2> /dev/null |grep $k 2> /dev/null |cut -f2 -d">" 2> /dev/null |cut -f1 -d"<" 2> /dev/null ` isp=`grep dgLook $TEMP/$OUTFILE 2> /dev/null |grep $i 2> /dev/null |cut -f2 -d">" 2> /dev/null |cut -f1 -d"<" 2> /dev/null ` case "$2" in -n) echo "Negara: $negara" ;; -p) echo "Profinsi: $profinsi" ;; -k) echo "Kota: $kota" ;; -i) echo "ISP: $isp" ;; *) echo "Data lengkap lokasi IP address $1 :" echo "Negara: $negara" echo "Profinsi: $profinsi" echo "Kota: $kota" echo "ISP: $isp" ;; esac exit 0