Fruitsekta.ru

Мир ПК
41 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как узнать ip адрес виртуальной машины

Как узнать IP-адрес гостевой виртуальной машины Linux KVM

Как найти IP-адрес гостевого компьютера в KVM на сервере CentOS Linux 7.x? Существуют различные способы получить IP-адрес гостевой системы KVM с хоста. Если вы используете virbr0 (мост по умолчанию), используйте команду virsh. Также возможно использовать комбинацию команды arp или проверить журнал DHCP-сервера, если вы используете выделенный DHCP-сервер через мостовую сеть, например br0, которые предоставляют доступ к физической локальной сети.

Шаги по поиску IP-адреса гостевой виртуальной машины Linux KVM

  1. Откройте приложение терминала или войдите с помощью ssh на хост-сервер
  2. Получить список сетей: virsh net-list
  3. Введите команду: virsh net-dhcp-leaseases «networkNameHere»
Давайте рассмотрим шаги поподробнее:

Способ 1. Определим IP-адреса виртуальных машин в KVM с помощью virsh

Введите следующую команду для отображения сети:

Теперь вы можете выполнить команду ssh для входа в виртуальную машину OpenBSD с именем nixcraft-openbsd с IP-адресом 192.168.122.124:

Способ 2. Получим IP-адрес гостевой системы Linux KVM с помощью domifaddr

Найдите адреса сетевых интерфейсов для домена под управлением freebsd11.1:

Объедините оба virsh и оболочки bash следующим образом:

Способ 3 — Используйте команду arp для определения IP-адресса гостевого компьютера KVM

Используйте команду virsh, чтобы узнать MAC-адрес домена:

Используйте любую из следующих команд virsh, чтобы получить ip-адрес:

Знакомство с модулем Libvirt NSS

Когда дело доходит до управления гостевыми устройствами и выполнения команд внутри них пользователи используют ssh. Ниже приведен синтаксис использования:

Но в зависимости от конфигурации виртуальной сети это не всегда возможно. Например, при использовании сети libvirt с NAT-ом помехой станет dnsmasq, который назначает IP-адреса виртуальным машинам. По умолчанию процесс dnsmasq не обрабатывает dns запросы на виртуальные машины. Пользователи исправляют эту проблему, настраивая свою сеть libvirt для назначения статических IP-адресов и указание их в /etc/hosts. Но это накладывает ненужную нагрузку на пользователей. Именно здесь удобно использовать модуль NSS.

Спасибо за уделенное время на прочтение статьи!

Если возникли вопросы, задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University.

Настройка локальной сети между компьютером и виртуальной машиной virtualbox

Настройка локальной сети между компьютером и виртуальной машиной virtualbox является довольно легкой, просто нужно знать некоторые ньюансы, о которых я и расскажу в этой статье.

Первый шаг — настройка сети в virtualbox. Виртуальная машина должна быть выключена. Идем в «Настройки -> Сеть», выбираем неиспользуемый адаптер, включаем его и выбираем тип подключения — «виртуальный адаптер хоста»:

Далее загружаем виртуальную машину и проверяем сеть.

В windows сеть можно проверить командой «ipconfig»:

На ОС Linux из терминала сеть можно проверить так:

В ответ вы должны увидеть работающие сетевые интерфейсы:

По ip можно догадаться, какой интерфейс отвечает за организацию локальной сети между компьютером и виртуальной машиной, по умолчанию (если вы сами не настраивали ip в virtualbox) такой ip должен выглядеть так: 192.168.56.* (вместо * обычно бывает 101 или 102 и т. д.).

Этот ip и нужно использовать для доступа к виртуальной машине.

По умолчанию ip выдается dhcp сервером virtualbox. Для удобства можно задать статический ip адрес в самой виртуальной машине. Например в windows это делается редактированием свойств сети. В интерфейсе linux все аналогично, а вот как это сделать в терминале, без графической оболочки, будет показано ниже, на примере добавления нового сетевого интерфейса в ubuntu server.

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

Читать еще:  Как заблокировать ссылку в браузере

Сначала нужно найти название сетевого интерфейса, который нам нужен. В терминале набираем:

В результате вы получите список всех сетевых интерфейсов.

Находим нужный интерфейс, он чаще всего последний. Возможно скорее всего это либо eth1 (для ubuntu server 14.04), либо enp0s8 (для ubuntu server 16.04), все зависит от количества подключенных сетевых адаптеров к виртуальной машине.

Далее редактируем файл /etc/network/interfaces

Файл /etc/network/interfaces для ubuntu server 14.04:

В конец файла добавляем строку (для ip, задаваемого динамически):

Для статического ip:

Вместо eth1 может быть другое название интерфейса, в зависимости от вашей конфигурации.

После этого нужно перезагрузить виртуальную машину и снова набрать команду:

В списке должен появиться интерфейс eth1, или тот, который прописали вы.

Настройка файла /etc/network/interfaces для ubuntu server 16.04:

Здесь интерфейс называется enp0s3 вместо eth0. Согласно данным, полученным командой «ip a», в моем случае в конец файла нужно добавить:

После внесения изменений так же необходимо перезапустить виртуальную машину, либо можно перезапустить только службу networking:

На ubuntu server 14.04 у меня она не всегда перезапускается, просто продолжает работать, с ubuntu 16.04 в этом плане все впорядке, но для полной уверенности я считаю что лучше все таки перезапустить виртуальную машину.

После перезапуска машины и набора в терминале команды ifconfig в полученном списке сетевых интерфейсов должен появится интерфейс enp0s8.

Что делать, если сетевой интерфейс так и не заработал?

Тут два основных варианта: либо вы указали неправильный интерфейс в файле /etc/network/interfaces — в таком случае еще раз внимательно посмотрите список всех доступных сетевых интерфейсов командой «ip a» и выберите нужный. Либо виртуальная ОС вообще не видит сетевой адаптер. В этом случае скорее всего в ОС нет подходящих драйверов для этого адаптера. Эту проблему можно решить сменой типа адаптера, например на «паравиртуальная сеть (virtio-net)»:

Можете поэксперементировать с типом адаптера для достижения нужного результата.

ssh-доступ к виртуальной машине в virtualbox

После успешной настройки локальной сети между компьютером и виртуальной машиной можно к ней подключиться, например по ssh. Для этого набираем ip адрес, про который я писал вначале статьи, в ssh клиенте и радуемся успешному подключению)

VirtualBox статичный IP

Захотелось подключаться к VM (виртуальной машине) по статичному IP, т.е. хочу подключаться по HTTP и по SSH тоже 🙂 сказано — сделано.

1. Нам нужен адаптер (сетевуха) с постоянным IP-адресом, поэтому настоим ее:

2. По умолчанию, адаптер vboxnet0 динамически получает IP адрес во время сессии подключения от DHCP-сервера. Для моего виртуального web-сервера WordPress необходимо, чтобы он имел статический IP-адрес. Поэтому на вкладке «DHCP сервер» я убрал галочку с надписи «Включить сервер». Таким образом, DHCP-сервер у меня отключен.

3. Теперь захожу в настройки своей VM и на вкладке Адаптер 2 указываю:

Нажимаю ок и запускаю VM (никакие порты пробрасывать не нужно).

4. VM загрузилась, логинюсь в виртуалке под рутом и выполняю в виртуалке команду:

по идее еще нужно выполнить команду:

но команда выдает у меня ошибку (на которую можно забить): netmask: unable to parse «up»: Resource temporarily unavailable

все, теперь можно подключиться к нашей VM по SSH или открыть в браузере http://192.168.56.101/ и если на Вашей VM установлен Apache, то убедитесь что он работает.

