Эмулятор сети


Эмулятор UNetLab — революционный прыжок / Хабрахабр

Данная статья посвящена новому Эмулятору UNL, с помощью которого вы можете создавать свои собственные виртуальные стенды для подготовки как к экзаменам CCNP/CCIE, так для решения своих инженерных задач.

Что такое UNetLab
UNenLab (Unified Networking Lab, UNL) – это мульти-вендорная и многопользовательская платформа для создания и моделирования самых различных лабораторий и дизайнов, которая позволяет смоделировать виртуальную сеть из маршрутизаторов, коммутаторов, устройств безопасности и др.

Это продолжение того же девелопера, который в своё время создал веб фронтенд для IOU. Теперь разработка iou-web завершена, разрабатывается только UNetLab и является незаменимым инструментом для подготовки к CCIE, сетевого инженеринга, в том числе и Troubleshooting. Это, по сути, убийца GNS, IOU и даже VIRL.

UnetLab – полностью бесплатен. Вы можете запускать столько экземпляров оборудования (роутеров, коммутаторов, устройств безопасности и т.д) сколько вы хотите и какого хотите. Например, в том же Cisco VIRL Personal Edition вы ограничены 15-ю узлами и набор устройств довольно скромный. Например полноценную ASA получить не представляется возможным, равно как и маршрутизатор с Serial-интерфейсом.

Поддержка оборудования в UNetLab очень широкая. Вы можете запускать Cisco IOL-образы, образы из VIRL (vIOS-L2 и vIOS-L3), образы ASA Firewall (как портируемые 8.4(2), 9.1(5), так и официальные ASAv), образ Cisco IPS, образы XRv и CSR1000v, образы dynamips из GNS, образы Cisco vWLC и vWSA, а также образы других вендоров, таких как Juniper, HP, Checkpoint и т.д. Кроме того, начиная с версии UNetLab 0.9.54 появилась многопользовательский функционал. На одной и той же VM, каждый авторизованный пользователь может создавать свои стенды независимо друг от друга, а также совместно работать с общим стендом, который разделяют несколько пользователей одновременно. При этом пользователи запускают общий стенд независимо друг от друга.

На текущий момент поддерживаются следующий список оборудования:

  • Aruba ClearPass
  • Alcatel 7750 SR
  • Arista vEOS
  • Brocade Virtual ADX
  • Citrix Netscaler VPX virtual
  • Checkpoint Firewall
  • Cisco ASA (porting)
  • Cisco ASAv
  • Cisco CSR 1000V
  • Cisco IPS (porting)
  • Cisco IOS 1710/3725/7206 (dynamips, ethernet only)
  • Cisco IOL (for Cisco internal use only)
  • Cisco NX-OSv – titanium (for VIRL customers only)
  • Cisco vIOS (for VIRL customers only)
  • Cisco vIOS L2 (for VIRL customers only)
  • Cisco XRv
  • Cisco WSA virtual appliance
  • Cisco Wireless controller – vwlc
  • Extreme Networks virtual
  • F5 BIG-IP LTM VE
  • Fortinet FortiGate (new)
  • HP VSR1000
  • Juniper Olive (porting)
  • Juniper Networks vMX router
  • Juniper vSRX
  • Palo Alto VM-100 Firewall
  • VyOS
  • MS Windows hosts
С более подробным списком можно ознакомится на сайте разработчиков.

Самые существенные плюсы UnetLAB по сравнению с Cisco VIRL

  • Полностью бесплатен
  • Практически полноценная поддержка L2 (за счет EOS-коммутатора, который полностью cisco-like)
  • Широкая поддержка Cisco оборудования
  • Число запускаемых узлов ничем неограничен, кроме ваших ресурсов (CPU, RAM)
  • Мультивендорность
  • Многопользовательский функционал
  • Низкие требования к ресурсам ПК
Данная платформа подойдет как новичкам для подготовки к CCNA/CCNP, так и для профессионалов для подготовки CCIE Routing and Switching, CCIE Security, CCIE Service Provides, CCIE Data Centers и т.д, а также для других разнообразных инженерных задач.

В отличие от предыдущего проекта IOU-WEB, в UNetLAB реализован полностью графический интерфейс дизайна топологии, примерно так, как это делается в GNS. Теперь нет необходимости писать netmap файлы для каждой топологии. Недостатком является полное отсутствие совместимости с предыдущим проектом. Файлы топологий собранные в iou-web необходимо переписывать для UNL. Но в последней версии разработчики предоставляют скрипт который поможет автоматизировать процесс.

Также в UNL включена поддержка так называемой Custom Topology, т.е кликабельных красивых картинок-диаграмм, которые вы можете нарисовать в MS Visio и импортировать в вашу лабу, так как это было в iou-web.

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

Установка UNetLab
UnetLAB поставляется в виде отдельной виртуальной машины основанной на Linux Ubuntu 14 x64. В комплект НЕ входят образы какого-либо оборудования. Например, использование образов IOU не законно, если ты не сотрудник Cisco. Даже для обучения. По этой причине сами образы L2IOU и L3IOU не предоставляются, равно как и другие образы (например образы из VIRL). При желании вы можете найти их в Интернете, а также на официальных сайтах производителей, например Cisco ASAv, Cisco XRv, Cisco CSR1000v, Juniper vSRX и т.п.

На сайте разработчика UnetLAB имеются всеобъемлющие инструкции по инсталляции тех или иных образов в среду UNL. Далее мы рассмотрим установку VM UNetLAB на VmWare Workstation или VmPlayer, а также установку под ESXi.

Ставим виртуальную машину
Для начала нам понадобится vmware player для установки нашей виртуальной машины. Скачать можно с сайта VmWare, так же подойдет Vmware Workstation или ESXi vsphere. После установки vmware player необходимо скачать виртуальную машину UNetLAB примерно 700Mb с сайта разработчика и открыть при помощи VmWare Player или VM Workstation файл .ova

В течении нескольких секунд VM будет создана.

Далее необходимо выбрать меню “Edit virtual machine settings” вашей VM и настроить соответствующее ресурсы CPU и памяти. По умолчанию для VM стоит 1G, 1 CPU и 1 NIC (сетевой интерфейс). Для простейших задач этого хватит, но для серьезного CCIE стенда, данные параметры необходимо увеличить. Я использовал 6 CPU и 12Gb на моем 16G ноутбуке. А под ESXi выделил 8 vCPU и 24Gb. Все зависит от того, что вы хотите запускать. Если например вы готовитесь для сдачи CCIE SP или CCIE Security, то памяти надо выделить побольше. Для CCIE RS хватит 4Gb и 1CPU.

В заключении обязательно включите опцию “Virtualize Intel VT-x/EPT or AMD-V/RVI” в настройках CPU. UNetLAB умеет определять в какой среде она запущена, а также доступны ли ей команды виртуализации CPU. Если у вас Поддержка CPU виртуализации выключена в BIOS, или процессор не поддерживает виртуализацию, UnetLAB детектирует это и выдаст соответствующие предупреждение при загрузке. Вы все еще сможете запускать 32бит образы, такие как IOL или vIOS, но не сможете запускать 64бит образы, такие как ASAv, vSRX и т.п. Поэтому обязательно стоит включить поддержку виртуализации для VM UNetLAB. Если UNetLAB развертывается в среде ESXi, то аналогичная опция должна быть включена в настройках CPU виртуальной машины UNetLAB.

