Не удается отправить пинг на операционную систему сервера VirtualBox.

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

Я использую клиент Ubuntu 13.10 и установил сервер 12.04 с помощью VirtualBox. Я новый пользователь Linux, и это мой первый сервер, который я пытаюсь создать для экспериментов. Я пытаюсь пинговать сервер с клиента, но продолжаю получать это сообщение, когда завершаю процесс:

PING 10.0.2.15 (10.0.2.15) 56(84) байт данных.
^C
--- статистика пинга 10.0.2.15 ---
9 пакетов передано, 0 получено, 100% потеря пакетов, время 7999мс

Но когда я пингую сервер с его собственного терминала:

PING 10.0.2.15 (10.0.2.15) 56(84) байт данных.
64 байт от 10.0.2.15: icmp_req=1 ttl=64 время=0.176 мс
64 байт от 10.0.2.15: icmp_req=2 ttl=64 время=0.049 мс
64 байт от 10.0.2.15: icmp_req=3 ttl=64 время=0.049 мс
64 байт от 10.0.2.15: icmp_req=4 ttl=64 время=0.049 мс
64 байт от 10.0.2.15: icmp_req=5 ttl=64 время=0.049 мс
64 байт от 10.0.2.15: icmp_req=6 ttl=64 время=0.049 мс
64 байт от 10.0.2.15: icmp_req=7 ttl=64 время=0.049 мс
^C
--- статистика пинга 10.0.2.15 ---
7 пакетов передано, 7 получено, 0% потеря пакетов, время 6008мс

Я искал в интернете возможные подобные проблемы и нашел, что, возможно, файрвол блокирует запросы. Я отключил файрвол и установил все запросы на ACCEPT.

Цепочка INPUT (политика ACCEPT)
цель      прот опция источник              назначение         

Цепочка FORWARD (политика ACCEPT)
цель      прот опция источник              назначение         

Цепочка OUTPUT (политика ACCEPT)
цель      прот опция источник              назначение

Я также использовал sudo ufw disable, но все равно не могу пинговать свой сервер.

Применяя traceroute -n 10.0.2.15, я получаю следующий ответ:

traceroute до 10.0.2.15 (10.0.2.15), максимум 30 скачков, 60 байт в пакете
1  193.11.184.1  1.622 мс  1.597 мс  2.477 мс
2  194.47.128.72  3.308 мс  3.314 мс  3.310 мс
3  194.47.128.237  3.816 мс  3.822 мс  4.157 мс
4  * * *
5  * * *
6  * * *
7  * * *
8  * * *
9  * * *
10  * * *
11  * * *
12  * * * 
13  * * *
14  * * *
15  * * *
16  * * *
17  * * *
18  * * *
19  * * *
20  * * *
21  * * *
22  * * *
23  * * *
24  * * *
25  * * *
26  * * *
27  * * *
28  * * *
29  * * *
30  * * *

Я знаю, что, возможно, это небольшая конфигурация, которую мне нужно настроить, но так как я не знаком с этой областью, я полностью потерян.

Любые предложения были бы очень полезны.

Похоже, что вы используете неправильный сетевой режим для VirtualBox. Как правило, гостевая система не может быть достигнута “извне” при использовании NAT (и хост это тоже “вне”).

Вы должны использовать либо “только хост”, если хотите, чтобы ваш гость был полностью скрыт от внешнего мира, либо “режим моста”, чтобы он был частью внешней сети.

Измените подключенный сетевой режим на ‘Bridge Adapter’.

В VirtualBox, перейдите в настройки–>Сеть.
Измените подключение на ‘Bridge Adapter’

Для получения дополнительной информации https://www.virtualbox.org/manual/ch06.html

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

Выберите первый сетевой адаптер NAT и в разделе “включение перенаправления портов” установите следующие правила.