Наверное у вас возник вопрос, как так, мы создали интерфейс 192.168.56.1 а подключаемся к 192.168.56.101, не переживайте, это нормально.

5. Увы, настройки описанные в пункте 4 являются временными, и чтобы все работало даже после перезагрузки VM, нужно правильно скофигурировать сетевые интерфейсы. Для Debian файл /etc/network/interfaces у меня получился такой файл:

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

# The loopback network interface
auto lo
iface lo inet loopback

Читать еще:  Аккаунт в яндекс браузере

# The primary network interface
# allow-hotplug eth0
# iface eth0 inet dhcp
auto eth0
iface eth0 inet dhcp

auto eth1
iface eth1 inet static
address 192.168.56.101
netmask 255.255.255.0
network 192.168.56.0
broadcast 192.168.56.255

* зеленым выделил то, что добавил

Для CentOS 6.5 в файле /etc/sysconfig/network-scripts/ifcfg-eth у меня получился такой конфиг:

DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes
TYPE=Ethernet
IPV6INIT=no
USERCTL=no

создайте файл /etc/sysconfig/network-scripts/ifcfg-eth 1 с такими настройками:

Теперь перезагрузите виртуалку или выполните команду:

Этого будет достаточно, чтобы подключаться к своей виртуалке.

С Debian доступ во внешку появляется сразу, но, если Вам понадобится доступ из виртуалки CentOS во внешку, то в виртуалке выполните команду:

Если что, в виртуалке проверяйте настройки командой ifconfig Вы должны добиться ситуации, когда у Вас будет приблизительно такая ситуация:

Настройка сети VirtualBox

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

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

Виды сетевых адаптеров VirtualBox

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

  • NAT — этот способ используется по умолчанию. Для каждой машины создается отдельная внутренняя локальная сеть, в которой машина получает ip 10.10.0.1. Машина может связаться с интернетом, используя технологию NAT, и вы можете обратиться к машине, используя проброс портов VirtualBox, но если у вас будет две виртуальные машины, то вы уже не сможете между ними так взаимодействовать. И если из основной системы к гостевой можно обратиться, то к основной ни гостевой уже никак не получится;
  • Виртуальный адаптер хоста — создается виртуальный сетевой адаптер, к которому можно подключить несколько виртуальных машин, тем самым объединив их в локальную сеть. Доступа к интернету нет, но зато машины находятся в одной сети и каждая имеет свой ip адрес, теперь они могут взаимодействовать между собой. Основная система тоже доступна по ip 192.168.56.1. Машины доступны не только между собой, но и из основной системы;
  • Сетевой мост — при таком подключении виртуальная машина становится полноценным членом локальной сети, к которой подключена основная система. Машина использует сетевой интерфейс чтобы получить адрес у роутера и становится доступна для других устройств, как и основной компьютер по своему ip адресу.
  • Внутренняя сеть — почти то же самое, что и виртуальный адаптер хоста, только без возможности доступа к виртуальной сети из основной системы, доступа к интернету нет.
  • Универсальный драйвер — позволяет использовать драйвер из расширений VirtualBox для связи между машинами, расположенными на разных физических хостах.

Теперь рассмотрим каждый вариант настройки более подробно.

Настройка сети Virtualbox

1. Настройка сети NAT

Здесь почти нет о чем говорить. Получение доступа к сети через NAT включено по умолчанию. Проброс портов я рассматривал в отдельной статье. Но если вы раньше отключали сетевые адаптеры, то чтобы включить NAT обратно достаточно открыть настройки нужной машины:

Перейти на вкладку «Сеть»:

Выбрать один из адаптеров. К виртуальной машине можно подключить несколько адаптеров и это очень удобно, так как вы можете комбинировать вместе адаптер виртуального хоста и NAT чтобы получить преимущества обоих режимов. Дальше вам нужно выбрать пункт «NAT» в списке «Тип подключения».

Читать еще:  Цветоксин ip адрес

На вкладке «Дополнительно» вы можете настроить марку устройства адаптера и MAC адрес:

Если вы собираетесь устанавливать туда в Windows, то лучше будет работать Intel PRO/1000 MT Desktop, а для Linux можно оставить AMD PCNet FAST III, так как он поддерживается всеми операционными системами.

2. Настройка сети NAT

В версии Virtualbox, начиная с 4.3 была добавлена поддержка сетей NAT, это работает очень похоже на виртуальный адаптер хоста, все машины, подключенные к одной сети могут получить доступ друг к другу, а доступ в интернет выполняется через NAT, но основная система доступа к гостевым не имеет. Чтобы настроить такое подключение нужно сначала создать сеть NAT. Для этого откройте «Файл» -> «Настройки», «Сеть». Здесь перейдите на вкладку «Сети NAT». Дальше нажмите кнопку с зеленым плюсом, чтобы создать новую сеть:

Нажмите «Ok» и закройте это окно. Дальше откройте настройки для виртуальной машины, перейдите на вкладку «Сеть» -> «Адаптер 1»:

Выберите «Тип подключения»«Сеть NAT», а «Имя» — только что созданную сеть.

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

3. Настройка адаптера виртуального хоста

Теперь задача немного интереснее — нам нужна локальная сеть virtualbox между несколькими виртуальными машинами и хостом. Для того чтобы все это заработало в Linux, нам нужно чтобы были загружены модули ядра vboxnetadp и vboxnetflt:

lsmod | grep vbox

Возможно, для их правильной работы вам придется установить пакет net-tools. Дальше нужно создать сам виртуальный адаптер. Для этого откройте меню «Файл», затем «Настройки» -> «Сеть». Затем нажмите кнопку с зеленым значком плюс, а затем «Ok», все параметры можно оставить по умолчанию. В VirtualBox 5.2 и выше интерфейс был изменен. Теперь вам нужно открыть меню «Инструменты» -> «Менеджер сетей хоста»:

Нажмите кнопку «Создать», затем, в появившемся адаптере, напротив пункта DHCP установите галочку «Включен».

Теперь вернитесь к списку виртуальных машин, зайдите в настройки машины, «Сеть»:

Выберите «Тип подключения»«Виртуальный адаптер хоста», а имя vboxnet0, тот, который вы создали раньше.

Для всех машин, которые вы хотите объединить в одну сеть нужно выбирать один и тот же адаптер хоста. Если вы захотите добавить машинам также доступ в интернет, просто перейдите на вкладку «Адаптер 2», включите его и настройте NAT, как описано в первом пункте.

4. Настройка сетевого моста VirtualBox

Режим сетевого моста позволяет виртуальной машине выступать в роли реального сетевого устройства с отдельным ip адресом. Чтобы это настроить откройте это же меню — настойки виртуальной машины, затем «Сеть». Здесь выберите «Тип подключения»«Сетевой мост»:

В поле «Имя» вам необходимо выбрать сетевой интерфейс, который будет использоваться для связи с внешним миром. Минус такого способа в том, что внешние компьютеры смогут получить доступ к виртуальной машине, а это не очень хорошо с точки зрения безопасности.

5. Внутренняя сеть VirtualBox

Режим внутренняя сеть Virtualbox похож на «Виртуальный адаптер хоста», за тем лишь исключением, что из хостовой системы доступа к гостевым не будет, и настроить все немного проще. Достаточно выбрать «Тип подключения»«внутренняя сеть», а затем просто выбрать нужную сеть в поле «Имя», или создать новую, просто изменив имя текущей.

Как видите, существует тип подключения NAT — где только интернет, Мост — где машина становится членом внешней сети, а все остальные — это настройка виртуальной сети virtualbox, где машины могут видеть друг друга.

Выводы

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

Ссылка на основную публикацию
Adblock
detector