Запуск виртуальной машины UNetLAB
После старта VM вы должны зайти на ее Linux-консоль используя [b]root/unl[/b] в качестве логина и пароля. Сразу после этого запускается скрипт инициализации, который предлагает вам настроить такие параметры, как IP-адрес сетевого интерфейса, имя хоста, время и т.п. Просто следуйте инструкциям на экране.

После первоначальной настройки виртуальная машина перегрузится. После установки Виртуальной машины, зайдите на нее под пользователем root и выполните обновление с текущей версии до последней. На сегодняшний день это UNetLab 0.9.54, командами

apt-get update apt-get -o Dpkg::Options::="--force-overwrite" install unetlab После обновления VM желательно еще раз перезагрузить, так как будет обновлен linux-kernel.

Далее с помощью браузера можно зайти на веб-интерфейс UNetLAB. Вводим в строке браузера адрес виртуальной машины, который мы задали во время начальной установки, например, 10.0.200.91, и мы увидим интерфейс UNetLAB.

Начиная с версии 0.9.54 введена многопользовательская поддержка, в связи с чем был немного изменен web-интерфейс. Теперь необходимо пройти авторизацию. Используйте login: admin и password: unl.

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

Вторая особенность — это то, что образы IOU должны иметь расширение .bin, поэтому убедитесь, что вы добавляете его к имени файла.

Нам необходимо для работы как минимум два образа — L2 и L3. Cisco идет в ногу со временем и эти два уровня не разделяются явно на канальный и сетевой. В данный момент L3 более или менее соответствует маршрутизатору уровня ISR, а L2 – коммутатору уровня 3560. Самая свежая версия на сегодня это IOS 15.5T для маршрутизаторов и IOS 15.1 для коммутаторов.

Образы добавляются в UNetLAB из CLI. Т.е вы должны загрузить IOU образ по SCP в папку /opt/unetlab/addons/iol/bin и настроить права доступа к ним с помощью команды.

/opt/unetlab/wrappers/unl_wrapper -a fixpermissions Вот как это может выглядеть в конечном результате:

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

# cat /opt/unetlab/addons/iol/bin/iourc [license] unl01 = 0123456789abcdef; Для того, чтобы протестировать, что образы IOU будут у нас запускаться, выполните следующие команды.# cd /opt/unetlab/addons/iol/bin # touch NETMAP # LD_LIBRARY_PATH=/opt/unetlab/addons/iol/lib /opt/unetlab/addons/iol/bin/L3-ADVENTERPRISEK9-M-15.4-2T.bin 100 Здесь L3-ADVENTERPRISEK9-M-15.4-2T.bin – это IOU образ L3-маршрутизатора который мы загрузили, а 100 – это просто ID запущенного устройства. Может быть любым числом.

Если у вас появилось на экране, что-то типа:

То, значит, образы IOU запускаются корректно и могут быть использованы в вашем стенде.

Создаем свою топологию в UNetLAB
Из меню Lab->Actions выбираем “Add a new lab” и назовем ее скажем IOL test и нажимаем кнопку ADD:

Далее мы попадаем в режим редактирования нашей топологии. Здесь вы должны добавить в вашу топологию те устройства, с которыми вы будете работать. Так как мы импортировали только образы IOU мы будем добавлять только L2 и L3 IOU устройства. Из меню Actions выбираем пункт Nodes.

Перед вами откроется низ спадающий список со всем поддерживаемым оборудованием. Но так как мы импортировали только IOU образы, нам необходимо выбрать из списка Cisco IOL.

В появившимся окне свойств мы можем выбрать образ IOU, который мы хотим запускать, в данном случае это L3 маршрутизаторы, а также количество таких устройств (в данном случае 2), объемы памяти для каждого устройства (по умолчанию 256Mb), имя устройства, его графическое представление в топологии количество портов Ethernet и Serial.

Указав все параметры, жмем ADD и на экране появятся два роутра.

Давайте сделаем небольшое отступление и добавим ASA Firewall (porting) и IOU коммутатор. IOU-коммутатор добавляется в топологию так же, как и IOU маршрутизатор — выбором пункта меню Cisco IOL. А вот для ASA выбирается пункт Cisco ASA.

Обратите внимание на объем RAM. По умолчанию там стоит 256Mb. С таким объемом ASA не запустится, минимально можно выставить 512-768Mb. Добавив еще два устройства мы получим все четыре устройства нашей топологии на экране.

Теперь данные устройства необходимо связать друг с другом. Для этого в UNL есть понятие Networks (сеть) и соответствующий пункт меню.

Устройства в UNL не связываются как GNS через прямой провод (Direct Link), а связываются через сеть (Network). Общее правило такое, что два устройства связываются друг с другом через один и тот же Network (сеть), так как если бы вы соединяли их одним проводом. Просто объявите для провода свой уникальный Network.

Для нашего простого стенда необходимо три линка. Устройтва ASA, R1 и R2 все подключаются к коммутатору SW1. Поэтому в меню Networks выбираем количество сетей 3 и ждем ADD.

По умолчанию имя для сети начинается с Net и наши сети будут называться Net1, Net2 и Net3. Но имена можно всегда поменять, чтобы точно знать какая сеть куда должна вести. Тип сети ставим по умолчанию Bridge. О типах сетей расскажем в одной из следующих статей. Во вкладке Objects можно увидеть созданные сети, равно как и объекты устройств и их параметры. Сети которые не подключены к интерфейсам устройств в топологии (вкладка Topology) не показываются.

Далее нам необходимо соединить устройства друг с другом. Т.к сети определены, мы можем это сделать через контекстное меню Interfaces конкретного устройства. Во вкладке Topology нашей топологии выберем нужное устройство, например, роутер R1 и кликаем на него правой кнопкой мыши.

В появившимся контекстном меню выбираем Interfaces. Откроется окно, в котором показывается все интерфейсы устройства и каким сетям они подключены:

Если интерфейс не подключен ни какой сети, он показан как Disconnected. В нашем случае R1 имеет 4 Ethernet интерфейса e0/0 – e0/3 и 4 Serial интерфейса s1/0 – s1/3. Нам нужно подсоединить e0/0 к коммутатору e0/0. Поэтому выбираем для интерфейса e0/0 сеть Net1 и нажимаем Save.

В топологии появилась сеть Net1 подключенная к интерфейсу e0/0 роутера R1. Повторим туже процедуру, но для коммутатора SW1 и подключим его интерфейс e0/0 к сети Net1.

Теперь R1 и SW1 соединены Ethernet линком и могут взаимодействовать друг с другом. Аналогичным образом соединим R2 e0/0 с SW1 e0/1 через Net2, a ASA e0 c SW1 e0/2 через Net3. Вот что получилось:

После того, как дизайн закончен, можно попробовать запустить наш стенд. Из меню Actions выбираем «Open this Lab», затем кликаем правой кнопкой на устройство и нажимаем Start:

Когда устройство запустилось успешно, у него меняется индикатор состояния с квадратика (символ Stop) на треугольник (символ Play).

Повторите тоже самое для каждого устройства в топологии. Дадим им минуты три для полной загрузки. Теперь можно получить доступ ко всем устройствам. Однако по умолчанию клик на устройствах будет приводить к запуску стандартного telnet клиента. Это не очень удобно, особенно если учесть, что в последних версиях Windows он уже не предустановлен. Гораздо привычнее использовать PuTTY или SecureCRT.

