Skip to content

linuxte komut satırından gerçek ip adresinin ögrenilmesi

linuxte shell script yazarken veya komut satırın dayken gerçek ip adresi (extarnal ip) bilgisine ihtiyaç duyabilirsiniz. bunun için farklı yöntemler vardır. temel olarak internette, size sizin bağlantı kurduğunuz ip adresini geri gönderecek bir servisin olmasıdır. bu servisler http, telnet, ssh veya başka bir servis olabilir. bunlardan bir kaçına hızlıca göz atalım

çok fazla bilinen bir çok sitenin bu işler için hazırlanmış api leri v.b. mevcuttur.

CURL ve WGET ile

fcicek@ubuntu:~$ curl bot.whatismyipaddress.com
78.168.67.209
fcicek@ubuntu:~$ wget http://smart-ip.net/myip -O - -q ; echo
78.168.67.209

fcicek@ubuntu:~$ curl http://smart-ip.net/myip
78.168.67.209
fcicek@ubuntu:~$ curl -s "http://api.hostip.info/get_html.php" 
Country: TURKEY (TR)
City: Karaman
IP: 78.168.67.209

fcicek@ubuntu:~$ curl -s "http://api.hostip.info/get_html.php" | grep 'IP:' | awk '{print $2}'
78.168.67.209
fcicek@ubuntu:~$ curl -s checkip.dyndns.org | sed -e 's/.*Current IP Address: //' -e 's/< .*$//'  
78.168.67.209
fcicek@ubuntu:~$ curl ident.me
78.168.67.209

EXEC

fcicek@ubuntu:~$ exec 3<> /dev/tcp/icanhazip.com/80 && # open connection
>   echo 'GET /' >&3 &&                   # send http 0.9 request
>   read -u 3 && echo $REPLY &&           # read response
>   exec 3>&-                             # close fd
78.168.67.209

LWP-REQUEST

fcicek@ubuntu:~$ lwp-request -o text checkip.dyndns.org | awk '{ print $NF }'
78.168.67.209

DIG

fcicek@ubuntu:~$ dig +short myip.opendns.com @resolver1.opendns.com
78.168.67.209

fcicek@ubuntu:~$ alias wanip='dig +short myip.opendns.com @resolver1.opendns.com'
fcicek@ubuntu:~$ wanip
78.168.67.209
fcicek@ubuntu:~$ dig @ns1.google.com -t txt o-o.myaddr.l.google.com +short
"78.168.67.209"
fcicek@ubuntu:~$ dig -4 @ns1-1.akamaitech.net -t a whoami.akamai.net +short
78.168.67.209

NETCAT

fcicek@ubuntu:~$ netcat icanhazip.com 80 < << $'GET / HTTP/1.1\nHost: icanhazip.com\n\n' | tail -n1
78.168.67.209

Wget : basit kullanım

Son günlerde windows dan linux işletim sistemine geçişlerde azda olsa ufak bir kıpırdanma var. Bunda Pardus un rolü büyük. Bu geçiş sonrası bir çok kişiden bazı sorular gelmekte. Bu soruların cevaplarına elimden geldiği kadar burada cevap vereceğim. İlk konu dosya indirme.

Wget bugüne kadar gördüğüm en iyi yükleme araçlarından birisi. Tek kötü tarafı (benim için aksine iyi) konsoldan çalışıyor olması. Wget ile ftp, http, https gibi protokollerden yükleme yapabilirsiniz. Wget kullanımı.

# wget “parametreler” yükleme_adresi &

şeklindedir.

herhangi bir parametre girilmezse belirilen adresteki dosya indirilecektir. Kullanışlı bir kaç parametre ;

-c : yarım kalmış dosyaların yüklenmesine kaldığınız yerden devam etmesini sağlar. Bu parametreyi sürekli kullanın mevcut bağlantı sorunlarından vb. etkilenmemek için.

-o log_dosya_adi : yükleme kayıtları log_dosya_adi ile belirtilen dosyaya kaydedilir. Ekranda yüklemelere ait bilgiler gözükmez.

-i dosya_adi : dosya_adi ile belirtilen dosya içindeki bağlantıları sırasıyla indirmenizi sağlar. Bir yükleme bitmeden diğerine geçmez.

-r : verilen adres ve içindeki bağlantılar recursive olarak indirilir. Bir sitenin çevrimdışı halini makinenize kopyalamak için kullanabilirsiniz.

-N : yeni dosya var ise kontrol ederek yenisinin indirilmesini sağlar

– P dizin_adi : indirilecek dosyanın belirtilen konuma kaydedilmesini sağlar.

-b : yükleme işleminin arka planda yapılmasını sağlar.

Bu parametreler fazlasıyla iş görecektir. Ancak parametreler bununla bitmiyor tabiki.

# man wget

komutu kullanarak wget hakkında ayrıntılı bilgi alınabilir.

Back To Top