Как включить IPv4 на сервере Ubuntu 16.04.1 LTS

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

У меня на хосте Ubuntu 16.04.1 LTS работает VirtualBox. Я создал новую виртуальную машину и установил тип сети на “Сетевой мост”. Затем я установил 16.04.1 LTS на гостевой системе, но не могу подключиться к любому внешнему IPv4-адресу.

Когда я запускаю ‘ifconfig’, я вижу только свой IPv6-адрес.

$ ifconfig enp0s3
enp0s3    Link encap:Ethernet  HWaddr xx:xx:xx:xx:xx:xx  
          inet6 addr: fd00:xx:xx:xx:xx:xx:xx:xx/64 Scope:Global
          inet6 addr: fe80::xx:xx:xx:xx/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:933 errors:0 dropped:0 overruns:0 frame:0
          TX packets:751 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:101012 (101.0 KB)  TX bytes:144480 (144.4 KB)

Я могу подключиться по SSH к гостевой системе с хоста, используя IPv6-адрес. Я нашел этот вопрос, но у меня не установлен сетевой менеджер (и я не могу его установить, пока IPv4 не будет работать), а единственная другая команда ‘sudo ip link set enp0s3 up’ не помогла. Также в вопросе не упоминается WiFi, но ответы, похоже, предполагают, что это так, а я использую проводные соединения вместо WiFi.

Мой файл /etc/network/interfaces довольно общий, но комментарии указывают на то, что это интерфейс IPv6. Тем не менее, я не вижу, почему это так; все параметры верные для IPv4.

$ cat /etc/network/interfaces
# Этот файл описывает сетевые интерфейсы, доступные в вашей системе
# и как их активировать. Для получения дополнительной информации см. interfaces(5).

source /etc/network/interfaces.d/*

# Циклический сетевой интерфейс
auto lo
iface lo inet loopback

# Основной сетевой интерфейс
# Это самонастраивающийся интерфейс IPv6
auto enp0s3
iface enp0s3 inet dhcp

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

$ systemctl status networking.service
● networking.service - Поднять сетевые интерфейсы
   Loaded: загружен (/lib/systemd/system/networking.service; включен; предустановленная настройка: включена)
  Drop-In: /run/systemd/generator/networking.service.d
           └─50-insserv.conf-$network.conf
   Active: активен (вышел) с ср 2017-06-14 09:33:00 EDT; 55 мин. назад
     Docs: man:interfaces(5)
  Process: 2335 ExecStart=/sbin/ifup -a --read-environment (код=вышел, статус=0/УСПЕХ)
  Process: 1947 ExecStartPre=/bin/sh -c [ "$CONFIGURE_INTERFACES" != "no" ] && [ -n "$(ifquery --read-environment --list --exclude=
 Main PID: 2335 (код=вышел, статус=0/УСПЕХ)
    Задачи: 0
   Память: 0B
      CPU: 0
   CGroup: /system.slice/networking.service

Jun 14 09:27:58 chris-ubuntu systemd[1]: Начинаю поднимать сетевые интерфейсы...
Jun 14 09:28:01 chris-ubuntu ifup[2335]: /sbin/ifup: ожидание блокировки на /run/network/ifstate.enp0s3
Jun 14 09:33:00 chris-ubuntu systemd[1]: Успешно запустил поднятие сетевых интерфейсов.

Когда я вручную запускаю dhclient, он зависает. Syslog содержит следующие записи:

Jun 14 10:39:13 chris-ubuntu dhclient[3061]: DHCPDISCOVER на enp0s3 к 255.255.255.255 порт 67 интервал 10 (xid=0x4dfcbf2b)
Jun 14 10:39:16 chris-ubuntu dhclient[2377]: DHCPDISCOVER на enp0s3 к 255.255.255.255 порт 67 интервал 4 (xid=0x25d1c331)
Jun 14 10:39:20 chris-ubuntu dhclient[2377]: Нет DHCPOFFERS.
Jun 14 10:39:20 chris-ubuntu dhclient[2377]: Нет рабочих лизингов в постоянной базе данных - сплю.
Jun 14 10:39:23 chris-ubuntu dhclient[3061]: DHCPDISCOVER на enp0s3 к 255.255.255.255 порт 67 интервал 15 (xid=0x4dfcbf2b)

Это кажется странным, поскольку хост VirtualBox выступает в роли DHCP-сервера, так что он должен отвечать.

Вам не нужен IPv4. Конфигурация выше немного странная. (нет публичных IPv6-адресов).
Мой первый вопрос к администратору сети был бы:
Вы предоставляете веб-прокси? Тогда вы можете изменить настройки прокси, включая доступ к хостам только IPv4.
Но я предпочел бы глобальныеUnicast адреса IPv6. В таком случае DNS (DNS64/NAT64) решает проблему. Прокси также имел бы похожий эффект.

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

Чтобы включить IPv4 на сервере Ubuntu 16.04.1 LTS в среде VirtualBox, вам нужно будет выполнить несколько шагов для настройки сети. Вы упомянули, что используете "Bridged Adapter" в настройках вашей виртуальной машины, но сталкиваетесь с проблемами подключения к внешним IPv4-адресам и не получаете IP-адресов IPv4. Ваша конфигурация interfaces также может требовать некоторой корректировки.

Шаг 1: Проверка конфигурации сети в VirtualBox

Убедитесь, что настройки "Bridged Adapter" в VirtualBox настроены правильно:

  1. Выбор сети: Убедитесь, что вы выбрали правильный сетевой интерфейс хоста (например, ваш Ethernet или Wi-Fi адаптер) в меню настроек сети виртуальной машины.
  2. Адаптер включен: Проверьте, что адаптер включен. Он должен быть активирован в настройках виртуальной машины.

Шаг 2: Настройка конфигурации сети

Ваш файл /etc/network/interfaces выглядит корректно по структуре, но давайте убедимся, что он действительно отвечает вашим требованиям. Откройте файл с помощью текстового редактора, например, nano:

sudo nano /etc/network/interfaces

Убедитесь, что конфигурация выглядит следующим образом:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto enp0s3
iface enp0s3 inet dhcp

Шаг 3: Перезапуск сетевых интерфейсов

После внесения изменений вам необходимо перезапустить сетевые службы. Выполните команду:

sudo systemctl restart networking

Или, если требуется, попробуйте отдельные команды для поднятия интерфейса:

sudo ifdown enp0s3 && sudo ifup enp0s3

Шаг 4: Проверка состояния DHCP

Если проблема продолжает существовать, проверьте, может ли ваш интерфейс получать DHCP. Запустите dhclient вручную:

sudo dhclient enp0s3

Следите за выводом команды и логами в /var/log/syslog. Если dhclient все еще не получает ответа, это может указывать на проблемы с настройками DHCP на хосте VirtualBox или сети.

Шаг 5: Устранение неполадок

  1. Проверка подключения хоста к сети: Убедитесь, что хост имеет доступ в интернет и предоставляет DHCP.
  2. Обновление VirtualBox: Убедитесь, что у вас установлена последняя версия VirtualBox, так как в более новых версиях могут быть исправлены проблемы с сетью.
  3. Firewall и безопасность: Убедитесь, что нет блокировок на уровне брандмауэра как на хосте, так и на виртуальной машине.

Заключение

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

Ожидаем, что данная информация поможет вам наладить работу IPv4 на вашем сервере Ubuntu в VirtualBox. Если возникнут дополнительные вопросы, не стесняйтесь задавать!

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

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