Содержание
NETSHe _ GNS3 Installation Guide RU
NETSHe & GNS3
Руководство по
установке и настройке
Контактные данные организацииВерсия 2.0
Апрель, 2020
Введение
NETSHe Lab длительное время занимается разработками программного обеспечения для сетевых устройств, провайдеров услуг и операторов связи. Среди программного обеспечения центральное место занимает операционная система NETSHe, которая может быть использована в широком спектре сетевых устройств и сервисов, среди которых можно отметить:
- Полноценный маршрутизатор, реализующий как статическую и динамическую маршрутизацию RIP/OSPF/BGP, так и резервирование и балансировку соединений;
- поддержку туннелей на базе IPIP, L2TP, PPPTP, PPPoE, GRE, OpenVPN, IPsec и др. с возможностью передачи трафика уровней L2 и L3 модели OSI;
- Полноценный межсетевой экран;
- Построение динамических полносвязных выделенных сетей с шифрованием (DM VPN);
- поддержку беспроводных сетей и сотовых соединений.
Сокращение затрат и стоимости владения всегда было приоритетом NETSHe Lab. В рамках данной стратегии нами предоставляется единый унифицированный веб-интерфейс управления устройствами, позволяющий применять единый набор знаний и навыков. Научившись управлять самым простым из наших устройств, пользователь сможет продуктивно начать работать и с самыми сложным.
Безусловно, наличие средств и инструментов, позволяющих без вложений познакомиться с NETSHe, просимулировать возможные сценарии использования, а также проверить совместимость с иными устройствами, является еще одним элементом стратегии сокращения затрат пользователей.
Для знакомства с NETSHe, проведения разного рода симуляций и использования в учебном процессе, нами предлагается использовать широко известный сетевой симулятор GNS3, приложение NETSHe для симулятора и набор учебных проектов.
Что такое GNS3?
Graphical Network Simulator, если перевести дословно, — графический симулятор сети. Он позволяет создавать различные сетевые топологии прямо на вашем компьютере. Чаще всего GNS используется в качестве лабораторного стенда, где можно проверить ту или иную технологию или схему.
На самом деле GNS3 не симулятор, а эмулятор!
Эмулятор позволяет создать модель компьютера или другого устройства и запускать внутри оригинальное программное обеспечение. Эмулируются все основные компоненты устройства, в том числе процессор, память и устройства ввода/вывода. Например, GNS3 позволяет создать модель маршрутизатора СISCO и запустить внутри реальную операционную систему Cisco IOS. Т.е. GNS3 предоставляет полнофункциональные маршрутизаторы, межсетевые экраны, интерконнект.
Почему GNS3?
- Первая и самая главная причина — полный функционал эмулируемых устройств.
- Есть возможность построения гетерогенных сетей. Имеется ввиду, что мы можем собрать схему, где будут работать устройства NETSHe, Cisco, Juniper, Mikrotik, CheckPoint и т. д.
- Добавление в сеть полноценных рабочих станций и серверов.
- GNS3 является бесплатным и свободно распространяемым программным обеспечением.
Больше информации о GNS3 можно найти на официальном сайте https://www.gns3.com в сети Интернет.
Данный документ описывает процесс установки и настройки сетевого симулятора GNS3 на компьютерах под управлением Linux и Windows, импорта универсального образа устройства под управлением NETSHe, импорта проектов-примеров от NETSHe Lab и создания собственных проектов симуляции сетей и приложений с использованием NETSHe.
Общие замечания по установке, настройке и использованию GNS3 на Linux и Windows
Установка, настройка и использование GNS3 под Linux выглядит проще и удобнее ввиду отсутствия вложенной виртуализации и использования естественных для Linux средств виртуализации Qemu и KVM.
Данный документ не является исчерпывающим руководством по работе с GNS3. Для ознакомления с принципами установки и работы GNS3 читатель может посмотреть видео в Интернете или воспользоваться многочисленной документацией. Так мы рекомендуем видеокурс на английском от одного из разработчиков:
https://www.youtube.com/watch?v=LvLGEKD-oqA
https://www.youtube.com/watch?v=R6fSub4ycTk
https://www.youtube.com/watch?v=anYw9pbAUiI
В данном документе рассматриваются особенности настройки GNS3 под NETSHe и вопросы выбора средств виртуализации для решения поставленных задач.
Установка и настройка GNS3 на компьютере с Windows.
Установка GNS3 под Windows выполняется без особенностей. При первой загрузке GNS3 спросит пользователя, как запускать сервер. Если в распоряжении пользователя только один компьютер, то следует выбрать вариант ‘local server’ ‘tcp:3080’. В последствии эти настройки пользователь может наблюдать в разделе ‘Server’ меню настроек ‘Preferences’.
Внимание! GNS3 является ресурсоемким приложением. Не запускайте иные ресурсоемкие приложения во время работы GNS3.
Установка платформы виртуализации
Windows и GNS3 совместно поддерживают несколько вариантов виртуализации VMWare Workstation, VirtualBox, VMWare Player.
К сожалению, GNS3 под Windows использует вложенную виртуализацию, в связи с чем работоспособность с VMWare Player находится под вопросом и в данном документе не рассматривается.
Вложенная вирутализация в VirtualBox появилась недавно, и в первую очередь для процессоров AMD.
Внимание! NETSHe Lab настоятельно рекомендует использовать VMWare Workstation под Windows, так как этот способ обеспечивает максимальную функциональность симулятора при минимальном потреблении ресурсов и минимальных пользовательских настройках.
Итак, лучшим вариантом является использование VMWare Workstation в качестве системы виртуализации. VMWare Workstation не является свободно распространяемым продуктом, однако доступен в течение 30 дней ознакомительного периода.
Установка VMWare Workstation проходит без особенностей. В процессе создаются стандартные дополнительные сетевые адаптеры (loopback), которые впоследствии будут использоваться GNS3 для связи с внешним миром, компьютером или сетью пользователя.
После установки VMWare (а равно любой иной системы виртуализации) пользователю следует загрузить шаблон виртуальной машины GNS VM c сайта https://www.gns3.com/software/download-vm. Далее следует стандартная процедура импорта шаблона в систему виртуализации и старт виртуальной машины.
Перед стартом необходимо в свойствах машины указать возможность поддержки Intel-VT.
После запуска мишины пользователю следует убедиться, что виртуальная машина GNS3 успешно стартовала.
Нажать ‘ОК’, убедиться, что основное меню машины отображается, и выключить машину, воспользовавшись последним пунктом этого меню ‘Shutdown’.
Настройка GNS VM
GNS VM включается в среду GNS3 в разделе ‘Service’ меню настроек ‘Preferences’. Нужные варианты легко выбираются из выпадающих списков, которые уже заполнены.
При успешных настройках автоматически стартует виртуальная машина ‘GNS VM’, которая отображается в среде GNS3 справа в списке ‘Servers’.
Импорт приложения NETSHe
Внимание! Предварительно загрузите файл netshe.gns3a с сайта http://gw.stasoft.net/share/gns3/netshe.gns3a или сайта http://netshe-lab.ru/files/gns3a/netshe.gns3a
Для импорта приложения пользователю нужно воспользоваться пунктом меню ‘Files’→’Import Appliance’, где в диалоге выбрать предварительно загруженный файл netshe.gns3a. Приложение самостоятельно загружает образ виртуальной машины с сайта NETSHe Lab. Eсли у пользователя нет подключения к Интернет, то следует предварительно загрузить образ NETSHe с сайта http://gw.stasoft.net/share/gns3/NETSHe-5.3-amd64.vmdk или http://netshe-lab.ru/files/gns3/NETSHe-5.3-amd64.vmdk , где 5.3 — номер актуальной версии NETSHe. Проверить требуемую версию NETSHe, а также целостность скачанного файла можно по данным из файла .gns3a (version и md5sum в разделе [images]).
После этих действий пользователь может увидеть в браузере устройств GNS3 новое устройство Qemu VM с именем ‘NETSHe OS’.
Теперь пользователь может использовать эти устройства в своих тестовых стендах, просто вытаскивая их на поле проектов GNS3.
Работа с устройствами NETSHe в среде GNS3
Все операции с данными устройствами выполняются аналогично работам с устройствами Cisco Systems или любыми другими. Контекстное меню у устройства имеет стандартный вид, а консоль автоматически подключается через установленное на компьютере пользователя приложение, например, РuTTy.
Следует заметить, что только интеграция GNS VM с помощью VMWare Workstation позволяет получить в тесты весь функционал операционной системы NETSHe.
Работа с проектами. Перенос проектов с других компьютеров.
Когда NETSHe интегрирована в среду GNS3, можно начать работу с уже сделанными (или примерными) проектами.
Загрузить примерные проекты можно по ссылкам
http://gw.stasoft.net/share/gns3/projects/или
http://netshe-lab.ru/files/gns3/projects/ Файлы проектов имеют расширение .gns3project и имеют внутри все необходимое для дальнейшей работы.
Средствами среды можно открыть любой файл проекта, ранее сделанный, например, на Linux.
Внимание! При переносе проектов с Linux на Windows и обратно следует учесть разницу исполняемых сред (Qemu внутри GNS VM машины на Linux или Qemu непосредственно на Linux) и, как следствие, разные интерфейсы, подключаемые в проекты.
Поясним на примере проекта, принесенного с Linux в GNS3 под Windows. Для подключения к Интернет и доступа к веб-интерфейсу (WebUI, Web User Interface) устройства с NETSHe проект содержит компонент Cloud. Для этого компонента надо изменить интерфейс в его настройках, как это показано на следующей картинке:
Пошаговые действия таковы:
- - удалить линк, соединяющий Cloud c другим компонентом проекта, на котором желательно запомнить имя соединяемого порта,
- - в контекстном меню Cloud выбрать Configure,
- - в списке интерфейсов удалить virbr0 и добавить Ethernet,
- - восстановить линк.
После этого пользователь получает не только работающий проект, но и стандартными средствами уже соединенный с Интернетом через новый для него компьютер, если это было сделано в проекте ранее.
Открытый проект содержит все свойства исходного, например, на картинке ниже у VPCs отсутствуют назначенные адреса, поэтому часть хостов показаны недоступными.
Особенности использования VirtualBox
Как уже говорилось выше, пользователь получает полофункциональную среду на Windows только с использованием VMWare Workstation. Связано это с работой GNS VM + Qemu, если будущие версии GNS3 позволят реализовать эту связку на базе другой виртуальной платформы, то и NETSHe автоматически заработает в той среде.
К сожалению, в настоящее время запустить GNS VM на Virtual Box можно (картинка выше), но при этом запрос Qemu при импорте приложения NETSHe вернет пустой ответ, а значит NETSHe как Qemu VM не будет доступна.
Это можно обойти через импорт виртуальных машин VirtualBox. В этом случае каждое устройство NETSHe будет исполняться на отдельной виртуальной машине в среде VirtualBox.
Однако при этом функционал будет сильно урезан, и вызвано это опять ограничениями GNS3.
- Только однократно виртуальную машину VirtualBox можно использовать в проекте, при попытке вытащить на поле вторую, GNS3 выдаст соответствующую ошибку.
- Другие устройства NETSHe в проект можно завести как отдельные виртуальные машины, создав клон из первой средствами VirtualBox. Понятно, что это процесс и трудоемкий, и ресурсоемкий.
Учитывая вышеизложенное, мы рекомендуем использовать VirtualBox, только для начального ознакомления с NETSHe.
Установка, настройка и использование GNS3 на компьютере с Linux.
В настоящем документе мы будем использовать версии 2.2.x GNS3 и дистрибутивы основанные на Ubuntu 16.04/18.04.
К сожалению, Ubuntu 16.04/18.04 и деривативы имеют старый GNS3 в репозитории. В сети Интернет имеется немало руководств по установке GNS3 в различных Линукс дистрибутивах. В том числе руководства по установке из исходных кодов. Мы не будем использовать исходный код, а поставим свежий GNS3 из PPA-репозитория.
Будем использовать подключение к сети Интернет, консольный режим и введем команды:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install qemu qemu-kvm
После запуска данной команды нужно согласиться с возможным запросом на обновление программных компонентов системы пользователя. Далее следует ввести команды:
sudo add-apt-repository ppa:gns3/ppa
sudo apt-get update
sudo apt-get install gns3-gui
После запуска команды, потребуется некоторое время на загрузку приложений и их установку. По завершению установки система запросит разрешения на возможность захвата пакетов и исполнение GNS3 непривелегированными пользователями. Ответьте «Да» (Yes) на оба вопроса.
Если необходимо использовать образы Cisco в симуляторе, выполните следующие три команды:
sudo dpkg –add-architecture i386
sudo apt-get update
sudo apt-get install gns3-iou
Перезагрузите компьютер. После перезапуска компьютера найдите в интерфейсе значок/меню с GNS3 и запустите его.
При запуске первый раз, GNS3 задаст несколько вопросов:
Выберите пункт «Run application on my local computer». При следующем вопросе согласитесь с выбором GNS3.
В случае успеха GNS3 сообщит Вам, что удачно соединился с локальным сервером и сам найдет Qemu.
Установка и настройка завершены. Можно переходить к импорту приложения NETSHe. Для этого нужно открыть меню «File→Import appliance» и указать путь файлу netshe.gns3a
Пройдите мастер импорта. В нашем случае образ виртуальной машины NETSHe находился в том же каталоге, что и файл .gns3a.
Импорт удачно завершен. Можно переходить к созданию первого проекта.
Следует выбрать пункт меню «File→New blank project» и щелкнуть по списку маршрутизаторов (первый значок в левом столбце), далее перетащить символ NETSHe OS в поле проекта.
Несколько замечаний по конфигурации образа NETSHe для GNS3:
- Образ собран с поддержкой до 5-ти Ethernet интерфейсов. Все интерфейсы имеют имена еth0-eth4.
- Интерфейс еth0 — это внешний интерфейс (WAN к вышестоящему маршрутизатору). По-умолчанию на нем запущен DHCP-клиент. Интерфейс настроен в режиме бэкапа для другого WAN интерфейса. Входяший трафик на этом интерфейсе будет отбрасываться за исключением ICMP пакетов и доступа к веб-интерфейсу (TCP порт 5556).
Используйте этот интерфейс для подключения к объекту Cloud для автоматического получения адреса. А так же используйте адрес этого интерфейса для доступа к веб-интерфейсу устройства, узнать его можно консольной CLI-командой:
ifconfig eth0
- Интерфейс eth1 — это внутренний интерфейс LAN. Он имеет адрес 192.168.1.1/24 и на нем запущен DHCP-сервер. На интерфейсе нет ограничений на входящий трафик и настроен NAT в направлении интерфейса еth0.
- Интерфейс eth2 — это интерфейс в сторону серверов (DMZ). Он имеет адрес 172.16.0.1/24. Для зоны DMZ настроен проброс портов из зон WAN и LAN TCP 80 на адрес 172.16.0.2 порт 80 и UDP 53 на адрес 172.16.0.3 порт 53. Из зоны настроен NAT в зоны WAN и LAN.
- Интерфейс eth4 — это основной WAN интерфейс. Используйте его в своих проектах для подключений со статической адресацией.
- Доступ к веб-интерфейсу устройств NETSHe на порту 5556:
Полный — superuser/abC123dEf_ ,
Ограниченный — root/root,
Доступ по SSH из зоны LAN — root/root.