→ Эмулятор для построения сети cisco. Клопов Н.В. Обзор программных эмуляторов оборудования Cisco IOS. Федеральное агентство по рыболовству

Эмулятор для построения сети cisco. Клопов Н.В. Обзор программных эмуляторов оборудования Cisco IOS. Федеральное агентство по рыболовству

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

Для обеспечения полной симуляции, gns3 тесно связан с:

* Dynamips, ядро программы, позволяющий эмулировать Cisco IOS.
* Dynagen, текстовый интерфейс для Dynamips.
* PEM?, эмулятора брандмауэра Cisco PIX на основе Qemu.

Gns3 является отличным дополнительным инструментом для реализации лабораторных работ Cisco для сетевых инженеров, администраторов и людей, желающих пройти сертификацию CCNA, CCNP, CCIP и CCIE.

Он также может быть использован для экспериментов над Cisco IOS или для проверки настроек, которые должны быть развернуты позднее на реальных маршрутизаторах.

Это проект с открытым исходным кодом, бесплатная программа, которая может быть использована на многих операционных системах, включая Linux, MacOS X и Windows.

Получить GNS3 можно перейдя на страницу загрузки www.gns3.net/download
или так sudo aptitude install gns3 (например).

При первом запуске программы вылезет окно настройки, состоящее из двух шагов.

Первый шаг, как видно, поможет выбрать язык (русский поддерживается) и настроить директории.
Второй залить IOS (ru.wikipedia.org/wiki/IOS ). Найти его можно на тор****сру.
Я рекомендую использовать IOS 7200 series т.к. GNS с ним не глючит.
После настройки, тестирования и прочих приятностей можно приступать к знакомстве с самим GNS3
Простым перетаскиванием помещаем картинку с роутером на рабочую поверхность

Добавляем интерфейсы на роутер, дважды по нему кликнув (PA-GE это gigabit ethernet)


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

Введя в консоли команду как на картинке и нажав enter красные кружочки станут зелёными. Можно не вводить ничего в консоли, а нажать кнопку play в меню результат тот-же.

Наконец, поигравшись с GNS3 можно приступить к созданию маршрутизатора на базе компьютера
Для этого в компьютере должно быть >1 сетевой карты.
Если все же одна, то можно настроить loopback
для Windows Пуск->Панель управления->Установка нового оборудования…
для Linux ничего делать не надо GNS его и так видит (во всяком случае у меня)

Для привязки реального интерфейса компьютера к интерфейсу роутера используют «облака»
перетаскиваем их также как перетаскивали роутеры и привязываем к ним интерфейсы при помощи окна настройки (дважды кликнув по облаку).

Каждому интерфейсу по облаку.

Собрав схему можно приступить к настройке маршрутизатора, и развертыванию сети.

Производительность такой сети напрямую зависит от производительности компьютера который прикидывается роутером.

О производительности:
Производительность Windows системы при прочих равных меньше чем у Linux (FreeBSD, Solaris ...), но для дома и Windows сгодится.

Способ уменьшения нагрузки на процессор.

1. Кликаем правой кнопкой мыши и в контекстном меню выбираем IDLE PC.
2. После обработки вылезет всплывающее окно.
3. Выбираем результат.

копипаст: habrahabr.ru/blogs/cisconetworks/74305

Всем привет.

В свое время пришлось заниматься Cisco. Не долго, но все таки. Все что связано с Cisco сейчас мега популярно. Я в свое время имел отношение к открытию локальной академии Cisco в местном университете. Год назад был на курсах " ". Но не всегда у нас есть доступ к самому оборудованию, особенно во время учебы. На выручку приходят эмуляторы. Есть таковые и для Cisco. Я начинал с Boson NetSim, а студенты почти поголовно сейчас сидят на Cisco Packet Tracer. Но тем не менее этими двумя видами набор симуляторов не ограничивается.

Некоторое время назад мы в своём цикле «Сети для самых маленьких» перешли на эмулятор GNS3, который лучше удовлетворял нашим потребностям, чем Cisco Packet Tracer.

Но какие вообще у нас есть альтернативы? О них расскажет Александр aka Sinister, у которого пока нет аккаунта на хабре.

Существует достаточно большое количество симуляторов и эмуляторов для оборудования Cisco Systems. В этом небольшом обзоре я постараюсь показать все существующие инструменты, которые решают эту задачу. Информация будет полезна тем, кто изучает сетевые технологии, готовится сдавать экзамены Cisco, собирает рэки для траблшутинга или исследует вопросы безопасности.

