how to know the IP address of a VM
Hello,
i have installed a VM which is build on a debian-x86.7-1 iso
the VM is running and i could enter the console SPICE to run android.
as i would like to install HA-Bridge inside a VM , i want to enter a SSL session on that VM , where coul I find the IP address ?
surely a noob question ?
dcsapak
Proxmox Staff Member
- Apr 12, 2019
- #2
Best regards,
Dominik
Do you already have a Commercial Support Subscription? — If not, Buy now and read the documentation
Romsch
Active Member
- Apr 12, 2019
- #3
jluc2808
New Member
- Apr 12, 2019
- #4
jluc2808
New Member
- Apr 12, 2019
- #5
thanks for this reply , the pb is , when i start the VM, i enter inside android display, the only app i could use is terminal-emulator adi have setted super-privileged , when i want to use
— apt-get i get unknow command
— if i make an su root , idem
— if i make su -s apt-get the response not permitted
sorry again if this is obvious
Romsch
Active Member
- Apr 12, 2019
- #6
#
If you have a graphical installation with debian, you should open a terminal to get the command line tool. And there you enter "ip a" and it should show you the ip configuration.
You can also install at the terminal the qemu-guest-agent inside the vm, this is necessary to "passthrough" the ip adress to the proxmox gui — this you install with "apt-get install qemu-guest-agent" also in the vm at the terminal. Dont forget to activate qemu guest agent at the vm — klick in the proxmox gui on the vm, then options and activate qemu agent. Shutdown vm and start it new — the ip should be shown at the proxmox gui. Do not reboot, that takes no effect of changing options of a vm.
best regards, roman
jluc2808
New Member
- Apr 12, 2019
- #7
i got the IP form the terminal-emulator with ip-a ==> 192.168.1.52
but i ‘m unable to install something (sudo apt-get install xx) or to connect with SSL
so i decide to follow your recommandation
when i want to install qemu-guest-agent i get an error (on the proxmox system)
Записки IT специалиста
Настройка сетевой конфигурации системы виртуализации — одна из самых главных задач, она же вызывает наибольшие затруднения у начинающих. Поэтому начиная цикл статей о Proxmox мы сразу решили подробно разобрать этот вопрос. Тем более, что официальная документация довольно скупо освещает эту тему и может сложиться впечатление, что Proxmox ограничен в сетевых возможностях по сравнению с другими гипервизорами. Однако это не так, скорее даже наоборот, потому что перед нами открытое ПО и мы можем конфигурировать его именно так, как считаем нужным, даже если этих возможностей не было из коробки.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Если обратиться к официальной документации, то там будет рассказано о двух основных сетевых конфигурациях: с использованием моста и маршрутизации. Приведенные примеры покрывают основные сценарии использования и не углубляются в подробности, но различные комбинации настроек для этих вариантов позволяют реализовывать самые разнообразные сетевые конфигурации. В данном материале мы рассмотрим базовые возможности Proxmox, не касаясь объединения сетевых адаптеров или использования Open vSwitch, потому как это отдельные темы, лежащие за рамками базовой настройки.
Все сетевые параметры настраиваются на уровне ноды, для этого перейдите на нужный сервер и раскройте Система — Сеть. Ниже показан пример нашего тестового сервера, где реализованы все те сетевые конфигурации, о которых мы будем говорить ниже.
Внешняя сеть
Сетевая конфигурация, создаваемая по умолчанию, когда и виртуальные машины, и гипервизор получают прозрачный доступ к вешней сети, подключенной через физический сетевой адаптер. Она же самая часто используемая, так как позволяет организовать простой доступ к виртуальным машинам, как к самым обычным узлам локальной сети.

В основе всех виртуальных сетей в Proxmoх лежит сетевой мост (Linux Bridge) — vmbr, допускается создание до 4095 таких устройств. Сетевой мост может включать в себя как физические, так и виртуальные адаптеры, выполняя для них роль неуправляемого коммутатора. Физическая сетевая карта, подключенная к мосту, не имеет настроек и используется как физический Ehternet-интерфейс для данного виртуального коммутатора. Все сетевые настройки производятся внутри виртуальных машин, которые через мост и физический адаптер прозрачно попадают во внешнюю сеть.
Присвоение интерфейсу моста IP-адреса фактически подключает к виртуальному коммутатору сам хост, т.е. гипервизор, который также прозрачно попадет во внешнюю сеть. Если в Hyper-V для подключения гипервизора к сети на хосте создавался еще один виртуальный сетевой адаптер, то в Proxmox для этого следует назначить IP-адрес интерфейсу моста. Ниже показан пример такой настройки:

В настройках указывается адрес и шлюз, опция автозапуска и привязанный к мосту физический адаптер. Также мы советуем в поле комментарий оставлять осмысленное описание сетевого устройства, чтобы всегда было понятно, что это и зачем.
Фактически это сетевые настройки самого гипервизора. Обратите внимание, что сервера DNS указываются отдельно, в Система — DNS:
![]()
Для того, чтобы подключить к такой сети виртуальную машину в настройках ее сетевого адаптера следует выбрать нужный мост (виртуальный коммутатор):
![]()
Сетевые настройки виртуальной машины либо задаются вручную, либо могут быть получены от DHCP-сервера внешней сети.
Внешняя изолированная сеть
Данная конфигурация требует минимум двух сетевых адаптеров и предусматривает изоляцию гипервизора от внешней сети и виртуальных машин. Это может быть полезно при виртуализации пограничных устройства, например, шлюза. Либо когда виртуальные машины арендуются третьими лицами, либо находятся вне доверенной сети и доступ к гипервизору оттуда должен быть закрыт.

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

Для доступа к самому гипервизору может быть использован либо другой сетевой адаптер (как показано на нашей схеме), так и созданная по умолчанию внешняя сеть с сетевым мостом. Оба варианта имеют право на жизнь, а во втором случае вы сможете также подключать виртуальные машины к разным виртуальным сетям. Поэтому не следует рассматривать приведенную нами схему как догму, это только один из возможных вариантов и выбран нами в целях упрощения схемы.
Для примера мы подключили к такой сети виртуальную машину, которая тут же получила по DHCP адрес из внешней сети, никак не связанной с гипервизором.
Внутренняя сеть с NAT
Применяется в тех случаях, когда нужно изолировать виртуальные машины в собственной сети, но в тоже время обеспечить им доступ в интернет, а также доступ из внешней сети к некоторым из них (или отдельным сетевым службам). Широко используется в лабораторных сценариях, а также при работе с контейнерами.

Обратите внимание, данная конфигурация не может быть изолирована от хоста, так как именно хост предоставляет ей службу трансляции сетевых адресов (NAT) и выступает шлюзом для виртуальных машин. Для настройки такой сети создайте новый сетевой мост без привязки к физическому адаптеру и назначьте ему IP-адрес из произвольной сети, отличной от внешней.

Все изменения сетевой конфигурации требуют перезагрузки узла гипервизора, поэтому, чтобы не перезагружать узел дважды перейдем в консоль сервера и перейдем в директорию /etc/network, в котором будут присутствовать файлы interfaces — с текущей сетевой конфигурацией и interfaces.new — с новой, которая вступит в силу после перезагрузки.
![]()
Откроем именно interfaces.new и внесем в конец следующие строки:
В качестве сети, в нашем случае 192.168.34.0/24, укажите выбранную вами сеть, а вместо интерфейса ens33 укажите тот сетевой интерфейс, который смотрит во внешнюю сеть с доступом в интернет. Если вы используете сетевую конфигурацию по умолчанию, то это будет не физический адаптер, а первый созданный мост vmbr0, как на скриншоте ниже:
![]()
Перезагрузим узел и назначим виртуальной машине или контейнеру созданную сеть (vmbr1), также выдадим ей адрес из этой сети, а шлюзом укажем адрес моста.

Не забудьте указать доступный адрес DNS-сервера и убедитесь, что виртуальная машина имеет выход в интернет через NAT.
Внутренняя сеть
Позволяет изолировать виртуальные машины от внешней сети и не предоставляет им доступ в интернет, используется в основном в лабораторных целях, когда в качестве шлюза будет выступать одна из виртуальных машин и обычно сочетается на хосте с одной из сетей, имеющих выход в интернет.

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