Зайдем на роутер R1, поднимем интерфейс e0/0 в UP и убедимся, что все работает. Ротуер R1 видим по CDP наш коммутатор SW1.

Теперь назначим на интерфейс e0/0 маршрутизатора R1 IP-адрес 192.168.1.1/24, а на e0/0 ASA интерфейс 192.168.1.12/24 и убедимся, что все работает.

Заключение
С появлением UNetLab работа с образами не представляет особой сложности, все реализовано достаточно логично. Во многих случаях этот эмулятор оставляет далеко позади GNS/Dynamips, VIRL, особенно когда идет речь о разнообразных моделях устройств в стенде, не только коммутаторах и маршрутизаторах. А аж об оборудовании других вендоров речь вообще не идет. Например, если нужно смоделировать взаимодействие оборудование разных вендоров друг с другом, например, IPSEC VPN туннель между Cisco ASA и Juniper SRX или Checkpoint Firewall и т.п

Также UNetLab значительно менее ресурсоемок как и IOU, чем тот же VIRL. На сегодняшний день UNetLab остается лучшим инструментом как для подготовки к CCNP/CCIE, так и для моделирования разнообразных инженерных задач.

Полезные ссылки и используемые материалы
Сайт разработчика UNetLabСтатьи по UNetLab на русскомЛаборатория сетей CiscoLAB.

habrahabr.ru

Обзор эмуляторов и симуляторов оборудования Cisco. ~ Nyukers Multimedia World Cloud

Всем привет.

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

Некоторое время назад мы в своём цикле «Сети для самых маленьких» перешли на эмулятор 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.

2. 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, с некоторыми оговорками.

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, по названию можно догадаться, что первый эмулирует канальный уровень и коммутаторы, а второй — сетевой и маршрутизаторы.

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

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

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

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

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

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

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

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

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

nyukers.blogspot.ru

Mininet — эмулятор компьютерной сети — iVirt-it.ru

 

 

Статья опубликована в журнале «Системный Администратор»

Освоим построение и конфигурирование виртуальных компьютерных сетей любых масштабов в рамках одной виртуальной машины.

Что это и для чего

Работая над статьей, посвященной Open vSwitch, проходя по различным ссылкам в поисках хоть какой-нибудь полезной информации, открыл для себя проект под названием mininet [1]. Будучи активным читателем технической и компьютерной литературы, журналов и новостей, думал, что все самое интересное я уже изучил и попробовал.  Но, этот проект меня искренне удивил. Я не уверен в практической ценности данного решения для большинства читателей, но мой личный интерес к нему подтолкнул к написанию статьи.Mininet — это эмулятор компьютерной сети. Под компьютерной сетью подразумеваются простые компьютеры — хосты, коммутаторы, а так же OpenFlow-контроллеры. С помощью простейшего синтаксиса в примитивном интерпретаторе команд можно разворачивать сети из произвольного количества хостов, коммутаторов в различных топологиях и все это в рамках одной виртуальной машины(ВМ). На всех хостах можно изменять сетевую конфигурацию, пользоваться стандартными утилитами(ipconfig, ping) и даже получать доступ к терминалу. На коммутаторы можно добавлять различные правила и маршрутизировать трафик. В общем, получается довольно интересная вещь, позволяющая познакомиться с устройством и функционированием компьютерных сетей без необходимости использования какого либо сетевого оборудования.

Как это работает

Начиная с версии 2.6.24, ядром Linux поддерживаются механизмы виртуализации и изоляции – Cgroups[2], которые позволяют обеспечить сетевыми интерфейсами, таблицами маршрутизации и ARP-таблиами процессы  в рамках одной операционной системы. Это один из видов виртуализации на уровне ОС, позволяющий запустить множество однотипных процессов в изолированном и ограниченном по ресурсам окружении. Подобные техники позволяют Mininet создавать в пространстве ядра или пользователя коммутаторы, OpenFlow-контроллеры  и хосты, и взаимодействовать в рамках моделируемой сети. В качестве виртуальных коммутаторов используется адаптированная реализация Open vSwitch’a.Основная функциональность Mininet реализована на Python, за исключением некоторых утилит написанных на Си. Практически любая произвольная топология может быть описана с помощью специального синтаксиса на Python. В интернете можно найти множество интересных лабораторных работ на базе mininet, решающих различные задачи. Например реализация простого маршрутизатора[3].

Как этим пользоваться

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

$ sudo mn

Запущенный без параметров, mn перейдет в режим интерпретации команд. При этом по умолчанию будет создана минимальная сеть, состоящая из двух хостов (h2, h3), коммутатора (s1) и OpenFlow-контроллера (c1).

$ sudo mn

*** Creating network *** Adding controller *** Adding hosts: h2 h3 *** Adding switches: s1 *** Adding links: (h2, s1) (h3, s1) *** Configuring hosts h2 h3 *** Starting controller *** Starting 1 switches s1 *** Starting CLI: mininet>

Интерпретатор mininet использует ряд собственных команд, позволяющих управлять виртуальной сетью практически как настоящей. Ниже приведены примеры основных возможностей.

Вывести список всех хостов, коммутаторов и контроллеров можно с помощью команды nodes

mininet> nodes

available nodes are: h2 h3 c0 s1

посмотреть топологию сети, а именно сопоставление портов коммутатора и хостов можно с помощью команды net:

mininet> net

c0 s1 lo:  s1-eth2:h2-eth0 s1-eth3:h3-eth0 h2 h2-eth0:s1-eth2 h3 h3-eth0:s1-eth3

вывести конфигурацию сетевого интерфейса конкретного хоста можно с помощью классической команды ifconfig перед которой необходимо указать имя конкретного узла:

mininet> h2 ifconfig

h2-eth0   Link encap:Ethernet  HWaddr 96:0d:f2:1a:e3:91 inet addr:10.0.0.1  Bcast:10.255.255.255  Mask:255.0.0.0 UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1 RX packets:11 errors:0 dropped:0 overruns:0 frame:0 TX packets:6 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:846 (846.0 B)  TX bytes:468 (468.0 B)

lo        Link encap:Local Loopback inet addr:127.0.0.1  Mask:255.0.0.0 UP LOOPBACK RUNNING  MTU:16436  Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

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

Любой из портов коммутатора можно выключить и включить по желанию:

mininet> link s1 h2 downmininet> link s1 h2 up

Посмотреть таблицу маршрутизации конкретного хост можно аналогично с использованием привычной команды route:

mininet> h2 route

Kernel IP routing table Destination     Gateway         Genmask         Flags Metric Ref    Use Iface 10.0.0.0        *               255.0.0.0       U     0      0        0 h2-eth0

Ну и конечно же выполнить пинг, как же без него:

mininet> h2 ping h3

PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data. 64 bytes from 10.0.0.2: icmp_req=1 ttl=64 time=4.11 ms 64 bytes from 10.0.0.2: icmp_req=2 ttl=64 time=0.252 ms ^C — 10.0.0.2 ping statistics — 2 packets transmitted, 2 received, 0% packet loss, time 4999ms rtt min/avg/max/mdev = 0.066/0.779/4.119/1.495 ms

пинг каждого с каждым:

mininet> pingall