Немного терминологии.

Симуляторы — имитируют некий набор команд, он вшит и стоит только выйти за рамки, сразу получим сообщение об ошибке. Классический пример — Cisco Packet Tracer.

Эмуляторы же напротив — позволяют проигрывать (выполняя байт трансляцию) образы (прошивки) реальных устройств, зачастую без видимых ограничений. В качестве примера — GNS3/Dynamips.

Первым рассмотрим Cisco Packet Tracer.

1. Cisco Packet Tracer


Этот симулятор доступен как под Windows, так и для Linux, бесплатно для учащихся Сетевой Академии Cisco.

В 6-й версии появились такие вещи как:

  • IOS 15
  • Модули HWIC-2T и HWIC-8A
  • 3 новых устройства (Cisco 1941, Cisco 2901, Cisco 2911)
  • Поддержка HSRP
  • IPv6 в настройках конечных устройств (десктопы).

Ощущение такое, что новый выпуск был как раз приурочен к обновлению экзамена CCNA до версии 2.0.

Его плюсы — дружественность и логичность интерфейса. Кроме этого в нем удобно проверять работу разных сетевых сервисов, вроде DHCP/DNS/HTTP/SMTP/POP3 и NTP.

И одна из самых интересных фич — это возможность перейти в режим simulation и увидеть перемещения пакетов с замедлением времени.

Мне это напомнило ту самую Матрицу.

  • Практически всё, что выходит за рамки CCNA, на нем собрать не получится. К примеру, EEM отсутствует напрочь.
  • Так же иногда могут проявляться разнообразные глюки, которые лечатся только перезапуском программы. Особенно этим славится протокол STP.

Что имеем в итоге?

Неплохой инструмент для тех кто только начал свое знакомство с оборудованием компании Cisco.

Следующий — GNS3, который представляет собой графический интерфейс (на Qt) для эмулятора dynamips.

Свободный проект, доступен под Linux, Windows и Mac OS X. Сайт проекта GNS — www.gns3.net. Но большинство его функций, призванных улучшить производительность, работают только под Linux (ghost IOS, который срабатывает в случае использования множества одинаковых прошивок), 64 битная версия так же только для Linux. Текущая версия GNS на данный момент — 0.8.5. Это эмулятор, который работает с настоящими прошивками IOS. Для того чтобы им пользоваться, у вас должны быть прошивки. Скажем, вы купили маршрутизатор Cisco, с него можно их и вытащить. К нему можно подключать виртуальные машины VirtualBox или VMware Workstation и создавать достаточно сложные схемы, при желании можно пойти дальше и выпустить его в реальную сеть. Кроме того, Dynamips умеет эмулировать как старые Cisco PIX, так и небезызвестную Cisco ASA, причем даже версии 8.4.

Но при всем этом есть масса недостатков.

Количество платформ строго ограничено: запустить можно только те шасси, которые предусмотрены разработчиками dynamips. Запустить ios 15 версии возможно только на платформе 7200. Невозможно полноценно использовать коммутаторы Catalyst, это связано с тем что на них используется большое количество специфических интегральных схем, которые соответственно крайне сложно эмулировать. Остается использовать сетевые модули (NM) для маршрутизаторов. При использовании большого количества устройств гарантированно будет наблюдаться проседание производительности.

Что имеем в сухом остатке?

Инструмент, в котором можно создавать достаточно сложные топологии, готовиться к экзаменам уровня CCNP, с некоторыми оговорками.

3. Boson NetSim

Пару слов о симуляторе Boson NetSim, который недавно обновился до 9-й версии.

Выпускается только под Windows, цена колеблется от 179$ за CCNA и до 349$ за CCNP.

Представляет собой некий сборник лабораторных работ, сгруппированный по темам экзамена.

Как можно наблюдать по скриншотам, интерфейс состоит из нескольких секций: описание задачи, карта сети, в левой части находится список всех лаб. Закончив работу, можно проверить результат и узнать все ли было сделано. Есть возможность создания собственных топологий, с некоторыми ограничениями.

Основные фичи Boson NetSim:

  • Поддерживает 42 маршрутизатора, 6 коммутаторов и 3 других устройства
  • Симулирует сетевой трафик с помощью технологии виртуальных пакетов
  • Предоставляет два различных стиля просмотра: режим Telnet’а или режим подключения по консоли
  • Поддерживает до 200 устройств на одной топологии
  • Позволяет создавать свои собственные лаборатории
  • Включает в себя лаборатории, которые поддерживают симуляцию SDM
  • Включает в себя не-Cisco устройства, такие как TFTP Server, TACACS + и генератор пакетов (это, вероятно, те самые 3 других устройства)

