گروه کاربران لینوکس دانشگاه شهید مدنی آذربایجان

لاگ دانشگاه آذربایجان :: Azarbaijan University Linux User Group

گروه کاربران لینوکس دانشگاه شهید مدنی آذربایجان

لاگ دانشگاه آذربایجان :: Azarbaijan University Linux User Group

آزمایشگاه سیستم عامل - یافتن موقعیت جغرافیایی آدرس IP از طریق ترمینال

چگونه موقعیت جغرافیایی یک آدرس IP را از طریق ترمینال بدست آوریم؟


اگر می خواهید مکان یک آدرس IP مشخصی را در ]سطح[ جهان بدانید، تعدادی سرویس های آنلاین جستجوگرGeoIP وجود دارد.آنها رایگان بوده و دارای پایگاه داده هایی با سرویس های زیاد هستند.هرآیینه این خدمات جستجوگر دروب قابل دسترسی است،اما اگر نخواهیم از این مسیر ]مسیر وب[ برویم چه؟خوب،ماهمیشه میتوانیم ازطریق ترمینال پایگاه داده های آنها را پرس و جو کنیم.البته شما برای انجام این کار نیاز به اتصال اینترنت دارید.اما انجام دادن آن از طریق command آسان تر از دنبال کردن از مرورگر است.در این مقاله،من قصد دارم از ابزارهای geoiplookup استفاده کنم.

در ابتدا ما نیاز داریم آن را نصب کنیم به همراه پایگاه داده ای که بوسیله ی آن استفاده می شود.

برای Debian, Ubuntu, Linux Mint:

sudo apt-get install geoip-bin

برای Fedora :

sudo yum install geoip

 

برای CentOS شما نیاز به فعالسازیEPEL repository دارید :(عکس های 1 تا 6)

 

EPEL (Extra Packages for Enterprise Linux)

اضافه کردن EPEL Repository بهRHEL / CentOS / Scientific Linux 6.x:

نخست به EPEL repository download page می رویم وآخرین EPEL rpm  را طبق دستورات زیر در ترمینال دانلود کرده ونصب می کنیم.

wget http://epel.mirror.net.in/epel/6/i386/epel-release-6-8.noarch.rpm

rpm -Uvh epel-release-6-8.noarch.rpm

اضافه کردن EPEL Repository بهRHEL / CentOS / Scientific Linux 5.x:

نخست به EPEL repository download page می رویم وآخرین EPEL rpm  را طبق دستورات زیر در ترمینال دانلود کرده ونصب می کنیم.

wget http://epel.mirror.net.in/epel/5/i386/epel-release-5-4.noarch.rpm

rpm -Uvh epel-release-5-4.noarch.rpm

حالا لیست repositorie های نصب شده را در ترمینال بکار می بریم.

yum repolist

نمونه خروجی:

                Loaded plugins: fastestmirror, security

Determining fastest mirrors

 * base: mirror.leapswitch.com

 * epel: epel.mirror.net.in

 * extras: mirror.leapswitch.com

 * updates: mirror.leapswitch.com

repo id                                                   repo name                                                                                      status

base                                                      CentOS-6 – Base                                                                                4,802

<span style="color: #ff0000"><strong>epel                                                      Extra Packages for Enterprise Linux 6 – i386                                                   8,385</strong></span>

extras                                                    CentOS-6 – Extras                                                                                 12

updates                                                   CentOS-6 – Updates                                                                               211

repolist: 13,410

نصب Packageها:

 حالا شما می توانید Packageها را در ترمینال نصب کنید.

yum install bugzilla

نصب Packageها ی مورد نیاز:

yum install --disablerepo="*" --enablerepo=epelbugzilla

نمایش جزئیات Packageها:

yum info bugzilla

:نمونه خروجی

Loaded plugins: fastestmirror, security

Loading mirror speeds from cached hostfile

 * base: mirror.leapswitch.com

 * epel: epel.mirror.net.in

 * extras: mirror.leapswitch.com

 * updates: mirror.leapswitch.com

Available Packages

<span style="color: #ff0000">Name        : bugzilla</span>

Arch        : noarch

Version     : 3.4.14

Release     : 1.el6

Size        : 953 k

<span style="color: #ff0000">Repo        : epel</span>

Summary     : Bug tracking system

URL         : http://www.bugzilla.org/

License     : MPLv1.1

Description : Bugzilla is a popular bug tracking system used by multiple open source projects

            : It requires a database engine installed - either MySQL, PostgreSQL or Oracle.

            : Without one of these database engines (local or remote), Bugzilla will not work

            : - see the Release Notes for details.

 حالا کد زیر را تایپ کنید:(عکس 7)

sudo yum install geoip

 sudo yum install geoip

بعد از نصب شما پایگاه داده Geoip را در اختیار دارید که فقط کشور را می تواند بیابد:

مثال:

geoip lookup 23.66.166.151

خروجی:

Geoip Country Edition: US, United States

بعدازآن شمابایدپایگاه داده های اضافی راازMaxMindکه وب سایت تأمین خدمات است،نصب کنید. این پایگاه داده اطلاعات بیشتری در مورد IP که جستجو میکنید به شما می دهد. شما همچنین می توانید فایل Geoip.datراکه شامل همان پایگاه داده است آپدیت(به روز) کنید تا همیشه بروز باشد.

برای نصب پایگاه داده های اضافی GeoIP از MaxMind  کد زیر را تایپ کنید:

wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz

wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz

wget http://download.maxmind.com/download/geoip/database/asnum/GeoIPASNum.dat.gz

gunzip GeoIP.dat.gz

gunzip GeoIPASNum.dat.gz

gunzip GeoLiteCity.dat.gz  

sudocp GeoIP.dat GeoIPASNum.dat GeoLiteCity.dat /usr/share/GeoIP/

(در صورتی که نتوانستیم از طریق ترمینال فایل ها را مطابق دستورات فوق دریافت کنیم.با استفاده از مرورگر ویندوز فایل ها را دریافت کرده و درDesktop کپی کرده و در ترمینال دستورات زیر را اجرا می کنیم.

(عکس های 9تا11)

cd Desktop

gunzip GeoIP.dat.gz

gunzip GeoIPASNum.dat.gz

gunzip GeoLiteCity.dat.gz

cp GeoIP.dat GeoIPASNum.dat GeoLiteCity.dat /usr/share/GeoIP/

اگر شما مجددا geoiplookup را اجرا کنید خواهید دید: (عکس 12)

geoiplookup 46.21.88.166

GeoIP Country Edition: IR,Iran,Islamic Republic of        

GeoIPASNum Edition: AS39308 AndisheSabzkhazar Autonomous System

آن به شما شماره AS را که اساسا administrative domain به آن تعلق داردنشان می دهد.بدون هیچ پارامترهایی geoiplookup به شیوه ای که قبلا اجرا کردیم، فقط کشور و  administrative domainرا بر می گرداند.اما شما می توانید با استفاده از GeoLiteCity  اطلاعات را در سطوح شهری بدست آورید.

( عکس 13)

 geoiplookup -f /usr/share/GeoIP/GeoLiteCity.dat 46.21.88.166

خروجی:

GeoIP City Edition, Rev 1: IR, 33 Sabz, N/A 37.431499, 47.787399,0, 0

آن شامل استان،شهر،کدپستی،طول وعرض جغرافیایی می باشد. دقت مکان یابی آن کمی خطا دارد اما عموما برای شبکه های پهن باند برخلاف شبکه های موبایل بسیار خوب است.

دانلود تصاویر

download

برای سوالات لطفا به انجمن Q/A ما مراجعه کنید:http://ask.unixmen.com/