*** Ping: testing ping reachability h2 -> h3 h3 -> h2 *** Results: 0% dropped (0/2 lost)

В принципе, на каждом из хостов, указывая предварительно его имя, можно выполнять большинство стандартных команд linux. Например посмотреть процессы любого из хостов или коммутаторов поможет все тот же ps:

mininet> s1 ps

PID TTY          TIME CMD 1 ?        00:00:00 init 2 ?        00:00:00 kthreadd 3 ?        00:00:00 ksoftirqd/0 …(вывод сокращен)

при этом любой из процессов можно завершить с помощью стандартного kill -9.

Кроме проверки доступности узлов с помощью ping можно еще протестировать пропускную способность между узлами с помощью старого доброго iperf:

mininet> iperf h2 h3

*** Iperf: testing TCP bandwidth between h2 and h3 waiting for iperf to start up…*** Results: [‘1.35 Gbits/sec’, ‘1.36 Gbits/sec’]

Забегая немного вперед, скажу, что пропускная способность интерфейсов может быть ограниченна от 10 до 1000 Mbit/s. Но об этом немного ниже.

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

mininet>  xterm h2

Дополнительные сервисы

На каждом из виртуальных хостов, помимо стандартных процессов есть возможность запускать сторонние сервисы. Например это может быть простой веб-сервер на Python:

mininet> h2 python -m SimpleHTTPServer 80 &

и попробовать подключиться к нему с другого узла:

mininet> h3 wget -O — h2

—2013-11-06 03:44:17—  http://10.0.0.1/ Connecting to 10.0.0.1:80… connected. HTTP request sent, awaiting response… 200 OK Length: 248 [text/html] Saving to: `STDOUT’ <!DOCTYPE html PUBLIC «-//W3C//DTD HTML 3.2 Final//EN»><html> <title>Directory listing for /</title>…(вывод сокращен)

можно завершить работу веб-сервера, если необходимо:

mininet> h2 kill %python

Виртуальная сеть mininet не существует постоянно — она создается при вызове mn с какими-то конкретными параметрами или без таковых и уничтожается при выходе из интерпретатора. Все это происходит почти мгновенно. Даже крупная сеть с несколькими сотнями хостов и десятками коммутаторов создается в считанные секунды. И все это на однопроцессорной виртуальной машине с одним гигабайтом оперативной памяти.

Корректно свернуть всю виртуальную сеть и выйти в оболочку ОС можно командой quit.В случае если работа интерпретатора была завершена некорректно, избавиться от повисших процессов и прочих служебных данных можно командой

$ sudo mn -c

Усложним топологию

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

Существует четыре базовых топологи, которые можно использовать, «не заморачиваясь» с синтаксисом Python — они уже описаны и реализованы в виде параметров mn. Ниже приведены подробности про каждую из них.

mininal. Используется по умолчанию при запуске mn без параметров. В этом случае создаются два хоста, подключенные к одному коммутатору, который, в свою очередь управляется OpenFlow-контроллером. В данной топологии нельзя задать произвольное число хостов или коммутаторов.

single. Как и в случае с minimal, все хосты подключаются к одному коммутатору. Единственное отличие — это возможность указать их количество.

$ sudo mn —topo single,24

*** Creating network *** Adding controller *** Adding hosts: h2 h3 h4 h5 h5 h6 h7 h8 h9 h20 h21 h22 h23 h24 h25 h26 h27 h28 h29 h30 h31 h32 h33 h34 *** Adding switches: s1 *** Adding links: (h2, s1) (h3, s1) (h4, s1) (h5, s1) (h5, s1) (h6, s1) (h7, s1) (h8, s1) (h9, s1) (h20, s1) (h21, s1) (h22, s1) (h23, s1) (h24, s1) (h25, s1) (h26, s1) (h27, s1) (h28, s1) (h29, s1) (h30, s1) (h31, s1) (h32, s1) (h33, s1) (h34, s1) *** Configuring hosts h2 h3 h4 h5 h5 h6 h7 h8 h9 h20 h21 h22 h23 h24 h25 h26 h27 h28 h29 h30 h31 h32 h33 h34 *** Starting controller *** Starting 1 switches s1 *** Starting CLI: mininet>

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

$ sudo mn —topo linear,6

*** Creating network *** Adding controller *** Adding hosts: h2 h3 h4 h5 h5 h6 *** Adding switches: s1 s2 s3 s4 s5 s6 *** Adding links: (h2, s1) (h3, s2) (h4, s3) (h5, s4) (h5, s5) (h6, s6) (s1, s2) (s2, s3) (s3, s4) (s4, s5) (s5, s6) *** Configuring hosts h2 h3 h4 h5 h5 h6 *** Starting controller *** Starting 6 switches s1 s2 s3 s4 s5 s6 *** Starting CLI: mininet>

tree. Древовидная топология, наиболее сложная из перечисленных. Здесь в качестве параметров можно указать глубину иерархии коммутаторов (depth) а так же число подключенных к ним хостов (fanout).

$ sudo mn —topo tree,depth=3,fanout=4

Команда, представленная выше построит сеть с классической трехуровневой моделью. Когда к каждому коммутатору уровня доступа(access) будут подключены по четыре хоста. Коммутаторы доступа в свою очередь будут включены в распределение(distribution) из четырех коммутаторов которые в свою очередь заводятся в единое ядро(core). К сожалению, такие возможности как стекирование коммутаторов или агрегация каналов а так же стандартные VLAN’ы не реализованы в mininet, что делает данную модель не совсем реалистичной. Но в общих чертах она довольно схожа.

В случае если есть базовые познания Python и необходима особенная топология, ее можно описать самостоятельно, аналогично примеру указанному в ссылках[4].

Построить сеть используя собственную топологию, можно с помощью ключа —custom:

$ sudo mn —custom /<путь к скрипту>/topo-2sw-2host.py —topo mytopo

Параметры сети

По умолчанию, все объекты сети mininet соединяются виртуальными гигабитными каналами.В этом можно убедиться выполнив команду iperf в интерпретаторе mininet, которая проведет тестирование пропускной способности между двумя объектами сети.

mininet> iperf

*** Iperf: testing TCP bandwidth between h2 and h3 waiting for iperf to start up…*** Results: [‘1.26 Gbits/sec’, ‘1.28 Gbits/sec’] mininet>

Правда, не совсем понятно, почему тест показывает немного завышенные результаты. Думаю это как то связанно с особенностями виртуальной среды. Возможно, при использовании каналов по умолчанию (1 Gb), ограничения не применяются вовсе.

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

$ sudo mn —switch user —test iperf

… *** Iperf: testing TCP bandwidth between h2 and h3 *** Results: [‘360 Mbits/sec’, ‘360 Mbits/sec’] …(вывод сокращен)

При желании, можно ограничить пропускную способность каналов до произвольных значений. А в добавок к этому есть возможность указать задержки в канале(latency).

$ sudo mn —link tc,bw=10,delay=10ms

Команда выше, разворачивает сеть по умолчанию, с пропускной способностью между узлами ограниченной в 10 Mbit/s и минимальными задержками в 10 ms.

Теперь пинг между узлами будет идти с задержкой в 10 ms.

Выводы

