Ученье – свет и высокая зарплата: обзор программных эмуляторов сетевого оборудования Cisco Systems и Juniper Networks. GNS3 - Графический Сетевой Симулятор Поддержка дополнительного Cisco оборудования

Повсеместное создание компьютерных сетей обуславливает резкое развитие в сфере передачи информации. Компьютерные сети создаются для обеспечения пользователей удалённым доступом к ресурсам сети. Поэтому фактически все компании, имеющие более одного компьютера, объединяют их в локальные сети. Очень принципиально, чтобы сеть компании работала бесперебойно, была надёжной, как можно лучше справлялась с обработкой информации, циркулирующей между сотрудниками компании, и позволяла принимать им значимые и оптимальные решения.

Для решения данных задач разрабатывается сетевое оборудование: разные маршрутизаторы, коммутаторы различных уровней и т.д. Компания Cisco Systems считается безусловным фаворитом на рынке сетевого оборудования (занимает около 70% рынка) и предлагает модели от простых маршрутизаторов для небольшого офиса до мультигигабитных устройств, размещаемых в ядре Интернета .

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

С целью полного понимания информационных и коммуникационных технологий компанией Cisco был разработан программный эмулятор Cisco Packet Tracer (рисунок 1).

Cisco Packet Tracer – это мощный программный эмулятор, который дает возможность пользователям моделировать сети, организовывая их с практически безграничным количеством устройств, находить применение оборудования и налаживать его под определенные задачи той или иной среды. Программа дает возможность вырабатыванию качеств скорости принятия решения, креативного подхода и критического мышления . Настраивать конфигурацию и устранять неполадки сетей с применением виртуального оборудования и имитацией соединения можно в одиночку. Главное преимущество Cisco Packet Tracer ‒ бесплатность данного продукта.

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

Программа Cisco Packet Tracer обладает следующими возможностями и особенностями:

    Позволяет моделировать топологии сетей практически любого размера ;

    Доступен режим симуляции;

    Моделирование сети в режиме реального времени;

    Интуитивно понятный интерфейс;

    Мультиязычность;

    Большое количество различного оборудования.

Cisco Packet Tracer имеет две рабочие области: логическую и физическую. Логическая область позволяет создавать и управлять логическими топологиями сетей. Физическая область визуализирует логическую топологию, давая понятие о размахах и трудоустройствах оборудования, таких как маршрутизаторы, коммутаторы, хосты, которые станут работать в настоящей среде. Физическое пространство также дает представление сети, в том числе нескольких городов, зданий, построек, монтажных шкафов .

Режимы Cisco Packet Tracer предусматривают работы по визуализации поведения сети в реальном режиме времени и имитации. Все операции с сетью проходят в режиме реального времени. В имитационном режиме пользователь имеет возможность видеть и контролировать временные интервалы, внутреннее устройство передачи данных, распределение данных по сети.

Рис. 1. Интерфейс Cisco Packet Tracer

Cisco Packet Tracer поддерживает последующие протоколы:

    На прикладном уровне: FTP, SMTP, Telnet, AAA, SNMP, SSH, DNS, DNCP, HTTP, POP3, ISRVOIP, NTP;

    На транспортом уровне: TCpand, TCP, UDP, NagleAlgorithm & IPFragmentation, RTP;

    На сетевом: IPv6, IPv4, ICMP, ICMPv6, BGP, RIPv1/v2/ng, Multi-AreaOSPF, EIGRP, StaticRouting, Route Redistribution, Multilayer Switching, L3 QoS, NAT, CBAL, GREVPN, IPSecVPN.

GNS3 ‒ это независимый бесплатный программный эмулятор маршрутизаторов Cisco. GNS3 поддерживается в большинстве операционных систем Linux, Windows и Mac OS X, при этом данный программный эмулятор даёт возможность эмулировать аппаратную часть маршрутизаторов Cisco, для этого он загружает и использует реальный образ операционной системы Cisco IOS.

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

К нему можно подключать виртуальные машины VirtualBox или VMware Workstation и создавать достаточно сложные схемы, при желании можно пойти дальше и выпустить его в реальную сеть.

GNS3 является бесплатным продуктом, находится в свободном доступе и не имеет каких-либо ограничений по использованию (рисунок 2).

