Назад | Перейти на главную страницу

Как я могу получить IP-адрес веб-сайта?

Как получить IP-адрес определенного веб-сайта, например serverfault.com?

в системе Linux или Mac вы также можете использовать команду dig что даст дополнительную информацию. nslookup устарел, поэтому вы должны использовать dig где доступно. У них аналогичный выход.

$ dig serverfault.com

; <<>> DiG 9.4.3-P1 <<>> serverfault.com
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 53701
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;serverfault.com.       IN  A

;; ANSWER SECTION:
serverfault.com.    1285    IN  A   69.59.196.212

;; Query time: 5 msec
;; SERVER: 10.0.1.1#53(10.0.1.1)
;; WHEN: Tue Jul  7 12:30:26 2009
;; MSG SIZE  rcvd: 49

Из командной строки:

nslookup <web site fully-qualified domain name>

Имейте в виду, что с балансировщиками нагрузки, системами гео-DNS и т. Д. Возвращаемый IP-адрес может не иметь реального отношения к IP-адресу, фактически назначенному веб-серверу.

Если вы делаете это часто, я бы предложил надстройку Firefox, например Показать IP.

Обратите внимание, что могут быть сотни или даже тысячи веб-сайтов, «скрывающихся» за одним IP-адресом, если веб-сервер обслуживает именованные виртуальные хосты. См. Например в VirtualHost ключевое слово в документации Apache. Т.е. веб-сайт не обязательно должен иметь собственный выделенный IP-адрес.

ping serverfault.com найдите IP-адрес в выводе.

C:\Documents and Settings\user>ping serverfault.com

Pinging serverfault.com [**69.59.196.212**] with 32 bytes of data:

Reply from 69.59.196.212: bytes=32 time=63ms TTL=111
Reply from 69.59.196.212: bytes=32 time=58ms TTL=111
Reply from 69.59.196.212: bytes=32 time=63ms TTL=111
Reply from 69.59.196.212: bytes=32 time=67ms TTL=111

Ping statistics for 69.59.196.212:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 58ms, Maximum = 67ms, Average = 62ms

вы, вероятно, хотите запись A, host(1) это самый простой способ получить:

$ host -t A serverfault.com
serverfault.com has address 69.59.196.212

dig(1) дает вам немного больше информации:

$ dig serverfault.com

; <<>> DiG 9.5.1-P2-RedHat-9.5.1-2.P2.fc10 <<>> serverfault.com
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 17080
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;serverfault.com.       IN  A

;; ANSWER SECTION:
serverfault.com.    3484    IN  A   69.59.196.212           <--- this is what you want

;; AUTHORITY SECTION:
serverfault.com.    3484    IN  NS  ns22.domaincontrol.com.

dig(1) также говорит вам, что ns22.domaincontrol.com - это сервер имен для serverfault. Если вы хотите быть уверены, что получаете правильный IP-адрес, вы можете запросить этот сервер имен:

$ dig @ns22.domaincontrol.com serverfault.com

; <<>> DiG 9.5.1-P2-RedHat-9.5.1-2.P2.fc10 <<>> @ns22.domaincontrol.com serverfault.com
; (1 server found)
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 4726
;; flags: qr aa; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 0

;; QUESTION SECTION:
;serverfault.com.       IN  A

;; ANSWER SECTION:
serverfault.com.    3600    IN  A   69.59.196.212  <-- we had the right one using "host"

В Windows откройте командную строку (Пуск-> Выполнить, введите cmd) и выполните команду:

nslookup serverfault.com

ping serverfault.com

Pinging serverfault.com [69.59.196.212] with 32 bytes of data:
Reply from 69.59.196.212: bytes=32 time=189ms TTL=110
Reply from 69.59.196.212: bytes=32 time=185ms TTL=110
Reply from 69.59.196.212: bytes=32 time=185ms TTL=110
Reply from 69.59.196.212: bytes=32 time=188ms TTL=110

Если вы находитесь на хосте, который разрешает пинговать только root:

$ ping google.com
ping: icmp open socket: Operation not permitted

тогда вы можете использовать wget для проверки ip:

$ wget serverfault.com -O /dev/null
--21:53:22--  http://serverfault.com/
       => `/dev/null'
Resolving serverfault.com... 69.59.196.212
Connecting to serverfault.com|69.59.196.212|:80... connected.
HTTP request sent, awaiting response... 200 OK

В качестве бонуса вы узнаете, работает ли сервер.

У веб-сайта может быть более одного IP - например, какой IP-адрес у www.google.com? Ответ в том, что это зависит от обстоятельств. Для меня это псевдоним www.l.google.com, который сам по себе 64.233.161.147 или 64.233.161.104.

Но если я спрошу другой DNS-сервер, я получу 74.125.65.147, 74.125.65.99, 74.125.65.103 или 74.125.65.104.