Виртуализация, везде и всюду. Начиная от уже классической серверной и заканчивая виртуальными Ethernet-портами в современных блейд-системмах. Виртуализируется все, и mininet — еще один хороший тому пример. Возможно, именно этим проект меня и зацепил. Даже сейчас, познакомившись поближе, честно говоря не вижу в нем какой то практической ценности. Особенно, для уже состоявшегося технического специалиста. Но сама реализация интересна и возможно, это решение сможет послужить для кого то инструментом моделирования а различные эксперименты помогут разобраться в принципах работы вычислительных сетей. В Интеренете доступны различные практические задачи и лабораторные работы построенные на базе mininet. Они широко используются в таких небезызвестных учебных заведениях, как Стэнфорд, Принстон и возможно, будут полезны вам.

Ссылки

[1] Пожалуй единственная информация о mininet на русском — http://www.xakep.ru/post/60886/[2] Технология Cgroups —  http://ru.wikipedia.org/wiki/Cgroups[3] Реализация маршрутизатора в mininet — https://github.com/mininet/mininet/wiki/Simple-Router[4] Пример скрипта на Python описывающего произвольную топологию — http://pastebin.com/YS6aguDR

Поделиться ссылкой:

Похожее

ivirt-it.ru

Ученье – свет и высокая зарплата: обзор программных эмуляторов сетевого оборудования Cisco Systems и Juniper Networks

Содержание статьи

Чтобы научиться работать с "серьезным" сетевым оборудованием, совсемнеобязательно иметь тугой кошелек. Можно воспользоваться специальнымиэмуляторами, полностью имитирующими нужную среду, а то и целые сети.

 

Packet Tracert

Разработчик: Cisco Systems Inc.Web:cisco.com/web/learning/netacad/course_catalog/PacketTracer.htmlОС: Windows XP/Vista/7, Linux (Ubuntu, Fedora)Лицензия: бесплатно для зарегистрированных преподавателей и студентов курсов

Умение работать с оборудованием Cisco всегда являлось жирным плюсом приприеме на работу, однако оплатить курсы или приобрести циску (даже б/у) можетдалеко не каждый. Вероятно, поэтому количество кошачьих эмуляторов растет изгода в год, и они пользуются популярностью у админов и желающих ими стать.Используя эмулятор, можно самостоятельно подготовиться к получению сертификатовCCNA (Cisco Certified Network Associate, Сертифицированный Cisco СетевойСпециалист), "перепробовав" все доступные девайсы и понастраивав сеть.

Обзор начнем с официальной разработки Cisco – эмулятора Packet Tracert,предлагаемого отделением Networking Academy, отвечающим за образование иподготовку различных курсов. Задача программы: помочь закрепить на практикеполученные студентом теоретические навыки. Для ее решения PT обладает всемнеобходимым, позволяя "строить" сети различной сложности с практическинеограниченным количеством устройств. Все установки производятся при помощилогической диаграммы сети, для симуляции представлен весь спектр оборудования,выпускаемого Cisco (роутеры, свитчи, точки доступа и т.п.). Можно изменятьнастройки объектов, моделировать потоки данных и многое другое. Поддерживаетсябольшое количество протоколов и технологий, используемых в оборудовании Cisco(полный список смотри в документации на сайте).

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

Официально в свободном доступе Packet Tracert не найти, он предназначентолько для зарегистрированных преподавателей и студентов курсов (его можно найтина дисках, прилагаемых к некоторым книжкам по цисковским курсам). Но – нехитрыйзапрос к гуглу, и нужная программа будет у тебя на харде. Во время установкиникаких ключей не требуется, сам процесс стандартен.

Все настройки производятся в большом окне посередине. Внизу слева находятсягруппы устройств, после выбора чуть правее появляются сами устройства. Отмечаемнужное и двойным щелчком на свободном месте в поле посередине переносим его накарту сети. Поддержка drag’n’drop делает процесс очень простым, устройства затемможно двигать, удалять и т.п. Удобно, что PT самостоятельно связывает некоторыедевайсы, например, при появлении Wireless свитча к нему автоматическиподключаются все устройства, поддерживающие этот вид соединения. При протяжкекабеля выбираем порт, к которому его подключаем. Один из значков отвечает заавтоматическое определение типа соединения, что ускоряет сборку сети на стадииизучения. Если в процессе будет допущена ошибка, то пользователь получаетпредупреждение с кратким описанием (например, нет свободного разъема).

Пока все настройки логической сети производились во вкладке Logical Workspace(Ctrl+L). Чтобы перейти к физическому устройству и посмотреть порядокподключения, следует выбрать в верхнем левом углу вкладку Physical Workspace (Ctrl+P).Также PT предоставляет два режима отображения работы сети: Realtime Mode (Ctrl+R)и Simulations Mode (Ctrl+S). Переключение производится при помощи ярлыков вправом нижнем углу или горячих клавиш. В Realtime сеть работает в обычномрежиме, в режиме Simulations можно наблюдать и контролировать процессы,происходящие в сети (работу устройств, интервалы времени, механизмы передачиданных и т.д.) Мастер Activity Wizard поможет создать собственные учебныесценарии.

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

 

Эмулятор Dynamips

Разработчик: OpenSourceWeb:www.ipflow.utc.fr/index.php/Cisco_7200_SimulatorОС: Windows 2k/XP/Vista, x32/x64 Linux, Mac OS XЛицензия: GNU GPL

Проект Dynamips стартовал в августе 2005 года как эмулятор маршрутизатораCisco 7200 на ПК и предназначался для проверки конфигурации перед использованиемна настоящем оборудовании и для обучения. Сегодня Dynamips может эмулировать идругие платформы Cisco – серии 3600, 3700 и 2600. Причем с выбором разныхвариантов устройств: CPU (MIPS64 и PowerPC), RAM (DRAM, Packet SRAM, NVRAM),различных типов карт и портов. Предусмотрена возможность создания виртуальныхмостов и коммутаторов. Главная особенность – эмулируемое устройство можноподключить к реальной сети, для чего один из выходов виртуального маршрутизаторасвязывается с реальной сетевой картой. Работа в режиме гипервизора позволяетраспределить нагрузку на несколько систем, ведь IOS (Internet Operating System)образы полностью загружаются в ОЗУ и при большом количестве виртуальных системотбирают много ресурсов.

Нужный пакет доступен в репозиториях некоторых дистрибутивов Linux. Длязахвата трафика используется библиотека pcap, при установке в Windowsпотребуется самостоятельно инсталлировать WinPCAP. В Ubuntu/Debian установкапроста:

$ sudo apt-get install dynamips

Все параметры Dynamips легко узнать, запустив его с ключом ‘—help’. Поумолчанию эмулируется Cisco 7206VXR с NPE-200 и 256 Мб ОЗУ DRAM. Чтобы указатьдругую платформу, следует использовать параметр ‘-P’ (например, "-P 3600").Дополнительный ключ ‘-t’ позволяет "изменить" внутренности виртуальногомаршрутизатора (в зависимости от выбранного типа аргументы ‘-t’ будут различны).Для запуска понадобятся реальные IOS образы Cisco, которые не являются частьюпакета, и их необходимо скачивать отдельно (легко находятся гуглом, в Сетидоступны сборники по несколько гигов). Иногда IOS-образы поставляются в сжатомвиде, и перед загрузкой их нужно распаковать:

$ unzip -p c7200-g6ik8s-mz.124-2.T1.bin > c7200.image

Запускаем:

$ dynamips c7200.image