Недостатки у него те же, что и в Packet Tracer.

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

Официальный сайт — www.boson.com/netsim-cisco-network-simulator.

4. Cisco CSR

Теперь рассмотрим достаточно свежий Cisco CSR.

Относительно недавно появился виртуальный Cisco Cloud Service Router 1000V.

Он доступен на официальном сайте Cisco.

Чтобы скачать этот эмулятор, достаточно просто зарегистрироваться на сайте. Бесплатно. Контракт с Cisco не требуется. Это действительно событие, так как ранее Cisco всеми способами боролась с эмуляторами и рекомендовала только арендовать оборудование. Скачать можно, к примеру, OVA файл, который представляет собой виртуальную машину, судя по всему, RedHat или его производные. Виртуальная машина при каждом запуске подгружает iso образ, внутри которого можно найти CSR1000V.BIN, который и является собственно прошивкой. Ну а Linux выступает в роли враппера (wrapper) — то есть преобразователя вызовов. Некоторые требования, которые указаны на сайте - память DRAM 4096 MB Flash 8192 MB. При сегодняшних мощностях это не должно доставить проблем. CSR можно использовать в топологиях GNS3 или в связке с виртуальным коммутатором Nexus.

CSR1000v выполнен в виде виртуального маршрутизатора (примерно как Quagga, но IOS от Cisco), который крутится на гипервизоре в качестве экземпляра клиента и предоставляет сервисы обычного маршрутизатора ASR1000. Это может быть что-то простое, как базовая маршрутизация или NAT, и вплоть до таких вещей, как VPN MPLS или LISP. В итоге имеем практически полноценный провайдерский Cisco ASR 1000. Скорость работы достаточно неплохая, работает в реальном времени.

Не обошлось и без недостатков. Бесплатно можно использовать только ознакомительную лицензию, которая длится всего 60 дней. Кроме того в этом режиме пропускная способность ограничена до 10, 25 или 50 Mbps. После окончания такой лицензии скорость упадет до 2.5 Mbps. Стоимость лицензии на 1 год обойдется примерно в 1000$.

5. Cisco Nexus Titanium

Titanium – это эмулятор операционной системы коммутаторов Cisco Nexus, которая еще называется NX-OS. Nexus’ы позиционируются как коммутаторы для ЦОД-ов.

Этот эмулятор был создан непосредственно компанией Cisco, для внутреннего использования.

Образ Titanium 5.1.(2) собранный на основе VMware некоторое время назад, попал в публичный доступ. А спустя некоторое время появился и Cisco Nexus 1000V, который можно вполне легально приобрести отдельно или в составе редакции vSphere Enterprise Plus компании Vmware. Можно наблюдать на сайте — www.vmware.com/ru/products/cisco-nexus-1000V/

Отлично подойдет для всех, кто готовится сдавать трек Data Center. Имеет некоторую особенность – после включения начинается процесс загрузки (как и в случае CSR тоже увидим Linux) и останавливается. Создается впечатление что все зависло, но это не так. Подключение к этому эмулятору проводится через именованные каналы.

Именованный канал — это один из методов межпроцессного взаимодействия. Существуют как в Unix подобных системах так и в Windows. Для подключения достаточно открыть к примеру putty, выбрать тип подключения serial и указать \\.\pipe\vmwaredebug.

Используя GNS3 и QEMU (легкий эмулятор ОС, который идет в комплекте с GNS3 под Windows), можно собирать топологии, в которых будут задействованы коммутаторы Nexus. И опять же можно выпустить этот виртуальный коммутатор в реальную сеть.

6. Cisco IOU

Ну и наконец знаменитый Cisco IOU (Cisco IOS on UNIX) — это проприетарный софт, который официально не распространяется вообще никак.

Существует мнение, что Cisco может отследить и идентифицировать того, кто использует IOU.

При запуске происходит попытка HTTP POST запроса на сервер xml.cisco.com. Данные, которые при этом отправляются, включают в себя hostname, логин, версию IOU и т.д.