Для такой сети просто создайте еще один сетевой мост без каких-либо настроек:
![]()
Подобные сети также обычно используются не самостоятельно, а в сочетании с иными типами сетей на хосте.
Организуем службы DNS и DHCP для внутренних сетей
Как вы уже могли заметить все адреса для виртуальных машин во внутренних сетях мы назначали вручную. Но можно это делать автоматически, сняв с себя еще одну заботу, это удобно, особенно в лабораторных и тестовых средах, где виртуальных машин много и назначать им адреса вручную может быть достаточно затруднительно.
В нашем примере мы организуем службы DNS и DHCP для внутренней сети с NAT и просто внутренней сети. Для первой мы должны будет выдавать адрес, шлюз и сервера DNS, для второй просто адрес. Данная конфигурация не является реальной, а создана нами исключительно в учебных целях.
В качестве серверов DNS и DHCP мы будем использовать уже известный нашим читателям пакет dnsmasq, который является простым и легким кеширующим DNS и DHCP-сервером. Установим его:
Затем перейдем в конфигурационный файл /etc/dnsmasq.conf и найдем и приведем к следующему виду параметры:
Здесь мы явно указали интерфейсы и адреса, на которых будет работать наш сервер. С одной стороны, присутствует некоторая избыточность, но лучше так, чем потом, при изменении сетевых настроек в вашей сети неожиданно появится неавторизованный DHCP-сервер.
Затем укажем выдаваемые клиентам диапазоны адресов:
Обратите внимание на формат записи, перед каждой настройкой мы указываем сетевой интерфейс к которой она применяется.
Аналогичным образом зададим нужные DHCP-опции, в нашем случае это Option 3 и 6 (шлюз и DNS-сервер).
Если настройки для моста vmbr1 не вызывают вопросов, то настройки для второй сети следует пояснить. Так как нам нужно передавать ей только IP-адрес и маску, без шлюза и серверов имен, то соответствующие опции следует передать пустыми, иначе будут переданы опции по умолчанию, где в качестве этих узлов будет передан адрес сервера.
Сохраняем конфигурационный файл и перезапускаем службу
После чего в виртуальных машинах, подключенных к внутренним сетям, мы можем установить настройки для получения адреса через DHCP и убедиться, что все работает как надо.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Помогла статья? Поддержи автора и новые статьи будут выходить чаще:
![]()
Или подпишись на наш Телеграм-канал: ![]()
How to Display the IP Address on VM in Proxmox?

After we install the Proxmox application on our server and create many virtual machines in Proxmox, we may often use the GUI to set up Proxmox. But unfortunately, as far as I know, there are some items that cannot be displayed on the GUI but can only be displayed on the CLI, one of which is showing the IP address on the VM.
Problem
How to display the IP address on VM in Proxmox?
Solution
On Proxmox, there are several CLI commands that are used to view the VM description, for example, the below command:
which is used to display all VMs and their IDs in proxmox, as shown in the image below:

The qm list command
and also the command:
which is used to display the configuration of a VM in proxmox, as shown in the image below:

The qm command command
However, unfortunately, these 2 commands cannot display the IP address that is on your VM. I found out on the internet that to display the IP address of your VM, install the qemu-guest-agent package on our VM. But before installing the package on the VM, install the packages needed on proxmox:
After that, create a bash script as below (I use the IP 192.168.56.xx, please change the IP according to your IP):
Then, if you haven’t created a VM in proxmox, then you have to enable the qemu-guest-agent item in VMID > Options, then change it from Disabled to Enabled:

Change qemu guest agent on proxmox
After that, you can install the OS of your choice. If you finish installing OS, then you have to install the qemu-guest-agent package. If your VM uses Windows OS, then download the package at this link. But if you use Linux on your VM, then to install this package, type the following command:
CentOS/AlmaLinux/RockyLinux
Ubuntu/Debian
OpenSUSE
But if you have installed the VM but haven’t enabled the Qemu item on proxmox, then first install the qemu-guest-agent package on your VM, then after the installation is complete, turn off the VM. After that, enable the QEMU item as described above. Turn on the VM and ensure you have enabled the QEMU Guest Agent item.
After that, we run the script above based on the VMID, and there should be a display like the image below:

Result of bash script
Please note that in order to display the IP on a Proxmox VM, the VM must be on. If the VM is off, it will show nothing.
Note
If you want to add the output of the IP when you execute qm config <vmid> command, you just add the below script to the bash script and the IP will display in the description section:
And if you have many virtual machines on Proxmox and you want to display all the IPs of the VMs, you can use the script below (but change IP 192.168.56.0 to your subnet IP):