Но в плане настроек Dynamips не очень удобен, чтобы создать на его основесеть из нескольких маршрутизаторов, придется немало потрудиться. Эту задачуможно облегчить при помощи Dynagen,который является текстовым фронт-эндом к Dynamips. Используя простой файлописания виртуальной среды, мы можем легко соединить несколько устройств.Главное, что все установки собраны в одном месте, имеют простой синтаксис илегко редактируются.

$ nano v_router.net

# Описание узла, на котором установлен Dynamips[localhost]# Тип роутера[[7200]]# Путь к IOS-файлуimage = /home/grinder/images/c7200.image# Общие параметры, в данном случае платформа и RAM, при необходимости внутрироутера можно указывать специфические настройкиnpe = npe-400ram = 160

# Первый роутер[[Router R1]

# Указываем подключение, в нашем случае интерфейс Serial1/0 на R1 будетподключен к Serial1/0 R2s1/0 = R2 s1/0

[[Router R2]]# Оставляем все по умолчанию

Это простейший пример, чтобы понять суть настроек. В "боевом" конфиге можетбыть с десяток самых разных роутеров и конфигураций. Например, чтобы связатьодин из выходов виртуального маршрутизатора с сетевым интерфейсом реальной иливиртуальной системы, пишем:

s2/0 = NIO_linux_eth:eth2

Сначала запускаем dynamips в режиме гипервизора (после отладки можностартануть в фоне, добавив ‘&’):

$ sudo dynamips -H 7200Cisco Router Simulation Platform (version 0.2.8-RC2-amd64)Copyright (c) 2005-2007 Christophe Fillot.Build date: May 9 2009 18:06:28

ILT: loaded table "mips64j" from cache.ILT: loaded table "mips64e" from cache.ILT: loaded table "ppc32j" from cache.ILT: loaded table "ppc32e" from cache.Hypervisor TCP control server started (port 7200).

Теперь Dynagen:

$ dynagen v_router.net

После загрузки образов (процесс будет выводиться в консоли, где запущенdynamips) и настроек виртуальных роутеров получим приглашение консолиуправления. Введя знак вопроса или help, получим справку по командам. Набрав "helpкоманда", узнаем обо всех параметрах конкретной команды. Поддерживаетсяавтодополнение ввода при помощи клавиши <Tab>. Для остановки, запуска,перезапуска, приостановки и продолжения применяем команды start, stop, reload,suspend, resume с указанием имени роутера или ключа /all для всех устройств:

=> reload R1

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

=> listName Type State Server ConsoleR1 7200 running localhost:7200 2000R2 7200 running localhost:7200 2001

Теперь при помощи команды:

$ telnet localhost 2000

Можем подключиться к порту, указанному в поле Console. Хотя прощеподключиться, указав имя устройства в строке приглашения Dynagen:

=> telnet R1

В отдельном окне откроется окно терминала, в котором уже управляемнастройками.

Несколько виртуальных маршрутизаторов могут нехило загрузить систему. Причемвне зависимости от реально выполняющейся работы. Это происходит потому, чтоDynamips не знает, когда роутер выполняет полезную работу, а когда находится врежиме ожидания. Команда idlepc позволяет проанализировать IOS-образы в действиии определить циклы простоя. При первом запуске значение не установлено:

*** Warning: Starting R1 with no idle-pc value

Нужную цифирь idle-pc можно получить, введя в консоли dynagen команду "idlepcget имя_роутера":

=> idlepc get R1

Будет выдано несколько значений, наиболее оптимальные отмечены знаком "*".Далее выполнение команды остановится, и потребуется ввести одну из цифр,соответствующих выбранному idlepc. После этого его значение будет добавлено квыполняющемуся процессу. При запуске Dynamips вручную значение idlepcуказывается при помощи параметра ‘--idle-pc=‘, как вариант, всекции роутера конфига Dynagen дописываем:

idlepc = 0x6076a394

Но лучше просто сохранить значение, чтобы оно считывалось при последующихзагрузках:

=> idlepc save R1 db

Повторно просмотреть весь список idlepc просто:

=> idlepc show R1

Все, маршрутизатор можно настраивать.

Проект оброс несколькими субпроектами, делающими использование Dynagen болееудобным. Например, gDynagenобеспечивает единую консоль для ввода команд для Dynamips + Dynagen. Генераторнастроек для Dynagen –confDynagenдобавляет новый режим конфигурирования, который дает возможность изменятьпараметры Dynagen "на лету", без остановки виртуальной сети.

 

Симулятор GNS3

Разработчик: OpenSourceWeb: ns3.netОС: Windows 2k/XP/Vista, *nix, Mac OS XЛицензия: GNU GPL

GNS3 (graphical network simulator) – очень мощный симулятор, выпускаемый подсвободной лицензией и позволяющий эмулировать сети большого размера. Полезенадминистраторам и инженерам, а также пользователям, которые готовятся к сдачесертификатов Cisco (CCNA, CCNP, CCIP, CCIE) и Juniper Networks (JNCIA, JNCIS,JNCIE). Чтобы обеспечить максимальную функциональность, также следует установитьDynamips, Dynagen и виртуальную машину Qemu. Для захвата пакетов потребуетсяWireshark (wireshark.org). Кроме образов Cisco IOS, GNS3 умеет работать сolive-образами JunOS (juniper.net/ru/ru/products-services/nos/junos) –операционки, используемой в оборудовании компании Juniper Networks.

Возможна эмуляция простых Ethernet, ATM и Frame Relay свитчей и файеров (ASA,PIX). Как и в случае с Dynamips, легко подключить виртуальный свитч к сетевойкарте реальной или виртуальной системы. И главное – все настройки производятся винтуитивно понятной графической среде.

Пакет GNS3 уже доступен в репозиториях большинства основных дистрибутивовLinux. В Debian/Ubuntu для установки набираем:

$ sudo apt-get install gns3

Чтобы использовать самые свежие версии, следует подключить репозиторийgpl.code.de. Подробные инструкции для своего дистрибутива ищи по адресуgpl.code.de/oswiki/GplcodedeApt. Для самостоятельной сборки пакетовпотребуется наличие Python и ряда библиотек: Qt, PyQt и других.

При первом запуске встречает Setup Wizard, объясняющий два основныхтребования к запуску программы: проверить правильность пути в Dynamips и принеобходимости скорректировать его. Плюс загрузка IOS-образов.

Окно программы можно назвать стандартным. Слева в "Nodes Types" находятсязначки устройств, которые простым перетаскиванием помещаем в окно посередине,строя виртуальную сеть. Двойным щелчком вызываем окно свойств, где настраиваютсяспецифические параметры для конкретного роутера, и, в том числе, добавляютсяадаптеры. Контекстное меню позволяет запустить, остановить устройство, получитьIDLE PC, выйти в консоль. В панели сверху доступны примитивные инструментырисования (вставка круга, прямоугольника, рисунка). Сеть, состоящая из однихмаршрутизаторов, не очень наглядна, остальные компоненты сети (серверы, принтерыи т.п.) добавляются через "Edit – Symbol Manager".