Имя   Протокол   IP Хоста   Порт Хоста   IP Гостя   Порт Гостя
SSH     TCP         127.0.0.1   2215        10.0.2.15   22
WebUI   TCP         127.0.0.1   8015        10.0.2.15   80

Используя указанную конфигурацию в VirtualBox, мы можем использовать наш локальный IP-адрес системы, например: 127.0.0.1 с определенным портом для подключения к нашей гостевой машине как к пункту назначения.

Например, если гость – это виртуализированная машина Mikrotik и имеет две внутренние службы: webUI: 80 и SSH: 22, указанные настройки будут работать корректно.

Подключитесь от Хоста с помощью

ssh -p 2215 [email protected]

И откройте WebUI в веб-браузере по адресу 127.0.0.1:8015


Перенаправление портов


Или еще лучше решение — создать новую сеть NAT внутри файлы: инструменты: сетевой менеджер и определить необходимое правило перенаправления портов в ней.

Таким образом, наши гостевые машины смогут использовать эту новую сеть.

  • Так как они существуют в одной сети, все гостевые машины в VirtualBox могут напрямую подключаться друг к другу.
  • Так как у нас есть NAT-сеть, все гости могут подключаться к Интернету через хост-машину.
  • Правила перенаправления портов позволяют хост-машине подключаться и использовать гостевую с помощью LocalIP:Port.

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

Чтобы решить проблему с невозможностью пинга вашей серверной ОС, установленной через VirtualBox, сначала необходимо понять причины и предложить решения.

Анализ проблемы

  1. Сетевой режим NAT по умолчанию: Ваш сервер VirtualBox с IP-адресом 10.0.2.15 использует сетевой режим NAT. Этот режим позволяет виртуальной машине (VM) выходить в интернет, но не позволяет другим устройствам из "внешней" сети, включая хост-компьютер, получить доступ к самой виртуальной машине. Это объясняет, почему при пинге с хостовой машины вы получаете 100% потерю пакетов.

  2. Успешный пинг с самой VM: Когда вы пингуете с терминала самой виртуальной машины, вы наблюдаете успешную передачу пакетов, поскольку связь происходит внутри одного и того же интерфейса.

  3. Трассировка маршрута (Traceroute): Длинный список * * * говорит об обрыве маршрута, что подтверждает невозможность дотянуться до VM из хоста.

Рекомендации по решению

Для обеспечения связи между хостом и виртуальной машиной вы можете изменить сетевую конфигурацию. Рассмотрите следующие опции:

Изменение сетевого режима на "Мостовой адаптер"

  1. Что это дает?: В режиме "Мостовой адаптер" ваша виртуальная машина становится полноправным участником вашей физической сети. Она получает IP-адрес из того же диапазона, что и хост.

  2. Как настроить:

    • Откройте VirtualBox.
    • Перейдите в "Настройки" вашей VM.
    • Выберите вкладку "Сеть".
    • Измените "Тип соединения" на "Мостовой адаптер".
    • Выберите сетевой адаптер вашего компьютера (например, Ethernet или Wi-Fi).

Использование "Host-Only Adapter"

  1. Что это дает?: Позволяет хосту и виртуальным машинам взаимодействовать друг с другом без доступа к интернету.

  2. Как настроить:

    • В VirtualBox выберите "Настройки" -> "Сеть".
    • Установите "Host-Only Adapter".

Настройка перенаправления портов для NAT

Если вы хотите оставить NAT, рассмотрите настройку переадресации портов:

  1. Что это дает?: Позволяет хосту получать доступ к услугам виртуальной машины через определенные порты.

  2. Как настроить:

    • Откройте "Настройки" вашей VM.
    • На вкладке "Сеть" выберите адаптер NAT.
    • В разделе "Дополнительно" найдите "Перенаправление портов".
    • Добавьте правила, например, для SSH и Web:
      • SSH: Протокол TCP, хост-порт 2215, гостевой порт 22.
      • WebUI: Протокол TCP, хост-порт 8015, гостевой порт 80.

Заключение

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

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

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