Но при всем при этом имеются недостатки:

    Количество платформ строго ограничено: запустить можно только те шасси, которые предусмотрены разработчиками dynamips.

    Запустить ios 15 версии возможно только на платформе 7200.

    При использовании большого количества устройств гарантированно будет наблюдаться снижение производительности.


Рис. 2. Интерфейс GNS3

Boson NetSim – это программный эмулятор, предназначенный для моделирования работы сетевых устройств Cisco (рисунок 3).

Компания Boson обеспечивает данный продукт очень развитой поддержкой, поэтому компания Cisco Systems рекомендует этот продукт для подготовки к сертификационным экзаменам Cisco. С этой целью программный эмулятор Boson NetSim поставляется в одной из 3 версий: , и .

Главный недостаток данного продукта ‒ это его дорогая себестоимость. Цена составляет 99$, цена 159$ и 299$ составляет цена .


Рис. 3. Интерфейс Boson NetSim

Cisco IOU – это эмулятор сети, разработанный компанией Cisco Systems, который позволяет моделировать сети из оборудования Cisco (рисунок 4). Основные достоинства Cisco IOU: полноценная поддержка L2 и L3 коммутаторов, достаточно низкие системные требования .


Рис. 4. Интерфейс Cisco IOU

К сожалению, Cisco IOU официально не распространяется никак. Данный продукт создан исключительно для сотрудников Cisco Systems.

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

Dynamips - это программный эмулятор аппаратной части маршрутизаторов сisco. Проект разрабатывался начиная с 2005 года как эмулятор cisco 7200 на обычном компьютере.
Впоследствие появилась поддержка других платформ. Сейчас (2008) список такой: Cisco 3600 series (3620, 3640 и 3660), 3700 series (3725, 3745) и 2600 series (по 2610 по 2650XM, 2691).
Заглянем глубже и попытаемся понять как он работает и что с ним можно делать.


Dynamips хорош в случаях, когда необходимо:

  • быстро проверить конфигурацию маршрутизатора для непосредственного её применения последствие на реальной железке;
  • получить лабораторный стенд малой кровью, однако достаточно мощный для обучения или демонстрации;
  • опробовать преимущества и возможности операционной системы Cisco IOS без необходимости покупки самого маршрутизатора.
Первая мысль которая может прийти в голову на этом месте: а не может ли эмулятор cisco заменить сам маршрутизатор? В какой то степени да, но лишь при очень малой нагрузке. Сам автор проекта указывает что производительность реального маршрутизатора выше приблизительно раз в 100 (производительность Dynamips около 1 килопакета в секунду в то время как даже самая ранняя модель NPE-100 даёт 100 килопакет/сек).
Помимо аппаратного обеспечения маршрутизаторов cisco существует возможность эмулировать сетевые устройства, такие как:
  • мост (используя который можно соединить эмулированный маршрутизатор с реальной сетью или другому виртуальному маршрутизатору);
  • Ethernet-коммутатор;
  • ATM-коммутатор;
  • ATM-мост (Ethernet ATM);
  • коммутатор Frame-Relay.
Замечательной способностью Dynamips-а является то, что он может работать в режиме гипервизора . То есть одновременно есть возможность запускать не одну виртуальную циску, а целую сеть со всеми возможностями dynamips: коммутаторами, маршрутизаторами, мостами.. Таким образом появляется возможность выполнять лабы без реального оборудования. Или же демонстрационные стенды. Причём практически любой сложности. В таком управление гипервизором осуществляется по сети TCP/IP, а сам dynampis запускается примерно таким образом:

dynamips -H 7200

где 7200 - порт для связи с гипервизором.

Следует заметить , что запущенный по умолчанию, эмулятор сильно загружает компьютер. Даже на 100%. Чтобы снизить нагрузку создана опция "Idle PC". С её помощью можно снизить нагрузку на процессор и, таким образом, запустить второй, третий и более эмуляторов cisco одновременно без существенной нагрузки процессора. Значение IdlePC специфично для каждого образа IOS. Необходимое значение выбирается опытным путём. Непосредственно с Dynamips это делается следующим образом: после загрузки маршрутизатора желательно с пустой конфигурацией после приглашения Press RETURN to get started! Нужно секунд через 5 нажать "Ctrl-] + i". Начнёт собираться статистика загруженности процессора. По истечении этого процесса (порядка 10 секунд) будет выведено несколько значений, из которых потенциально лучшие будут помечены. Возможно, придётся попробовать несколько значений прежде чем нагрузка процессора спадёт со 100% до примерно 5% (на разных компьютерах по-разному).

Dynamips представляет из себя один исполняемый файл. Причём есть варианты под Linux, Mac OS и Windows. Но при запуске принимает множество аргументов, для задания особых параметров эмуляции. Подробнее об аргументах можно почитать на странице проекта xgu.ru.

Однако частенько требуется быстро развернуть виртуальную сеть, а использовать (изучать, набирать) dynamips со всеми необходимыми аргументами для запуска проблематично, если ещё и учесть необходимость создания конфигурационного файла, описывающего виртуальную сеть. Вот пример такого файла:

IF:E0:udp:10000:127.0.0.1:10001
IF:E1:udp:10002:127.0.0.1:10003
IF:E2:gen_eth:eth0

DOT1Q:E0:1
ACCESS:E1:4
DOT1Q:E2:1

И это только конфиг, описывающий простой коммутатор. А если есть необходимость эмуляции магистралей Frame Relay или ATM?... В общем можете сами дорисовать картину и попробовать распланировать все свои необходимые действия для эмуляции сети cisco с использованием только голого dynamips.

Так вот для облегчения работы было создано несколько инструментальных средств, облегчающих создание конфигурационных файлов и запуск dynamips с требуемыми параметрами. Они кстати ещё и более дружелюбные в плане интерфейса.

Dynagen (сайт проекта dynagen.org). Использует CLI-like (интерфейс командной строки) для управления dynamips, который запускается в режиме гипервизора. Необходимо всё-таки создать конфигурационный файл типа INI и dynagen через сеть (см. запуск гипервизора) будет управлять dynamips. Это говорит о том, что сам гипервизор может быть запущен за удалённом компьютере. Пример такого конфига:


image = \Program Files\Dynamips\images\c7200-jk9o3s-mz.124-7a.image
# On Linux / Unix use forward slashes:
#image = /opt/7200-images/c7200-jk9o3s-mz.124-7a.image
npe = npe-400
ram = 160

[]
s1/0 = F1 1

[]
s1/0 = F1 2

[]
s1/0 = F1 3

[]
1:102 = 2:201
1:103 = 3:301
2:203 = 3:302

Подсчитать значение Idle PC и уменьшить загрузку процессора в dynamips в можно с помощью команды idlepc. Список команд - ? .
Dynagen и dynamips можно скачать .

Xenomips и Xentaur. Эти проекты пошли ещё дальше.
Xenomips объединяет эмуляцию cisco и виртуализацию Xen. Таким образом, список виртуальных устройств dynamips расширяется возможностями Xen. И на одном физическом компьютере как хост-системе можно создать лабораторный стенд из виртуальных маршрутизаторов cisco, коммутаторов, Ethernet-мостов, магистралей Frame Relay и ATM, межсетевых экранов Cisco PIX (используя параллельный проект Pemu), серверов и рабочих станций Linux, FreeBSD, Windows, MacOS и так далее.
Цель проекта Xentaur — разработка инструментов и методов быстрого построения виртуальных сетей и исследования их работы. Сети могут быть не только чисто виртуальными, но и смешанными: наряду с виртуальными узлами в них могут работать и обычные компьютеры и сетевые устройства.
Подробнее про эти проекты можно почитать на сайте проекта xgu.ru: Xenomips , Xentaur .

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

Удачи в изучении!

P.S. Остаётся порой задаться вот каким вопросом. Все описанные инструментальные средства распространяются по лицензии GPL и/или бесплатны и свободны для загрузки. Однако не сам образ ОС IOS. Так что вопрос, где скачать Cisco IOS остаётся открытым. Это ПО распространяется Сisco на коммерческой основе. Однако если задаться целью, то скачать IOS для учебных целей можно - можно найти легко. ;-)

Друзья, мы рады сообщить о том, что мы начинаем публиковать статьи наших читателей.
Сегодня материал от гостя нашего подкаста Александра 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, но всем известно, что это лишь слухи.

Всем привет.

В свое время пришлось заниматься 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/

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