Большинство материалов по Cisco, Linux и GNS3 до сих пор ориентированы на VMware Workstation.

В последнее время возникли две проблемы.

Во-первых, официальный сайт GNS3 недоступен напрямую с территории РФ, из-за чего скачивание необходимых компонентов превращается в отдельную задачу.

Во-вторых, GNS3 рекомендует использовать VMware Workstation, который также недоступен с территории России.

В этой статье покажу, как собрать полноценный стенд на компьютере под управлением Windows 11. Мы установим GNS3 и создадим виртуальные машины GNS3 VM и Ubuntu 26.04 LTS в гипервизоре Hyper-V.

В результате получим готовую площадку для изучения компьютерных сетей и Linux.

Каким будет стенд

Стенд мы будем собирать на обычном железе, в моем случае операционная система - Windows 11, процессор Intel i5-1340P, 32 Гб оперативной памяти.

Требования к ПК:

  • не менее 16 ГБ оперативной памяти на физическом компьютере

  • ОС Windows 10/11, Windows Server 2016

  • процессор Intel (официально поддерживаемый вариант для GNS3 VM на Hyper-V)

  • включенная виртуализация в BIOS/UEFI

  • не менее 4096 МБ оперативной памяти и 2 ядер для GNS3 VM

Визуально схему можно представить вот так:

Схема будущего стенда
Схема будущего стенда

Немного про GNS3 VM

GNS3 VM – это специальная виртуальная машина на базе Ubuntu, внутри которой запускаются сервер GNS3 и механизмы виртуализации для сетевых устройств. Именно она позволяет комфортно работать с Cisco, Eltex и другими образами даже на обычном компьютере.

Запуск образов маршрутизаторов и коммутаторов в отдельной виртуальной машине обеспечивает:

  • Защиту основной системы от возможных сбоев

  • Стабильную работу сложных топологий

  • Возможность быстрого восстановления через снимки VM

Скачиваем и устанавливаем GNS3 + VM

На этом этапе нам нужно скачать два компонента:

  • GNS3 Desktop – графическое приложение, в котором мы будем собирать топологии;

  • GNS3 VM – виртуальную машину.

Официальный сайт GNS3 напрямую недоступен с территории России, поэтому для загрузки будем использовать страницу релизов проекта на GitHub.

Нас интересует установщик GNS3 All-in-one. Он удобен тем, что позволяет установить GNS3 Desktop и сразу скачать подходящую GNS3 VM.

На моем стенде версия 2.2.58 (ссылка для скачивания) работала стабильнее, поэтому для статьи использую ее.

После загрузки запускаем установщик.

Выбираем в пунктах для установки GNS3 Desktop и GNS3 VM. Визуально:​

Меню выбора компонентов для установки
Меню выбора компонентов для установки

Далее выполняем стандартные шаги и запускаем установку. Желательно сразу же загрузить Wireshark, Npcap.

Скоро появится сообщение о том, что виртуальная машина скачивается:​

Скачивание GNS3 VM при установке GNS3 all-in-one
Скачивание GNS3 VM при установке GNS3 all-in-one

​После загрузки Вы обнаружите свою виртуальную машину в разделе "Загрузки":​

Моя виртуальная машина загрузилась в "Загрузки", имя архива - GNS3.VM.Hyper-V.2.2.58
Моя виртуальная машина загрузилась в "Загрузки", имя архива - GNS3.VM.Hyper-V.2.2.58

В итоге появится приглашение на установку SolarWinds Engineer's Toolset - оно недоступно с территории России, отказываемся.

После установки не надо сразу же запускать GNS3. Закрываем приложение. Делаем ярлык GNS3 с постоянными запуском от имени администратора. Правой клавишей мыши: Свойства - Совместимость - Запускать эту программу от имени администратора.

Архив с GNS3 VM распакуйте в нужную папку, в моем случае это будет I:\gns3vm2.2.58-hyper-v.

Переходим к созданию виртуальной машины на Hyper-V.

Проверяем настройку Hyper-V на компьютере

Перед созданием GNS3 VM убедимся, что Hyper-V установлен и запускается вместе с Windows.

Запускаем PowerShell от имени администратора. Проверяем наличие Hyper-V командой:

Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All

В выводе должна быть строка:

State            : Enabled

Если вместо Enabled отображается Disabled, включите Hyper-V командой:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All

Проверяем, что Hyper-V запускается вместе с Windows :

bcdedit /enum | findstr hypervisorlaunchtype

Если увидите hypervisorlaunchtype Auto, то гипервизор запускается автоматически.

Только если значение не Auto, выполняем:

bcdedit /set hypervisorlaunchtype auto

После изменения параметра перезагрузите компьютер.

После перезагрузки (если она была) снова запускаем PowerShell от имени администратора и выполняем команду:

Get-WindowsOptionalFeature -Online |
Where-Object {
    $_.FeatureName -like "*Hyper*" -or
    $_.FeatureName -like "*Virtual*" -or
    $_.FeatureName -like "*Subsystem*"
} |
Select-Object FeatureName, State

В выводе нас интересуют только три строки:

Microsoft-Hyper-V-All          Enabled
HypervisorPlatform             Enabled
VirtualMachinePlatform         Enabled

Если все три компонента имеют статус Enabled, система готова к работе с Hyper-V.

Если хотя бы один из перечисленных компонентов имеет статус Disabled, включите его соответствующей командой и перезагрузите компьютер:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
Enable-WindowsOptionalFeature -Online -FeatureName HypervisorPlatform

Создание GNS3 VM на Hyper-V

После загрузки GNS3 VM осталось создать виртуальную машину в Hyper-V.

В PowerShell, открытом от имени администратора, переходим в директорию, куда Вы распаковали архив. Напомню, что я распаковал его в I:\gns3vm2.2.58-hyper-v, поэтому выполняю команду cd в PowerShell:

PS C:\Windows\system32> cd I:\gns3vm2.2.58-hyper-v
PS I:\gns3vm2.2.58-hyper-v> 

Проверяем, что файлы архива находятся в текущей директории командой ls:

PS I:\gns3vm2.2.58-hyper-v> ls


    Каталог: I:\gns3vm2.2.58-hyper-v


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
------        11.04.2026      0:45           1355 create-vm.ps1
------        11.04.2026      0:45     3819888640 GNS3 VM-disk001.vhd
------        11.04.2026      0:45      603032064 GNS3 VM-disk002.vhd
------        11.04.2026      0:45             77 install-vm.bat


PS I:\gns3vm2.2.58-hyper-v>

В архиве уже есть скрипт create-vm.ps1, который создаст GNS3 VM в Hyper-V.

Разрешим выполнение скриптов в PowerShell только для этой сессии:

Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass

После ввода команды соглашаемся, нажав Y:

PS F:\GNS3.VM.Hyper-V.2.2.55> Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
Изменение политики выполнения
Политика выполнения защищает компьютер от ненадежных сценариев. Изменение политики выполнения может поставить под
угрозу безопасность системы, как описано в разделе справки, вызываемом командой about_Execution_Policies и
расположенном по адресу https:/go.microsoft.com/fwlink/?LinkID=135170 . Вы хотите изменить политику выполнения?
[Y] Да - Y  [A] Да для всех - A  [N] Нет - N  [L] Нет для всех - L  [S] Приостановить - S  [?] Справка
(значением по умолчанию является "N"):Y
PS F:\GNS3.VM.Hyper-V.2.2.55>

Создаем виртуальную машину с помощью файла create-vm.ps1:

./create-vm.ps1

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

PS I:\gns3vm2.2.58-hyper-v> ./create-vm.ps1

Name    State CPUUsage(%) MemoryAssigned(M) Uptime   Status             Version
----    ----- ----------- ----------------- ------   ------             -------
GNS3 VM Off   0           0                 00:00:00 Работает нормально 12.0


PS I:\gns3vm2.2.58-hyper-v>

Если скрипт завершился без ошибок и виртуальная машина появилась в диспетчере Hyper-V, значит GNS3 VM успешно создана. Визуально:

Созданная GNS3 VM в диспетчере Hyper-V
Созданная GNS3 VM в диспетчере Hyper-V

Нажимаем правой клавишей и выбираем нужные параметры системы, указав количество ядер и объем оперативной памяти для машины. Для старта можно оставить 2 ядра и 4096 МБ RAM. Если планируете запускать несколько устройств, лучше увеличить ресурсы.

Выбирайте в качестве базового варианта сетевой адаптер Default Switch. Отмечу, что Default Switch в Hyper-V может менять подсеть после перезагрузки. Мы подробно поговорим об этом в будущих статьях.

Параметры моей виртуальной машины
Параметры моей виртуальной машины

Дальше необходимо подключить виртуальную машину к GNS3 Desktop.

Первый запуск GNS3

Важно!

GNS3 всегда запускаем от имени администратора!

При первом запуске Вам будет предложен выбор, как именно следует запускать образы устройств. Мы только что создали виртуальную машину, поэтому выбираем первый пункт Run appliances in a virtual machine.

Поставьте галочку снизу Don't show this again чтобы больше не видеть это предупреждение.

Дальше Вам предлагают изменить при необходимости параметры локального сервера. Если Вы первый раз устанавливаете GNS3, то рекомендуем оставить все как есть.

Если локальный сервер GNS3 запущен успешно, Вы увидите сообщение: :

Connection to the local GNS3 server has been successful!

GNS3 попытается автоматически найти GNS3 VM в VMware или VirtualBox. Поскольку мы используем Hyper-V, этот шаг пропускаем:

Ошибка - невозможно найти виртуальную машину GNS3 в VMware / VirtualBox. Пропускаем этот шаг.
Ошибка - невозможно найти виртуальную машину GNS3 в VMware / VirtualBox. Пропускаем этот шаг.

В статье используется версия 2.2.58, поэтому предложение обновиться до 2.2.59 отклоняем.

Открываем Edit - Preferences - GNS3 VM.

В появившемся меню указываем:

  • enable GNS3 VM;

  • среду виртуализации Hyper-V;

  • имя виртуальной машины GNS3 VM;

  • параметры виртуальной машины.

    Выглядит это следующим образом:

Включение GNS3 VM и установка ее параметров
Включение GNS3 VM и установка ее параметров

Применяем параметры с помощью Apply - OK.

В верхнем меню выбираем пункт View - Docs - Servers summary. У Вас появится панель отображения работающих серверов. В панели должны отображаться два сервера: локальный сервер GNS3 и сервер внутри GNS3 VM:

Панель Servers summary
Панель Servers summary

Если оба сервера имеют статус Connected, настройка выполнена успешно.

Можем переходить к созданию виртуальной машины Ubuntu.

Создание VM Ubuntu 26.04 LTS на Hyper-V

Следующим шагом создания стенда будет установка Ubuntu. Она будет отдельной Linux-машиной для проверки сетевой связности и сервисов в будущем.

Скачиваем с официального сайта Ubuntu в серверном исполнении, релиз 26.04 LTS. Выбрать другой релиз можно по ссылке.

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

  • Поколение 2;

  • оперативная память не менее 4096 Мб;

  • накопитель не менее 15 Гб;

  • Сеть - Default Switch;

  • В качестве установочного ISO-образа укажите скачанный файл Ubuntu Server.

    В моем случае выглядит вот так:

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

После создания виртуальной машины заходим в ее Параметры - Безопасность - Шаблон.

Выбираем Центр сертификации Microsoft UEFI:

Обязательно включить шаблон безопасности Microsoft UEFI
Обязательно включить шаблон безопасности Microsoft UEFI

Без этого шаблона VM может не загрузиться с ISO-образа Ubuntu при включённой безопасной загрузке.

Запускаем виртуальную машину и устанавливаем операционную систему.

Обязательно поставьте галочку (нажав пробел в [ ]) и установите OpenSSH сервер.

После перезагрузки проверяем полученный виртуальной машиной IP-адрес командой:

ip a

Нас интересует интерфейс eth0 или ens33:

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:15:5d:02:64:0c brd ff:ff:ff:ff:ff:ff
    altname enx00155d02640c
    inet 172.31.90.124/20 ....

Интерфейс lo (loopback) мы не используем в этой статье.

В моем случае IP-адрес виртуальной машины 172.31.90.124.

Через PowerShell или терминал (Win+R затем cmd) подключаемся к виртуальной машине командой:

ssh <имя пользователя>@<IP-адрес Ubuntu>

В моем случае:

ssh jetcry@172.31.90.124

Результат:

C:\Users\jetcry>ssh jetcry@172.31.90.124
The authenticity of host '172.31.90.124 (172.31.90.124)' can't be established.
ED25519 key fingerprint is SHA256:VKcj0f1SOhRKdKa3/LmbZTiC1MYEr/LUCBAnWvoikhI.
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '172.31.90.124' (ED25519) to the list of known hosts.
jetcry@172.31.90.124's password:
Welcome to Ubuntu 26.04 LTS (GNU/Linux 7.0.0-22-generic x86_64)

 * Documentation:  https://docs.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Sun Jun 14 10:57:48 AM UTC 2026

  System load:  0.0               Processes:             137
  Usage of /:   50.7% of 9.44GB   Users logged in:       0
  Memory usage: 3%                IPv4 address for eth0: 172.31.90.124
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

3 updates can be applied immediately.
To see these additional updates run: apt list --upgradable

Enable ESM Apps to receive additional future security updates.
See https://ubuntu.com/esm or run: sudo pro status


jetcry@ubuntu26-04:~$

Если подключение по SSH прошло успешно, Ubuntu готова к работе.

Переходим к проверке связности стенда.

Проверка связности между GNS3 и Ubuntu 26.04

Перед настройкой сетевых сервисов убедимся, что устройства в GNS3 могут обмениваться трафиком с виртуальной машиной Ubuntu.

В GNS3 собираем схему:

Схема в GNS3
Схема в GNS3

При добавлении каждого элемента на рабочую область выбираем в качестве сервера GNS3 VM:

Для всех устройств выбираем GNS3 VM
Для всех устройств выбираем GNS3 VM

После этого запускаем все устройства кнопкой Play.