Известно, что Cisco TAC использует именно IOU. Эмулятор пользуется большой популярностью у тех, кто готовится к сдаче CCIE. Изначально работал только под Solaris, но со временем был портирован и на Linux. Состоит из двух частей — l2iou и l3iou, по названию можно догадаться, что первый эмулирует канальный уровень и коммутаторы, а второй — сетевой и маршрутизаторы.

Автором web-интерфейса является Andrea Dainese. Его сайт: www.routereflector.com/cisco/cisco-iou-web-interface/. На самом сайте нет ни IOU ни каких-либо прошивок, более того автор заявляет, что веб интерфейс был создан для людей которые имеют право на использование IOU.

И небольшие итоги напоследок.

Как оказалось, на данный момент существует достаточно широкий спектр эмуляторов и симуляторов оборудования компании Cisco. Это позволяет практически полноценно готовиться к экзаменам различных треков (классического R/S, Service Provider и даже Data Center). Приложив определенные усилия можно собирать и тестировать разнообразнейшие топологии, проводить исследования уязвимостей и при необходимости выпускать эмулируемое оборудование в реальную сеть.

Доброго времени.
Когда речь заходит о том как эмулировать Cisco IOS все сразу в голове прокручивают: dynamips, dynagen или gns3 в конце концов, если хочется все в комплекте, да еще и с GUI Front end.

Не так давно я писал о том, что Cisco с 17 января, в лабораторную CCIE RS в секцию TroubleShooting добавила Layer 2, используя виртуальную эмуляцию на основе L2IOU.

Я раньше не знал, что у Cisco есть свой эмулятор, начал искать информацию. Оказалось что некоторым успешно удалось у себя запустить все это дело, причем все работает неплохо, и что самое главное не ест столько процессорного времени как dynamips.

В общем меня это заинтересовало и я решил попробовать.
IOU запускается на unix-like системе, я установил виртуальную машину (vmware fusion под Mac OS), скачал последнюю версию Linux Ubuntu, установил и принялся за работу.

В моем случае файл называется так: i86bi_linux-ipbase-ms
Если мы его попробуем запустить, то получим следующее:

./i86bi_linux-ipbase-ms



***************************************************************

IOURC: Could not open iourc file

Так, видим что не удалось открыть некий iourc файл, давайте его создадим командой touch iourc и попробуем запустить заново:

./i86bi_linux-ipbase-ms
***************************************************************
IOS On Unix — Cisco Systems confidential, internal use only
Under no circumstances is this software to be provided to any
non Cisco staff or customers. To do so is likely to result
in disciplinary action. Please refer to the IOU Usage policy at
wwwin-iou.cisco.com for more information.
***************************************************************
Missing application ID

Usage:
: unix-js-m | unix-is-m | unix-i-m | …
: instance identifier (0 < id <= 1024)
Options:
-e Number of Ethernet interfaces (default 2)
-s Number of Serial interfaces (default 2)
-n Size of nvram in Kb (default 16KB)
-b IOS debug string
-c Configuration file name
-d Generate debug information
-t Netio message trace
-q Suppress informational messages
-h Display this help
-C Turn off use of host clock
-m Megabytes of router memory (default 128MB)
-L Disable local console, use remote console
-u UDP port base for distributed networks
-R Ignore options from the IOURC file

Видим Missing application ID, ну просит, значит давайте введем какой-нибудь, например 10:

./i86bi_linux-ipbase-ms 10
***************************************************************
IOS On Unix — Cisco Systems confidential, internal use only
Under no circumstances is this software to be provided to any
non Cisco staff or customers. To do so is likely to result
in disciplinary action. Please refer to the IOU Usage policy at
wwwin-iou.cisco.com for more information.
***************************************************************

IOU License Error: host not found in iourc file



ubuntu = <16 char license>;

