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 вашего сервера