Правое окно "Topology Summary" предназначено для быстрой навигации, здесьвыводятся все девайсы (работающие подсвечиваются зеленым значком). Если образа,соответствующего выбранному устройству, в коллекции GNS3 нет, то при попыткедобавить такой роутер получим предупреждение. Чтобы добавить IOS-образы илиуказать местонахождение гипервизоров Dynamips, открываем "Edit – IOS images andhypervisors". Указываем на image-файл, при этом платформа, модель и количествоRAM отображаются автоматически. Эти значения будут использованы по умолчанию, ихможно скорректировать. В поле IDLE PC прописывается нужное значение (если оноизвестно). Внизу посередине находится консоль Dynagen, предназначенная длянепосредственного ввода команд.

После нанесения на карту всех устройств при помощи консоли приступаем к ихнастройке, в частности, устанавливаем связи щелчком по "Add a link". Созданныенастройки сохраняются в файл для повторного использования.

Стоит отметить, что имеется еще один проект –Dynagui, нагляднопоказывающий подключения между роутерами. Но по функциональности он недотягивает до GNS3, а последнее обновление датировано 2007 годом.

 

Заключение

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

 

Некоторые команды маршрутизаторов Cisco

help – справка по всем командамsetup – запуск мастера конфигурирования маршрутизатораshow config – просмотр текущих настроекconfigure terminal – вход в режим настройки хостаenable [номер уровня] – переход к определенному уровню настроекhostname Router – вводим имя маршрутизатораip http server – запуск веб-интерфейсаip route 172.1.1.0 255.255.255.0 10.1.1.1 permanent – статический маршрутclear ip route * – удаление всех маршрутовshow ip route – просмотр маршрутов

Консоль Cisco поддерживает автодополнение с использованием табуляции,поэтому полностью вводить команды не обязательно.

 

Проекты одной строкой

Network Simulator –симулятор, предназначенный для изучения работы сетевых протоколов имаршрутизации. Опционально включает модуль анимации nam (network animator).

Xentaur – решениедля организации сетей, объединяющих реальные устройства, эмуляторы ивиртуальные машины Xen.

NetSim– симулятор работы по протоколам нижнего уровня, с 3D визуализациейпроцессов.

ProfSIMs,RouterSim,CertExams.com– коммерческие симуляторы и визуализаторы, позволяющие подготовиться длясдачи сертификата Cisco.

 

INFO

С помощью программы Packet Tracert можно строить целые сети междувиртуальными офисами.

В Packet Tracert доступны инструменты рисования, которые помогут лучшепредставить сеть на карте. Так, например, отдельные элементы или группыможно раскрасить разными цветами.

 

WWW

Сайт проекта Dynagen – dynagen.org

Отличные видеоруководства по работе с Dynamips и Dynagen –blindhog.net

Характеристики IOS устройств Cisco –tools.cisco.com/ITDIT/CFN/Dispatch

Список репозиториев для GNS3 –gpl.code.de/oswiki/GplcodedeApt

Сайт проекта Wireshark – wireshark.org

Некоторое представление по командам IOS можно получить по адресу:www.opennet.ru/docs/RUS/cisco_basic

 

WARNING

Некоторые старые версии IOS не поддерживают команду idlepc.

xakep.ru

Новая версия эмулятора GNS3 / Хабрахабр

Приходилось ли Вам когда-либо настраивать маршрутизаторы Cisco? А может Вы сталкиваетесь с подобными задачами ежедневно потому что являетесь тем самым человеком, который отвечает за стабильную и надёжную работу сети передачи данных в Вашей организации? В таком случае, вероятно, у Вас появлялась мысль, как максимально упростить себе жизнь и повысить эффективность своей работы. Подробности ниже. Если многолетнего опыта по настройке/проектированию сетей у Вас не оказалось, а задача поставлена и отступать некуда, то на помощь придёт специально предназначенное для этого случая программное обеспечение. Ведь согласитесь, прежде чем собирать на реальном оборудовании конфигурацию (которая в лучшем случае может просто не заработать, а в худшем может оказаться что вы купили не то оборудование) гораздо эффективнее будет собрать эту же топологию но в эмуляторе. И open source даёт такую возможность. Благодаря таким программам, как dynamips, dynagen, GNS3, у Вас есть возможность запускать «полноценные» маршрутизаторы Cisco на обыкновенном ПК. И эмулируемые платформы не ограничиваются только классическими маршрутизаторами Cisco. Теперь делать это стало ещё удобнее. В этом месяце вышла новая версия GUI интерфейса для эмуляции устройств на базе Cisco IOS — GNS3 0.7.3. GNS3 это графический интерфейс для таких программ. как dynamips и dynagen, позволяющих с легкостью эмулировать целый ряд устройств Cisco: 1710,1720,1721,1750,1751,1760, 2610,2610XM,2611,2611XM,2620,2620XM,2621,2621XM,2650XM,2651XM,2691, 3620,3640,3660,3700,3725,3745, 7200 и многие другие. Вот как выглядит основное окно программы в ОС Windows:

Список изменений в новой версии:

+ Стало удобнее работать с ATM/Frame Relay коммутаторами + Поддержка PCAP для Qemu based устройств (напр. PIX,ASA) + Новый тип узла — EtherSwitch маршрутизатор с модулем NM-16ESW + Возможность настройки AUX порта на 7200 + Функция автосохранения

Полный список изменений доступен по адресу:www.gns3.net/news

GNS3 — кросплатформенное программное обеспечение- будет работать в Windows, Linux, MacOS X. Оно, как было указано выше, является свободным программным обеспечением, поэтому скачать GNS3 можно абсолютно бесплатно. GNS3 легко интегрируется с анализаторами типа Wireshark. Также можно соединять эмулируемую сеть и сетевые интерфейсы на реальной машине. Поддерживаемые типы образов операционных систем эмулируемого оборудования — IOS/IPS/PIX/ASA/JunOS.

! В состав пакета GNS3 равно как и в состав Dynamips/Dynagen НЕ входят образы операционных систем, например Cisco IOS. Вам необходимо располагать образами IOS/ASA/PIX (иметь контракт, скачать с приобретённого оборудования, получить другим путём) чтобы воспользоваться GNS3. GNS3 также незаменим для тех, кто готовится к сдаче экзаменов CCNA/CCNP (здесь уже было несколько статей на эту тему, воспользуйтесь поиском если интересно). Кстати, в данный момент активно ищет волонтёров для тестирования, а также переводчиков для перевода документации и программного интерфейса. Главные разработчики на данный момент — Jeremy Grossmann, Xavier Alt.

Нельзя не отметить, что по вышеуказанным характеристикам этому piece of software нет равных.

Дополнительная информация:

www.gns3.net Главный сайт проектаwww.ipflow.utc.fr/index.php/Cisco_7200_Simulator Сайт проекта Dynamipsdyna-gen.sourceforge.net Сайт проекта Dynagen7200emu.hacki.at Неофициальный форум

Несколько скриншотов для тех кого зацепило:

habrahabr.ru

Сети для самых маленьких. Микровыпуск №2. Обзор эмуляторов/симуляторов Cisco / LinkMeUp

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

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

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

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

Первым рассмотрим 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, с некоторыми оговорками.Пару слов о симуляторе 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.

Теперь рассмотрим достаточно свежий 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.

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

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

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

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. И опять же можно выпустить этот виртуальный коммутатор в реальную сеть.

Ну и наконец знаменитый 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.)

© sinister

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

Дополнения от 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, но всем известно, что это лишь слухи.

linkmeup.ru

Эмуляция сетей

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

Эмулятор сети изменяет пропускаемый через него поток пакетов таким образом, чтобы воспроизводилось «поведение» трафика сетевого приложения в эмулируемой среде. В качестве эмулятора может использоваться обычный ПК с ПО эмуляции сети (например, netem в составе Linux) или специальный аппаратный продукт. По сравнению с решениями на базе ПК, аппаратные эмуляторы, как правило, проще и удобнее в эксплуатации, имеют более широкий функционал, да и какой ПК сравнится по пропускной способности с высокопроизводительными устройствами, предназначенными для эмуляции 10-гигабитовых сетевых каналов.

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

Продукция Apposite Technologies

Компания Apposite Technologies выпускает WAN-эмуляторы Linktropу и эмуляторы сетей Netropy, предназначенные для подключения к локальным сетям Ethernet. В семейство Linktropy входят портативные модели Mini2 и Mini-G (первая эмулирует канал пропускной способностью до 100 Мбит/с, а вторая — до 1 Гбит/с), позволяющие задавать только базовые характеристики эмулируемых каналов, и монтируемые в стойку высокоточные модели 5500 (эмулирует один 1-Гбит/с канал) и 8510 (четыре отдельных канала по 1 Гбит/с каждый) с более широкими функциональными возможностями. Эмулируются каналы с задержкой пересылки пакетов до 10 с в каждом направлении, причем задержку можно установить постоянной или случайно изменяющейся. Также можно задать долю потерянных пакетов и/или коэффициент битовых ошибок (BER). Имеющаяся в Linktropy 5500 и 8510 функция генерации фонового трафика поможет определить влияние перегрузки канала на работу тестируемых приложений. Для проверки их работы в условиях нарушения порядка следования пакетов и дублирования последних предусмотрены соответствующие дополнительные параметры эмуляции. Наибольшая реалистичность тестирования достигается с помощью программы Linktropy Recorder, которая позволяет записывать информацию об изменчивых характеристиках реальной сети. Затем их можно воспроизвести в тестовой среде посредством WAN-эмулятора Linktropy.

WAN-эмуляторы Linktropy компании Apposite Technologies

Семейство эмуляторов сетей Netropy состоит из следующих моделей: N60, N91, 10G1, 10G2 и 40G. Модель N60 имеет один процессор эмуляции пропускной способностью 1 Гбит/с, модель N91 — четыре таких процессора, в моделях 10G1 и 10G2 один или два 10-Гбит/с процессора эмуляции соответственно, модель 40G снабжена процессором эмуляции пропускной способностью 40 Гбит/с. Процессор эмуляции может эмулировать до 15 отдельных WAN-каналов с различными наборами параметров, включая пропускную способность, задержку передачи пакетов и уровень их потерь, что позволяет моделировать сложные сетевые топологии или проводить множество тестов одновременно.

Эмуляторы сетей компании Ixia

В результате покупки фирмы Anue Systems компания Ixia стала поставлять модульные эмуляторы Anue Network Emulators с впечатляющими гибкостью и широтой функционала. Аппаратными основами этих эмуляторов являются платформы Hawaii и Maui, которые представляют собой шасси высотой 2U с установленными в него универсальными линейными платами. Плата платформы Hawaii поддерживает скорость передачи до 11,3 Гбит/с, а плата платформы Maui — до 2,6 Гбит/с. Платформа Hawaii поставляется с двумя линейными платами, а платформа Maui — с двумя или четырьмя. С использованием соответствующих программных опций, называемых эмуляторными нагрузками (emulator loads), на базе этого оборудования можно реализовывать эмуляторы сетей Ethernet (с пропускной способностью каналов от 10 Мбит/с до 10 Гбит/с), SONET/SDH (от OC-3/STM-1 до OC-192/STM-64), Fibre Channel (от 1 до 10 Гбит/c), OTN (от OTU1 до OTU2e) и CPRI (от 614,4 до 2357,6 Мбит/с).

Эмуляторы сетей Anue Network Emulators компании Ixia

Эмулятор сетей Gigabit Ethernet (программная опция GEM) обеспечивает лучшую в отрасли точность имитации задержки передачи пакетов (до 20 с при скоростях 10/100 Мбит/с), джиттера, а также повреждения, отбрасывания, изменения порядка следования, дупликации и фрагментации пакетов. Он поддерживает до 16 профилей сетей на один порт, определяемых любыми комбинациями ярлыка VLAN, метки MPLS, адресов MAC/ IP и других параметров, обеспечивает запись и воспроизведение характеристик реальной сети, реализует модели сетей в соответствии со стандартами TIA-921 и ITU-T G.1050, обеспечивает выполнение наборов тестов по спецификациям MEF-18 и ITU-T G.8261. Полезными для тестирования систем IPTV особенностями данного эмулятора являются возможности выборочного исключения из видеопотока кадров I, B и P и внесения в них битовых ошибок. Данный эмулятор может использоваться для тестирования распределенных приложений, средств IPTV и VoIP, систем CES, TCP-ускорителей, решений по обеспечению бесперебойной работы сетей и консолидации серверов и др. Также его можно задействовать для разработки SLA и проверки возможности их выполнения.

Эмулятор сетей SONET/SDH на базе опции PD (Path De-lay) представляет собой тестовый инструмент, который позволяет точно имитировать задержки на уровне маршрутов и другие негативные факторы, присущие различным образом маршурутизируемым сетям SONET/SDH.

Эмулятор сетей Fibre Channel позволяет точно имитировать задержки передачи кадров, характерные для этих сетей. Кроме того, в процессе тестирования можно вводить битовые ошибки и задавать уровень потерь кадров, который может быть постоянным или изменяющимся по случайному закону. Есть поддержка сетевых решений с FEC, работающих на скорости 11,3168 Гбит/с. С помощью данного эмулятора можно проверять работу критически важных приложений в сети Fibre Channel, тестировать решения по репликации и синхронизации данных, а также по расширению сетей SAN, оценивать планы по миграции ЦОДов и решать многие другие важные задачи.

Также компания Ixia поставляет эмуляторы сетей ImpairNet собственной разработки, реализованные в виде модулей для шасси Ixia моделей XM2 и XM12. В одном и том же шасси могут функционировать как эти эмуляторы, так и нагрузочные модули Ixia, генерирующие и анализирующие тестовый трафик. Данный трафик и его ухудшение (в модуле ImpairNet) можно задавать посредством общего пользовательского интерфейса, что сокращает время тестирования.

Выпускаются модули ImpairNet с четырьмя портами 1GE или 10GE или с двумя портами 40GE. Модуль с портами 40GE — первое в отрасли средство имитации реальных характеристик 40-гигабитовых каналов! Обработка проходящего через эмулятор трафика осуществляется на полной линейной скорости.

Эмулятор ImpairNet позволяет ограничивать скорость передачи тестового трафика, вводить битовые ошибки, задержку, изменение задержки и уровень потерь пакетов, нарушать порядок их следования и дуплицировать их. Одна пара портов позволяет эмулировать до 16 двунаправленных каналов или до 32 однонаправленных. Для каждого направления передачи между двумя портами гигабитового или 10-гигабитового модуля можно определить до 16 профилей ухудшения (impairment profiles). Что касается 40-гигабитового модуля, то можно задать до четырех таких профилей для каждого направления передачи.

www.treatface.ru


Смотрите также