Хорошо, теперь мы понимаем (IOU License Error: host not found in iourc file, что нужно в файл iourc поместить следующие строчки:


ubuntu = 1010101010101010;

где, 1010101010101010 это некие числа, любые, 16 штук 🙂

После того как прописали это в файл iourc пробуем запустить:

./i86bi_linux-ipbase-ms 10
***************************************************************
IOS On Unix — Cisco Systems confidential, internal use only
Under no circumstances is this software to be provided to any
non Cisco staff or customers. To do so is likely to result
in disciplinary action. Please refer to the IOU Usage policy at
wwwin-iou.cisco.com for more information.
***************************************************************

IOU License Error: invalid license
License for key 10ac82b5 required on host «ubuntu».
Obtain a license for this key and host from the following location:

http://wwwin-enged.cisco.com/ios/iou/license/index.html

Place in your iourc file as follows (see also the web page
for further details on iourc file format and location)


ubuntu = <16 char license>;

Теперь мы видим IOU License Error: invalid license, было бы глупо рассчитывать на другое 🙂

Теперь нам придется немного «пошаманить».
А именно, нам нужно дизассемблировать файл, найти где проверяется валидность лицензии, ну и исправить там один битик.
Я делал это с помощью IDA.

Нашел вот такую проверку:

Видим jnz, вот здесь нам и надо изменить адрес перехода.
Переходим в Hex, затем с помощью hexeditor ищим 75148B45FCE8DB и заменяем первые 75, на 74. Сохраняем, пробуем запустить:

Router#sh ver
Cisco IOS Software, Linux Software (I86BI_LINUX-IPBASE-M), Experimental Version 12.4(20090407:185408)
Copyright (c) 1986-2009 by Cisco Systems, Inc.
Compiled Wed 08-Apr-09 01:29 by yuiu

ROM: Bootstrap program is Linux

Router uptime is 30 minutes
System returned to ROM by reload at 0
System image file is «unix:./i86bi_linux-ipbase-ms»

Linux Unix (Intel-x86) processor with 86409K bytes of memory.
Processor board ID 2048010
8 Ethernet interfaces
8 Serial interfaces
16K bytes of NVRAM.

Configuration register is 0x0

Видим что все работает 🙂

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

До скорых встреч 🙂

p.s. я описал процесс запуска весьма поверхностно, если кто-то столкнулся с какими-то проблемами, отписываемся в комментариях, или на форуме.

p.s.s. по просьбе трудящихся, англоязычная ссылка, которая помогла вссе это дело реализовать. http://evilrouters.net/

Там же есть видео. Так же если поискать информацию по этому вопросу есть еще китайские источники, где так же можно найти полезную информацию.

3 На сегодняшний день существуют три эмулятора оборудования Cisco VIRL, GNS3 и UNetLab. Давайте пробежимся по их функционалу для сравнения их достоинств и недостатков.

Оригинал статьи: Сравнение UNetLab с VIRL и GNS3

Легальность

GNS3 и UNetLab требуют, чтобы вы раздобыли Cisco IOS самостоятельно. Такая серая схема, может нарушить условия использования Cisco IOS, которая удерживает некоторых пользователей от GNS3 или UNetLab. Со своей стороны, Cisco VIRL лицензирован на использование Cisco IOS и уже поставляется с некоторыми образами IOS внутри. Дадим VIRL один флажок.

Поддержка Serial интерфейсов

Первое что выделяется – это поддержка Serial интерфейсов. VIRL не поддерживает Serial интерфейсы, но возможен вариант в будущих релизах.. GNS3 и UNetLab имеют поддержку Serial интерфейсов. Поэтому GNS3 и UNetLab получают по одному флажку.

Поддержка дополнительного Cisco оборудования.

VIRL поддерживает из Cisco только IOS-XR, IOS XE, NX-OS, и классические IOS (vIOS-L2 и vIOS-L3). Так же в VIRL возможно загрузить образ ASAv.
GNS3 поддерживает классический IOS (Dynamips), также с помощью интеграции с QEMU возможно использование Cisco VIRL образов, Cisco ASAv, XRv.

Однако для GNS под Windows вас ждут разные неприятности, например запустив образ vIOS-L2/L3 (в GNS уже есть готовый шаблон для него), вы с удивлением обнаружите, что если в настройках укажите количество интерфейсов больше 8, то образ не запуститься.
Кроме того, QEMU под Windows ограничена 2Gb RAM. Это приводит к тому, что могут возникнуть проблемы с запуском таких образов как Cisco XRv и Cisco CSR1000v. Например CSR1000v требует 3G RAM. Можно попробовать выставить меньше, но все интерфейсы будут в состоянии DOWN. Количество линков в QEMU GNS также ограничено в 16, т.е это максимальное число соединений к одному QEMU устройству. Больше информации можно найти на сайте разработчиков UNL в разделе Differences between current UNetLab and GNS3 1.3.3

Также для работы образов Cisco IOL/IOU требуется отдельная виртуальная машина.

В свою очередь UNetLab поддерживает самую широкую линейку как Cisco оборудования, так и оборудование других вендоров. Вы можете запускать Cisco IOL-образы, образы из VIRL (vIOS-L2 и vIOS-L3), образы Cisco ASA Firewall, Cisco IPS, XRv и CSR1000v, образы dynamips из GNS, образы Cisco vWLC и vWSA,

Здесь мы отдадим флажок UNetLab

Поддержка других вендоров.

Есть несколько вендоров, оборудование которые можно интегрировать в среду GNS3. Но GNS3 не афиширует интеграцию с кем-либо, хотя имея интерфейс взаимодействия с QEMU, теоретически возможно реализовать Nested Virtualization и запускать образы, предоставленные вендорами для работы под VmWare. На практике же можно столкнуться со сложностями или существенными ограничениями интеграции того или иного оборудования в GNS3. Например коммутатор Arista EOS в GNS3 под Windows ограничен только 8 интерфейсами, хотя сам образ поддерживает 25.

Однако если сравнивать с UNetLab, то в последнем официальная поддержка наиболее широкая – Juniper, Extreme, Fortinet, HP, Checkpoint, Palo Alto, Arista, Alcatel, Citrix, MS Windows.

VIRL также не афиширует интеграции с кем-либо, хотя это может быть возможно, например поддержка Arista vEOS, Fortinet FortiGate, Juniper, Palo Alto, Windows. .

Внеполосное управление (OOB Access)

И VIRL и GNS3 и UNetLab поддерживют OOB доступ к CLI. Однако в UNetLab , вам не обязательно необходимо находиться на том же самом PC на котором запущена VM. Вы можете запустить VM UNetLab на одном PC или на ESXi, a ваша любимый терминал Putty или SecureCRT на любом удаленном клиенте – хоть из дома, хоть из гостиницы - из любого места. По флажку получают все.

Прелоад конфигураций.

Это то, что GNS3 делать не умеет. Это то что умеет делать VIRL – функция AutoNetKit. UNetLab умеет это делать частично, только для IOL и Dynamips образов. Поэтому VIRL зарабатывает свой флаг.

Многопользовательский функционал (Multi User).

Начиная с версии UNetLab 0.9.54 появился многопользовательский функционал. На одной и той же VM, авторизованные пользователи могут создавать свои собственные стенды независимо друг от друга, а также совместно работать с общим стендом, который разделяют несколько пользователей одновременно. При этом пользователи запускают узлы общего стенда также независимо друг от друга. Данный режим идеально подходит для обучения.

Подобный функционал ни в GNS3 ни в Cisco VIRL не поддерживается. UNetLab забирает флаг себе

Стоимость

Cisco VIRL стоит почти 200$ за Personal Edition. Подписка годовая. Но даже купив лицензию, вы все равно остаетесь с ограничением в 15 Cisco устройств. К слову, надо отметить, что образы других вендоров можно запускать без ограничений. GNS3 и UNetLab – бесплатные продукты. Вы можете сделать добровольное пожертвование для развития продуктов если пожелаете. Кроме того сделав пожертвование в UNetLab вы также получите полную поддержку по установке использованию продукта от разработчиков, доступ к самым последним версиям и приоритетную разработку feature request. Но тем не менее только GNS3 и UNetLab получают по флажку.

Заключение:

В заключении хотелось обратить внимание на некоторые особенности работы UnetLab по сравнению с GNS:

  1. GUI в UNetLab предоставляется через Web-интерфейс, в тоже время в GNS - нужно инсталлировать клиента
  2. GUI в UNetLab поддерживает добавление своих изображений топологии с активными линками на работающие устройства. В GNS такая поддержка практически отсутствует (за исключением подложки между фоном и изображениями устройств - но выглядит очень коряво).
  3. В UNetLab отсуствует ограничение по памяти RAM для QEMU. В GNS Windows вы ограничены 2Gb
  4. В UNetLab Нет ограничения по количеству линков между устройствами. В GNS3 вы ограничены 16 линками в QEMU
  5. В UNetLab все устройства работают внутри одной VM. В GNS3 вам нужна отдельная VM для запуска IOL образов
  6. В VM UNetLab могут работать несколько пользователей одновременно. GNS3 - строго одно-пользовательская система.

Подведем итог: По легкости использования, функционалу, поддержке оборудования победа на сегодняшний день уходит в UNetLab.

Друзья, мы рады сообщить о том, что мы начинаем публиковать статьи наших читателей.
Сегодня материал от гостя нашего подкаста Александра aka Sinister .

============================
Специально для проекта linkmeup

Существует достаточно большое количество симуляторов и эмуляторов для оборудования Cisco Systems.
В этом небольшом обзоре я постараюсь показать все существующие инструменты, которые решают эту задачу.
Информация будет полезна тем, кто изучает сетевые технологии, готовится сдавать экзамены Cisco, собирает рэки для траблшутинга или исследует вопросы безопасности.

Вначале немного терминологии.
Симуляторы - имитируют некий набор команд, он вшит и стоит только выйти за рамки, сразу получим сообщение об ошибке. Классический пример - Cisco Packet Tracer.
Эмуляторы же напротив - позволяют проигрывать (выполняя байт трансляцию) образы (прошивки) реальных устройств, зачастую без видимых ограничений. В качестве примера - GNS3/Dynamips.


Первым рассмотрим Cisco Packet Tracer.

Cisco Packet Tracer


Этот симулятор доступен как под Windows, так и для Linux, бесплатно для учащихся Сетевой Академии Cisco.
В 6й версии появились такие вещи как:

  • IOS 15
  • Модули HWIC-2T и HWIC-8A
  • 3 новых устройства (Cisco 1941, Cisco 2901, Cisco 2911)
  • Поддержка HSRP
  • IPv6 в настройках конечных устройств (десктопы)
Ощущение такое, что новый выпуск был как раз приурочен к обновлению экзамена CCNA до версии 2.0.

Его плюсы - дружественность и логичность интерфейса. Кроме этого в нем удобно проверять работу разных сетевых сервисов, вроде DHCP/DNS/HTTP/SMTP/POP3 и NTP.
И одна из самых интересных фич - это возможность перейти в режим simulation и увидеть перемещения пакетов с замедлением времени.
Мне это напомнило ту самую Матрицу.

Минусы:

  • Практически всё, что выходит за рамки CCNA, на нем собрать не получится. К примеру, EEM отсутствует напрочь.
  • Так же иногда могут проявляться разнообразные глюки, которые лечатся только перезапуском программы. Особенно этим славится протокол STP.
Что имеем в итоге?
- Неплохой инструмент для тех кто только начал свое знакомство с оборудованием компании Cisco.

GNS3

Следующий - GNS3, который представляет собой графический интерфейс (на Qt) для эмулятора dynamips.

Свободный проект, доступен под Linux, Windows и Mac OS X.
Сайт проекта GNS - www.gns3.net/
Но большинство его функций, призванных улучшить производительность, работают только под Linux (ghost IOS, который срабатывает в случае использования множества одинаковых прошивок), 64 битная версия так же только для Linux.
Текущая версия GNS на данный момент - 0.8.5
Это эмулятор, который работает с настоящими прошивками IOS. Для того чтобы им пользоваться, у вас должны быть прошивки. Скажем, вы купили маршрутизатор Cisco, с него можно их и вытащить.
К нему можно подключать виртуальные машины VirtualBox или VMware Workstation и создавать достаточно сложные схемы, при желании можно пойти дальше и выпустить его в реальную сеть.
Кроме того, Dynamips умеет эмулировать как старые Cisco PIX, так и небезызвестную Cisco ASA, причем даже версии 8.4.

Но при всем этом есть масса недостатков.

  • Количество платформ строго ограничено: запустить можно только те шасси, которые предусмотрены разработчиками dynamips.
  • Запустить ios 15 версии возможно только на платформе 7200.
  • Невозможно полноценно использовать коммутаторы Catalyst, это связано с тем что на них используется большое количество специфических интегральных схем, которые соответственно крайне сложно эмулировать. Остается использовать сетевые модули (NM) для маршутизаторов.
  • При использовании большого количества устройств гарантированно будет наблюдаться проседание производительности.
Что имеем в сухом остатке?
- Инструмент, в котором можно создавать достаточно сложные топологии, готовиться к экзаменам уровня CCNP, с некоторыми оговорками.

Boson NetSim

Пару слов о симуляторе Boson NetSim, который недавно обновился до 9й версии.

Выпускается только под Windows, цена колеблется от 179$ за CCNA и до 349$ за CCNP.
Представляет собой некий сборник лабораторных работ, сгруппированный по темам экзамена.
Как можно наблюдать по скриншотам, интерфейс состоит из нескольких секций: описание задачи, карта сети, в левой части находится список всех лаб.
Закончив работу, можно проверить результат и узнать все ли было сделано.
Есть возможность создания собственных топологий, с некоторыми ограничениями.

Cisco CSR

Теперь рассмотрим достаточно свежий Cisco CSR.
Относительно недавно появился виртуальный Cisco Cloud Service Router 1000V.

Отлично подойдет для всех, кто готовится сдавать трек Data Center.
Имеет некоторую особенность – после включения начинается процесс загрузки (как и в случае CSR тоже увидим Linux) и останавливается. Создается впечатление что все зависло, но это не так.
Подключение к этому эмулятору проводится через именованные каналы.

Именованный канал - это один из методов межпроцессного взаимодействия.
Существуют как в Unix подобных системах так и в Windows.

Для подключения достаточно открыть к примеру putty, выбрать тип подключения serial и указать \\.\pipe\vmwaredebug .

Используя GNS3 и QEMU (легкий эмулятор ОС, который идет в комплекте с GNS3 под Windows), можно собирать топологии, в которых будут задействованы коммутаторы Nexus. И опять же можно выпустить этот виртуальный коммутатор в реальную сеть.

Cisco IOU

Ну и наконец знаменитый Cisco IOU (Cisco IOS on UNIX) - это проприетарный софт, который официально не распространяется вообще никак.

Существует мнение, что Cisco может отследить и идентифицировать того, кто использует IOU.
При запуске происходит попытка HTTP POST запроса на сервер xml.cisco.com.
Данные, которые при этом отправляются, включают в себя hostname, логин, версию IOU и т.д.

Известно, что Cisco TAC использует именно IOU.
Эмулятор пользуется большой популярностью у тех, кто готовится к сдаче CCIE.
Изначально работал только под Solaris, но со временем был портирован и на Linux.
Состоит из двух частей - l2iou и l3iou, по названию можно догадаться, что первый эмулирует канальный уровень и коммутаторы, а второй - сетевой и маршрутизаторы.

Конфигурирование проводится путем редактирования текстовых конфигурационных файлов, но некоторое время назад для него был разработан и графический интерфейс, веб фронтенд.

Интерфейс достаточно интуитивен, с его помощью можно производить практически все действия.

Запуск вот такой топологии приводит всего лишь к 20% загрузке CPU.

К слову, это топология для подготовки к сдаче CCIE.

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

Возможности IOU действительно очень большие.
Хотя и не без недостатков, некоторые проблемы на канальном уровне все же имеются.
В некоторых, к примеру, невозможно жестко выставить дуплекс, но это всё мелочи - весь основной функционал работает, и работает отлично.

Автором веб интерфейса является Andrea Dainese.
Его сайт: www.routereflector.com/cisco/cisco-iou-web-interface/
На самом сайте нет ни IOU ни каких-либо прошивок, более того автор заявляет, что веб интерфейс был создан для людей которые имеют право на использование IOU.

И небольшие итоги напоследок

Как оказалось, на данный момент существует достаточно широкий спектр эмуляторов и симуляторов оборудования компании Cisco.
Это позволяет практически полноценно готовиться к экзаменам различных треков (классического R/S, Service Provider и даже Data Center).
Приложив определенные усилия можно собирать и тестировать разнообразнейшие топологии, проводить исследования уязвимостей и при необходимости выпускать эмулируемое оборудование в реальную сеть.

(Мост Бэй Бридж, соединяющий Сан-Франциско с Трежер-Айленд, был превращен в самую большую в мире световую скульптуру. При этом были использованы коммутаторы Cisco.)

===========================

Дополнения от eucariot.

Хотелось бы сказать о симуляторе оборудования Huawei.

eNSP

Enterprise Network Simulation Platform симулирует маршрутизаторы уровня Enterprize, коммутаторы и конечное оборудование. По сути, ближе к Cisco Packet Tracer, имеет понятный графический интерфейс, является именно симулятором.

Распространяется совершенно бесплатно - достаточно зарегистроваться на сайте.

Реализует огромное количество функций реального оборудования, по сути, только довольно специфические вещи нельзя реализовать. Доступны MSTP, RRPP, SEP, BFD, VRRP, различные IGP, GRE, BGP, MPLS, L3VPN.
Можно запускать мультикаст, то есть вы выбираете видеофайл на сервере и через настроенную сеть на клиенте можно смотреть видео (это мы обязательно используем в выпуске СДСМ о мультикасте).

Можно отлавливать пакеты вайршарком.

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

А также, поговаривают , что существует специальный супермощный эмулятор Huawei, в полной мере реализующий все возможности high-end маршрутизаторов, которым пользуется Huawei TAC, но всем известно, что это лишь слухи.

 

 

Это интересно: