IP-адрес виртуального сервера?

У меня есть виртуальный сервер (виртуальный хостинг), с именем домена (и несколькими суб-учетными записями, каждая из которых является отдельным сайтом, также со своим собственным именем домена)

Мне было интересно, если есть способ узнать IP-адрес доменного имени. Я пытался пинговать его, но без игры в кости. Он просто дает мне IP-адрес физического сервера, на котором размещен мой виртуальный сервер, или, по крайней мере, это то, что я предполагаю, поскольку он дает мне один и тот же IP-адрес для каждого доменного имени, которое у меня есть.

Извините, хотя я не новичок в области технологий, я не знаком с этим серверным материалом.

3 ответа

Решение

Виртуальный сервер и общий хостинг, как правило, разные вещи, хотя это не влияет на мой ответ.

Один сервер (физический или виртуальный, это не имеет значения) может размещать веб-сайты для разных доменов.

Каждое доменное имя будет преобразовано в тот же IP-адрес, что и у рассматриваемого сервера.

Таким образом, www.example.com разрешается до 198.51.100.21, но также и www.example.org. Они оба размещены на одном сервере.

Поэтому, когда вы пингуете www.example.com и www.example.org, вы получаете один и тот же ответ, именно так и должно быть, если они размещены на одном сервере.

Примечание: даже если два домена разрешаются на разные IP-адреса, они потенциально могут быть размещены на одном сервере, поскольку один сервер может поддерживать несколько IP-адресов.

Вы можете посмотреть IP-адрес имен серверов / полных доменных имен / веб-сайтов, используя такие инструменты, как dig или же nslookup, Например,

nslookup www.google.com

Non-authoritative answer:
www.google.com  canonical name = www.l.google.com.
Name:   www.l.google.com
Address: 74.125.113.103
Name:   www.l.google.com
Address: 74.125.113.104
Name:   www.l.google.com
Address: 74.125.113.105
Name:   www.l.google.com
Address: 74.125.113.106
Name:   www.l.google.com
Address: 74.125.113.147
Name:   www.l.google.com
Address: 74.125.113.99

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

http://198.51.100.21/something

Обычно это невозможно на серверах, на которых размещено несколько доменов (особенно это касается поставщиков веб-хостинга).

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

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

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

dig domain.com

даст вам IP-адрес, на который указывает ваш домен (или nslookup, если вы на Windows)

Вы уверены, что "физический хост", на котором вы размещаете, не является вашим IP-адресом VPS? Похоже, что ваш провайдер может использовать какой-то хитрый NAT, если ваш сайт указывает на IP на физическом хосте, а не на вашей виртуальной машине

Самый простой способ выяснить это войти в систему с помощью SSH и запустить

ifconfig

это скажет вам IP вашего сервера

Другие вопросы по тегам