В статье будет рассматриваться версия использования GNS3 внутри виртуальной машины VMware Workstation 16, используется дистрибутив Ubuntu c LXQt
Ссылка на установочный скрипт автора статьи.
Можете выполнить его с помощью
chmod +x ./gns3-install.sh
./gns3-install.sh.
Сегодня самыми распространенными курсами для начинающего системного администратора являются курсы академии Cisco. Они позволяют ознакомиться с популярными протоколами и понять базовые концепции защиты, настройки и построения различных сетей.
При прохождении курса, в конце почти каждой главы встречаются задания, выполненные в виде практических работ в Cisco Packet Tracer, и для новичка Packet Tracer довольно удобен, среди его плюсов:
интуитивно понятный интерфейс
низкие требования к железу
возможность пользоваться функциями перемотки времени
режим симуляции, в котором можно наглядно посмотреть путь каждого пакета и также проверить его содержимое.
Однако при глубоком изучении современных сетевых технологий c Packet Tracer возникают некоторые сложности, среди которых:
поддержка только Cisco устройств
баги с оборудованием на комплексных схемах, особенно при настройке STP у коммутаторов (часто приходится просто копировать схему, вставляя её рядом, и тогда она чудесным образом начинает работать)
неполная командная среда, т.е. практически ничего, что не входит в рамки CCNA, на нём собрать не получится. Например, создание сценариев для автоматизации EEM недоступно, не все функции расширенных ACL доступны
нет совместимости со старыми версиями. К примеру, версия 8.1.1 не совместима с 8.2.0, при этом я могу взять и открыть файл проекта на новой версии, нажать CTRL+C, зайти в старую версию и нажать CTRL+V, и тогда все заработает
проприетарность. Файлы проекта представляют собой бинарный файл, соответственно, быстро отредактировать топологию или конфигурацию устройств через notepad не выйдет
неудобные горячие клавиши, которые нельзя изменить, например, не работает копирование – вставка текста с помощью CTRL+C, V, приходится использовать комбинации CTRL+INSERT, SHIFT+INSERT
в настоящее время в последних версиях нельзя войти в программу без блокировки соединения с интернетом, так как сайт Cisco из России в текущий момент не доступен.
Но существует такой инструмент, как GNS3 (GNU Network Simulator), который лишён подобных недостатков. Главные его особенности:
поддержка устройств любых вендоров, включая Cisco
поддержка Docker контейнеров
каждое устройство полностью эмулируется, что даёт возможность управлять им, как настоящим
поддержка браузерного Web-клиента
возможность коллективно работать над одним проектом в режиме реального времени
возможность «выпустить» виртуальные устройства в реальную сеть.
У него также присутствуют незначительные недостатки, среди которых:
большая нагрузка на процессор, так как по факту каждое устройство запускается на своей виртуальной машине
довольно медленная эмуляция L2 коммутаторов Cisco, из-за особенности их архитектуры
нет встроенных образов оборудования, но их можно скачать с сайта производителя, на что в клиенте есть ссылка на скачивание образа, если производитель её оставил
плохая поддержка Windows, но GNS3-VM почти полностью решает эту проблему.
Сам из себя GNS3-VM представляет образ для гипервизора, который можно скачать с официального сайта, разработчики рекомендуют использовать VMware, так как там, по их словам, лучше реализована работа VM внутри другой VM, но есть также образы под Virtual Box и Hyper-V.
Если будете пробовать скачать клиент для Windows с официального сайта, нужна будет регистрация, но это обходится путём скачивания .exe файла напрямую с их git репозитория разработчиков.
Приступим к практике
У нас в МЦК-КТИТС подготовка к экзамену проводится сначала в Packet Tracer – собирается часть схемы.
С Packet Tracer здесь возникает проблема – PVST в связке с EtherChannel работают плохо (через раз), но по заданию необходимо их настроить.
Для подготовки задания в GNS3 студентам понадобятся только образы маршрутизаторов, которые можно достать с сайта или напрямую с устройства Cisco, или где-то в интернете.
Также стоит уточнить, что, если вы работаете внутри виртуальной машины, то вам необходимо включить в её настройках Intel VT-x или AMD-V виртуализацию, чтобы машины внутри GNS работали.
А для поддержки L2 коммутаторов в настройках qemu (гипервизора внутри GNS) необходимо добавить флаг – machine pc-q35-4.2
GNS также поддерживает создание VPCS.
VPCS (Virtual PC Simulator) – это аналог ПК из Packet Tracer, с его помощью можно создавать легковесные виртуальные ПК, поддерживающие протоколы DHCP, ICMP.
Также у каждого элемента топологии в директории проекта присутствуют конфигурационные файлы, что даёт возможность настроить проект без его открытия.
К консоли каждого устройства по умолчанию можно подключиться через терминал, с помощью протокола Telnet, можно сделать это, кликнув по устройству два раза.
В GUI GNS3 также пишется IP адрес и порт подключения, если хотите подключиться из уже открытого терминала.
Сама настройка сетевых устройств никак не отличается от аналогичной в Packet Tracer.
Следующее задание состоит в том, что с помощью стендов с гипервизором VMware ESXi студент подключается к заранее восстановленному из снапшота стенду, и начинает настраивать виртуальное оборудование. У студентов возникают сложности, так как не всегда хватает свободных стендов, и многие обязаны ждать пока стенд не освободится. А также собрать стенд с ESXi в домашних условиях в большинстве случаев не предоставляется возможным.
Конечно, можно собрать все в том же VMware Workstation на рабочих машинах в аудитории, но возникают проблемы с настройкой сетевой топологии (нет графической схемы), образами ОС маршрутизаторов, децентрализованности управления снапшотами. Кроме того, неаккуратный студент может затереть снапшот, лежащий в открытом виде, а настраивать заново или восстанавливать его из бекапа довольно долго.
Ряд этих проблем решает GNS3, с помощью которого студент сам может быстро накидать схему – и дома, и в аудитории. Для этого нужна лишь одна виртуальная машина с GNS3-VM и браузер или система под управлением Linux с GNS3-server и GNS3-gui.
Собственно задание. Состоит оно из четырех частей:
Виртуальные машины и коммутация
Сетевая связность
Инфраструктурные службы
Инфраструктура веб-приложения.
Подобную схему в Packet Tracer собрать, очевидно, не выйдет. Попробуем собрать её в GNS3.
Скачиваем шаблоны нужных устройств.
Загружаем шаблон в GNS, скачиваем образ ОС.
Для поддержки графики необходимо выбрать VNC или SPICE в настройках консоли. Также должны быть установлены пакеты: virt-viewer для SPICE или gvncviewer для VNC.
Для упрощения мы можем запустить Web сервера (WEB-L и WEB-R) в docker контейнерах с nginx.
Особых проблем в установке и настройке не возникает. Если что-то происходит, у GNS огромное сообщество, и многие вопросы уже заданы на официальном форуме.
Автор статьи:
Д. Ермилов
студент, специальность «Сетевое и системное администрирование» ГАПОУ «МЦК-КТИТС».
Комментарии (6)
nikweter
11.04.2023 08:18А есть ли смысл сейчас учиться на системного администратора? Денег там нет особо. Лучше в модный девопс, или программисты. Ни тем, ни другим GNS3 не нужен.
Maksim4
11.04.2023 08:18У системного администратора другие задачи. Сети будут всегда и сетевой инженер будет востребован.
nikweter
11.04.2023 08:18Сегодня самыми распространенными курсами для начинающего системного администратора
Цитата из статьи. Это раз.
Два моих знакомых, хороших сетевых инженеров, свичнулись в девопсы. ЗП в 3 раза выше, примерно. Это два.
net_racoon
Основное отличие GNS3 от PT это то, что первый это симулятор и работает на реальных образах, а PT - эмулятор и там огрызки сделанные для обучения. Поэтому использовать PT сейчас вообще смысла никакого нет.