checkip

Publicado por Percio Andrade Castelo Branco (última atualização em 27/05/2015)

[ Hits: 2.431 ]

Homepage: null

Download checkip




Busca informações de um IP ou IP de um domínio.

Exemplos:

$ checkip IP

Information for 189.34.1.229

ip: 189.34.1.229
hostname: bd2201e5.virtua.com.br
city: Florianópolis
region: Santa Catarina
country: BR
loc: https://google.com.br/maps?q=-27.5833-48.5667
org: AS28573 NET Serviços de Comunicação S.A.
end: Baía Norte, Brazil

$ checkip mercadolivre.com.br

Information for mercadolivre.com.br

ip: 216.33.196.59
hostname: No Hostname
city: Buenos Aires
region: Distrito Federal
country: AR
loc: https://google.com.br/maps?q=-34.6033-58.3816
org: AS53387 MercadoLibre Inc.
end: Avenida Corrientes 1031-1069, Buenos Aires, Ciudad Autónoma de Buenos Aires, Argentina

$ checkip -i

ip: XXXX
hostname: XXXXX
city: São Paulo
region: Sao Paulo
country: BR
loc: https://google.com.br/maps?q=-23.5475-46.6361
org: AS61440 Digital Energy Technologies Chile SpA
end: Praça do Patriarca, 2-82 - Sé, São Paulo - SP, 01002-010, Brazil

  



Esconder código-fonte

#!/bin/bash
# Author: Percio Andrade
# Desc: Simple script to curl IP info
# Version: 1.0
# RECEIVE IP NUMBER
# 1.1
# SED CORRECTION AND GOOGLE URL CORRECTION
# 1.2
# GOOGLE JSON TO GET CEP AND ANDRESS

# CHECK IF CURL EXIST
if [[ ! -f "/usr/bin/curl" ]] || [[ ! -f "/usr/bin/dig" ]];then
        echo -e "\nInstalling dependencies\n"
        yum -y install curl dig
        clear
fi

IP=$1

# CHECK VALUES
if [[ -z ${IP} ]];then
echo -e "Please enter IP or domain to check"
exit

elif [[ $IP == "-i" ]];then
GET=$(curl -s ipinfo.io/`hostname -i`|egrep -v "{|}"|sed -e 's/"//g;s/,//g;s/^[ \t]*//;s/[ \t]*$//'|sed -e "s/loc:/loc: https:\/\/google.com.br\/maps?q=/g"|sed 's/= -/=-/g') && GETMAP=$(echo $GET|grep =-|cut -d- -f2,3,4,5)
INVOKEMAP=$(curl -s -H "Content-Type: application/json" --data @body.json http://maps.google.com/maps/api/geocode/json?address=-$GETMAP|grep formatted_address|head -1|awk -F: '{print $2}'|cut -d '"' -f2)
echo -e "$GET\nend: $INVOKEMAP"
exit
fi

# CALL CURL ON IPINFO
CHECKIP(){
GET=$(curl -s ipinfo.io/${IP}|egrep -v "{|}"|sed -e 's/"//g;s/,//g;s/^[ \t]*//;s/[ \t]*$//'|sed -e "s/loc:/loc: https:\/\/google.com.br\/maps?q=/g"|sed 's/= -/=-/g') && GETMAP=$(echo $GET|grep =-|cut -d- -f2,3,4,5)
INVOKEMAP=$(curl -s -H "Content-Type: application/json" --data @body.json http://maps.google.com/maps/api/geocode/json?address=-$GETMAP|grep formatted_address|head -1|awk -F: '{print $2}'|cut -d '"' -f2)
echo -e "$GET\nend: $INVOKEMAP"
}

REQUEST=$(echo "$IP"|awk '$0 ~/[^0-9.]/ { print "NOT_NUMBER" }')
#echo "Request Id: $IP"
#echo "TEST :::$REQUEST"

echo -e "\nInformation for $IP\n"
# CHECK IF RETURN IS IP OR DOMAIN
if [[ "$IP" != "" ]] && [[ "$REQUEST" != "NOT_NUMBER" ]]; then
#IF OK INVOKE CHECKIP FUNCTION
CHECKIP
else
#IF NOT CURL AND DIG A FOR DOMAIN
GET=$(curl -s ipinfo.io/`dig +short A $IP|head -1`|egrep -v "{|}"|sed -e 's/"//g;s/,//g;s/^[ \t]*//;s/[ \t]*$//'|sed -e "s/loc:/loc: https:\/\/google.com.br\/maps?q=/g"|sed 's/= -/=-/g') && GETMAP=$(echo $GET|grep =-|cut -d- -f2,3,4,5)
INVOKEMAP=$(curl -s -H "Content-Type: application/json" --data @body.json http://maps.google.com/maps/api/geocode/json?address=-$GETMAP|grep formatted_address|head -1|awk -F: '{print $2}'|cut -d '"' -f2)
echo -e "$GET\nend: $INVOKEMAP"
fi

Scripts recomendados

Cálculo de raiz quadrada

Gerenciamento com firewalld no CentOS 7

Intalação do Thunderbird - Debian

Acompanhamento de log squid com hora real

Aplica quotas a partir de um arquivo gerado pelo repquota.


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts