Как узнать IP-адрес сайта

Вопрос или проблема

Я хотел узнать IP-адрес веб-сайта. Один из способов — это выполнить ping веб-сайта. Например, если я хочу узнать IP-адрес google.com, я могу выполнить ping в командной строке.

Pinging google.com [74.125.236.195] с 32 байтами данных:

Ответ от 74.125.236.195: байты=32 время=36мс TTL=49
Ответ от 74.125.236.195: байты=32 время=35мс TTL=49
Ответ от 74.125.236.195: байты=32 время=64мс TTL=49
Ответ от 74.125.236.195: байты=32 время=47мс TTL=49

Таким образом, 74.125.236.195 — это IP-адрес Google. Но если я хочу узнать IP-адрес superuser.com и попробую сделать то же самое, мне выдаст IP-адрес 198.252.206.16. Но если я введу этот IP-адрес в адресной строке браузера, он не перенаправит меня на superuser.com.

Может кто-нибудь сказать, как получить IP-адрес?

Ваше начальное предположение заключается в том, что все веб-сайты можно открыть напрямую по их IP-адресу. Это не так.

В большинстве случаев (я бы сказал, в большинстве случаев) веб-сайт, который отображается по IP-адресу, зависит от имени веб-сайта, который вы запрашиваете. То есть, если вы запрашиваете superuser.com, вам сначала необходимо разрешить это имя в IP-адрес, а затем сделать запрос к IP-адресу для конкретной веб-страницы. Это выглядит так:

GET / HTTP/1.1
Host: superuser.com:80

Первая часть говорит: “получите первую страницу сайта”, а вторая — “для веб-сайта superuser.com”.

Вот почему один веб-сервер может размещать несколько веб-сайтов, используя один IP-адрес. В случае сайтов Stack Exchange любой из них может находиться на каждом из их серверов, и вы получите тот, который запрашиваете. Если вы просто введете IP-адрес, вы не получите никакой из них, потому что вы не говорите веб-серверу, какой из многочисленных веб-сайтов вы ищете. В этих случаях у него может быть определенный “дефолтный” веб-сайт или просто возвращаться ошибка.

Если вы пытаетесь обойти проблему с вашим DNS-поставщиком, то одним из вариантов является изменение файла hosts, чтобы вы сами разрешали адреса, а не позволяли этому делать сторонней организации.

Таким образом, например, если вы редактируете

/etc/hosts   (linux)
c:\windows\system32\drivers\etc\hosts   (windows)

Вы можете ввести

74.125.236.195 superuser.com

Таким образом, если вы наберете superuser.com в вашем браузере, он посмотрит в файл hosts, разрешит IP-адрес, но затем все равно передаст имя веб-сайта серверу, к которому подключается.

Чтобы получить IP-адрес веб-сайта, наилучший способ — использовать команду nslookup. Например:

nslookup superuser.com 8.8.8.8
Сервер:  google-public-dns-a.google.com
Адрес:  8.8.8.8

Неавторитетный ответ:
Имя:    superuser.com
Адрес:  198.252.206.16

Если вам интересно, почему вы не можете посетить superuser напрямую по IP-адресу (198.252.206.16), это связано с настройками веб-сервера.

Здесь сайт superuser запрещает посещение пользователей через IP-адрес. Вероятно, это потому, что IP-адрес привязан к другим веб-сайтам (например, stackoverflow.com).

Если вы используете инструмент “обратного поиска IP”, вы можете найти его привязанные сайты.

Еще одна проверка подтверждает, что я прав:

nslookup stackoverflow.com  8.8.8.8
Сервер:  google-public-dns-a.google.com
Адрес:  8.8.8.8

Неавторитетный ответ:
Имя:    stackoverflow.com
Адрес:  198.252.206.16

У Firefox есть отличный аддон, который показывает IP-адрес любого сайта, который вы посещаете, который вы можете получить здесь.

Расширение Flagfox для Firefox дает вам IP-адрес текущего веб-сайта, а также множество другой информации о сайте (включая геолокационную карту местоположения сервера). В выпадающем меню аддона вы можете скопировать IP-адрес в буфер обмена при необходимости.

Ответ или решение

Чтобы узнать IP-адрес веб-сайта, существует несколько методов, которые могут быть использованы. Я перечислю наиболее распространённые из них, а также объясню, почему вы иногда не можете напрямую перейти на сайт, используя только IP-адрес.

1. Команда ping

Один из простых способов узнать IP-адрес сайта — использовать команду ping в командной строке. Например, для получения IP-адреса google.com можно выполнить следующую команду:

ping google.com

В результате вы получите ответ, в котором будет указан IP-адрес, например [74.125.236.195].

2. Использование nslookup

Команда nslookup предоставляет более детализированную информацию о DNS. Например, чтобы узнать IP-адрес для superuser.com, можно использовать:

nslookup superuser.com

Это даст вам IP-адрес, например 198.252.206.16.

3. Почему нельзя получить доступ к сайту по IP-адресу

Часто бывает так, что вы не можете зайти на сайт, используя его IP-адрес, так как многие веб-сервера используют виртуальные хосты. Это значит, что один и тот же IP-адрес может обслуживать несколько сайтов. Когда вы обращаетесь к конкретному IP-адресу, сервер не всегда знает, какой сайт вы хотите посетить, если вы не указали его в запросе.

Вот как работает запрос:

GET / HTTP/1.1
Host: superuser.com

В этом запросе указано, что вы хотите получить страницу для superuser.com. Без этой информации сервер либо показывает "умолчательный" сайт, либо возвращает ошибку.

4. Изменение файла hosts

Если вы хотите обойти проблемы с DNS, вы можете внести изменения в файл hosts вашего компьютера. Например:

  • Для Linux:
    /etc/hosts
  • Для Windows:
    C:\Windows\System32\drivers\etc\hosts

Вы можете добавить строку:

198.252.206.16 superuser.com

Таким образом, когда вы вводите superuser.com в браузере, ваш компьютер будет обращаться к указанному IP-адресу, но по-прежнему будет использовать имя хоста в запросе.

5. Использование браузерных расширений

Существуют расширения для браузеров, которые могут помочь вам получить IP-адрес посещаемого сайта. Например, в Firefox есть аддон ShowIP, который показывает IP-адрес любого сайта, который вы посещаете. Также можно использовать аддон Flagfox, который предоставляет дополнительные сведения о сайте, включая геолокацию сервера.

6. Советы по проверке

Если вы хотите подтвердить, какие сайты обслуживаются на конкретном IP-адресе, вы можете воспользоваться инструментами обратного поиска IP-адреса.

Заключение

Получить IP-адрес веб-сайта можно несколькими способами. Однако, учитывая архитектуру современных веб-серверов, прямой доступ к сайтам по их IP-адресам может быть невозможен из-за правил конфигурации серверов. Всегда используйте указание имени сайта в запросах, чтобы гарантировать успешный доступ.

Оцените материал
Добавить комментарий

Капча загружается...