Дважды щелкаем по PC1 и настраиваем его сетевые параметры так, чтобы он оказался в одной подсети с Ubuntu. В моем случае IP-адрес Ubuntu 172.31.90.124/20, поэтому я назначил PC1 адрес 172.31.90.125/20 из той же подсети .

Команда для PC1:

ip 172.31.90.125/20

После ввода команды Вы увидите проверку адресов:

PC1> ip 172.31.90.125/20
Checking for duplicate address...
PC1 : 172.31.90.125 255.255.240.0

Адрес подтвержден. Сохраняем настройку командой:

save

Правильный вывод:

PC1> save
Saving startup configuration to startup.vpc
.  done

PC1>

Проверяем связность стенда командой:

ping 172.31.90.124

Результат:


PC1> ping 172.31.90.124

84 bytes from 172.31.90.124 icmp_seq=1 ttl=64 time=1.886 ms
84 bytes from 172.31.90.124 icmp_seq=2 ttl=64 time=0.428 ms
84 bytes from 172.31.90.124 icmp_seq=3 ttl=64 time=0.467 ms
84 bytes from 172.31.90.124 icmp_seq=4 ttl=64 time=0.423 ms
84 bytes from 172.31.90.124 icmp_seq=5 ttl=64 time=0.399 ms

PC1>

Ответы на ICMP-запросы приходят без потерь, значит Ubuntu и GNS3 успешно обмениваются трафиком.

Стенд собран и готов к работе.

Возможные проблемы при настройке стенда

GNS3 запускается с ошибками

Многие забывают запускать GNS3 от имени администратора.

В результате могут возникать проблемы с запуском устройств или с подключением к GNS3 VM. Не забудьте после установки сразу включить запуск только от имени администратора.

GNS3 Desktop не видит GNS3 VM

После применения настроек GNS3 обычно запускает GNS3 VM автоматически. Если этого не произошло, проверьте в GNS3 пункт "Enable the GNS3 VM" в меню Preferences - GNS3 VM и настройки Вашей виртуальной машины.

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

Виртуальная машина имеет свой IP-адрес
Виртуальная машина имеет свой IP-адрес

Если вместо этого Вы видите загрузку виртуальной машины – необходимо заново создать ее через скрипт.

Если нет IP-адреса - значит Вы не указали в настройках адаптера Default Switch или указали другой коммутатор, в котором не настроен сервис DHCP.

Ubuntu не отвечает на ping из GNS3

Самая частая причина – разные подсети.

Например:

Ubuntu: 172.31.90.124/20
PC1:    172.31.96.125/20

В этом случае устройства физически подключены, но находятся в разных сетях.

Перед поиском сложных причин всегда проверяйте IP-адреса и маски.

После перезагрузки Ubuntu получила новый IP-адрес

При использовании Default Switch в параметрах виртуальной машины Hyper-V адрес обычно выдаётся по DHCP. Поэтому сегодня Ubuntu может получить 172.31.90.124/20, а после перезагрузки 172.25.190.47/20.

Из-за этого перестает работать подключение по SSH и приходится заново проверять IP-адрес Ubuntu.

Для правильной работы лучше использовать отдельный виртуальный коммутатор Hyper-V или настроить статический IP-адрес. Об этом в следующей статье.

Итоги

В результате у нас получился рабочий стенд на Hyper-V без VMware Workstation.

Сетевые устройства успешно запустились внутри GNS3 VM и взаимодействуют с Ubuntu.

На этой базе мы будем постепенно строить полноценную лабораторию для изучения Linux, сетевого оборудования и автоматизации.

В следующей статье заменим VPCS на Alpine и настроим отдельный виртуальный коммутатор Hyper-V для нашего стенда.

P. S.

Спасибо @Terentew за приглашение на Хабр!

Комментарии (1)


  1. MrBotikkk
    17.06.2026 11:43

    Ограничения: https://learn.microsoft.com/en-us/windows-server/virtualization/hyper-v/get-started/Install-Hyper-V

    The Hyper-V role can’t be installed on Windows 10 Home or Windows 11 Home.

    Обход ограничений(Hyper-V и VirtualMachinePlatform) для Win 10-11 Home через bat файл:

    @echo off
    pushd "%~dp0"
    
    dir /b %SystemRoot%\servicing\Packages*Hyper*.mum >hyper-v.txt
    for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages%%i"
    
    dir /b %SystemRoot%\servicing\Packages*Virtual*.mum >virtual-m.txt
    for /f %%i in ('findstr /i . virtual-m.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages%%i"
    
    del hyper-v.txt
    del virtual-m.txt
    
    Dism /online /enable-feature /featurename:Microsoft-Hyper-V -All /LimitAccess /ALL
    Dism /online /enable-feature /featurename:VirtualMachinePlatform /LimitAccess /ALL
    
    pause

    VMware Workstation Pro из б.м. надежного источника.