Gns3 не работает консоль

Gns3 не работает консоль

В прошлых постах мы установили и настроили нашу программу. Сегодня я предлагаю вам добавить первые устройства в GNS3, включить их и сделать простые настройки, чтобы организовать между ними связь.
Итак, приглашаю под кат…

Запускаем нашу программку. Перед нами откроется основное рабочее окно:

Здесь, в первой графе придумываем имя нашему проекту, во второй строке должен сразу прописаться путь сохранения нашего проекта (если все правильно было настроено, то папка проекта сама создастся в папке Project). Отмечем все галки (нужно для автоматического сохранения файла конфигурации и NVRAM при нажатии на Save). Нажимаем OK.
Чтобы добавить устройство, просто выберите его из списка слева и, удерживая левую кнопку мыши, перетащите его на рабочую область и отпустите кнопку. Для первого примера я выбрал две cisco 3640 (из платформы 3600). (Если у вас не привязаны IOS к устройствам, то прочитайте мой предыдущий пост «Настройка GNS3 на Windows 7», там я рассказывал об этом.)
Теперь, перед запуском, нам надо их немного настроить. Для этого нажимаем правой кнопкой мыши на одном из устройств и выбираем в выпадающем меню пункт Configure. Должно открыться вот такое окно:

Здесь выбираем наше устройство (R1) и в появившемся окне (справа) выбираем пункт Slots.

Напротив Slot 0, в выпадающем меню, выбираем NM-1FE-TX (это один порт FastEthernet). Для первого раза, думаю, пока хватит . Нажимаем Apply и затем OK. Проделываем все тоже для второго устройства.
Если вы хотите поменять имя устройства, то перед запуском, кликните правой кнопкой мыши по нему и, в выпадающем меню, выберете пункт «Change the hostname».
Запускаем наши устройства. Для этого можно воспользоваться кнопкой на верхней панели инструментов (зеленый треугольник), тогда запустятся все устройства сразу, либо на каждом устройстве нажимаем правой кнопкой мыши и, в выпадающем меню, выбираем все тот же зеленый треугольник. Индикатором запуска будет зеленый цвет устройств в правом углу экрана (поле «Topology Summary»).
Когда устройства запущены, нужно определить для каждого из них параметр Idle PC. Это позволит сэкономить оперативную память нашего компьютера. Для этого снова кликнем правой кнопкой мыши на устройство и выбираем пункт Idle PC. Если выскочит окошко о том, что параметр уже установлен, то этого делать не надо.

В появившемся окошке из выпадающего меню выбираем значение, помеченное *. (Бывают случаи, когда такого параметра нет, тогда просто выбираем любое значение). Нажимаем Apply и затем OK. Проделываем те же действия с остальными устройствами.
Теперь соединим наши устройства.

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

Сохраняем наш проект. (File —> Save, либо соответствующая кнопка на панели инструментов).
Теперь настало время зайти на наши устройства. Для этого необходимо снова, правой кнопкой мыши, кликнуть по нему и выбрать пункт Console. Появится знакомое окно консольного соединения через Putty:

Читайте также:  Чери тигго не работают повороты

Сделаем некоторые стандартные настройки для проверки связи между устройствами:

  • R1>en
  • R1#configure terminal
  • R1(config)#int fa 0/0
  • R1(config-if)#ip address 192.168.0.1 255.255.255.0
  • R1(config-if)#no shutdown
  • R1#wr
  • R1#

Заходим на второе устройство и делаем все тоже, только IP – адрес ставим 192.168.0.2 255.255.255.0:

  • R2>en
  • R2#configure terminal
  • R2(config)#int fa 0/0
  • R2(config-if)#ip address 192.168.0.1 255.255.255.0
  • R2(config-if)#no shutdown
  • R2#wr
  • R2#

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

Как видно, все работает, наши устройства успешно соединились. Даже отработал и протокол CDP:

Теперь делаем команду wr на всех устройствах, закрываем окна консолей, останавливаем устройства (красный квадрат на панели инструментов, либо правой кнопкой мыши на каждом устройстве), сохраняем весь проект, выходим из программы (File —> Quit) и отдыхаем :).
Поздравляю вас. Сегодня мы добавили устройства в программу GNS3, настроили их, соединили и протестировали связь.

Надеюсь, мой пост стал полезным :).
Если возникли вопросы или комментарии, то смело пишите. С радостью отвечу.
С уважением, Ant0ni0n.

Источник

GNS3 в облаке

Привет! Сегодня расскажу, как настроить GNS3 сервер в облачных сервисах. А в конце будет небольшой FAQ по GNS3. Для примера был выбран Google Compute Engine (GCE) (из-за бесплатного двухмесячного триала и более низких цен на виртуалки в Европе по сравнению с AWS).

Почему вообще стоит заморачиваться?

Один раз попробовав, я больше не запускаю GNS3 локально. Нет смысла забивать оперативку своего ноутбука лабой. Кроме того, я могу запускать свои CCIE лабы с любого компьютера (в моём случае рабочий и домашний ноутбуки) — неважно, сколько RAM/какой CPU. При этом, локальные файлы лаб я сохраняю в Dropbox, что позволяет мне продолжать работать над той же лабой с разных устройств.

Под катом вы найдёте подробную инструкцию по установке GNS3 в GCE.

Подготовка VM

1. Регистрация

2. Создание проекта

После регистрации нам необходимо создать проект с помощью кнопки Create Project.

3. Создание виртуальной машины (инстанса)

После создания проекта мы попадаем в меню Google Cloud Platform.
Для создания виртуалки нажимаем в верхнем левом углу Menu -> Compute Engine:

Нажимаем на Create instance:

Параметры:
Name: gns3server
Zone: любая в Европе
Machine type: n1-standard-2 (2 vCPU 7.5 GB RAM) или лучше
Boot disk: 10-15 GB standard persistent disk, image Debian 8.3 jessie (или Ubuntu)
Внизу нажимаем Networking -> External IP: New Static IP. Вводим любое имя.

Нажатие на Create создаст виртуалку.

4. Проверка имени пользователя

После того, как виртуалка создастся, заходим на неё с помощью браузерного SSH клиента: SSH -> Open in browser window.

Проверяем имя пользователя с помощью whoami. Если имя пользователя не gns3, то необходимо его изменить:

Settings -> Change Linux Username -> вводим gns3 -> ok

5. Настройка SSH доступа к серверу

Теперь настроим доступ для любимого SSH клиента, в моём случае это SecureCRT.
Нам необходимо создать приватный ключ (если у вас ещё нет). Это можно сделать с помощью ssh-keygen или PuTTYgen (Windows), или непосредственно в SecureCRT с помощью Tools -> Create Public Key.
Ключ должен быть в OpenSSH формате с комментарием gns3. Не забудьте поставить пароль для приватного ключа (зашифровать).

Теперь необходимо добавить созданный публичный ключ в GCE с помощью меню: Compute Engine -> Metadata -> SSH keys -> Edit

Читайте также:  Не работает senseit gs2

Нажимаем Add item, добавляем содержимое файла id_rsa.pub и нажимаем Save.
После этого необходимо проверить, что мы можем зайти на сервер с помощью выбранного SSH клиента.

6. Настройка сетевого доступа/Firewall

Заходим в Menu -> Networking, потом в Firewall Rules:
Убираем 0.0.0.0/0 везде, кроме ICMP.
В правило default-allow-ssh, добавляем свой IP в IP ranges. Не забудьте добавить потом другие IP, с которых вы будете пользоваться GNS3 сервером.
Можно также добавить в это правило Google IP (74.125.0.0/16), чтобы можно было заходить по SSH через браузер.

Нам необходимо создать ещё одно правило с помощью кнопки Create Firewall Rule:
Name — allow-gns-traffic.
Source IP ranges — ваши IP адреса.

Allowed protocols and ports — tcp:8000; tcp:2000-3100; udp:10000-11000

На GCE по умолчанию включается password-less sudo, что лично меня беспокоит. Для того, чтобы это отключить, необходимо выполнить следующие команды:

Меняем строку
на

Нам потребуется локально установленный Python 3 и библиотека Google API client, которую можно установить с помощью pip:

Создадим ключ для авторизации, для этого заходим в Google Cloud Platform Menu -> API Manager -> Credentials. Потом нажимаем на Create Credentials -> Service account key -> JSON:

Сохраняем JSON файл локально на компьютер и добавляем локальную переменную среды:

Теперь создайте следующие скрипты:

Установка GNS3 server непосредственно на виртуалку

7. Добавление репозитория (PPA) с пакетами GNS3

Необходимо внести изменения в следующий файл:

Добавляем в конец файла следующее:

Добавим ключ для PPA:

8. Установка необходимых пакетов

Сначала обновим установленные пакеты:

Установим всё необходимое для GNS3 сервера:

9. Изменение максимальной длины очереди для датаграмм

Это необходимо, чтобы избавиться от EXCESSCOLL ошибки во время работы с лабой. Вносим изменения в следующий файл:

Добавьте в конце:

Замечание: если вы собираетесь использовать IOL, то необходимо также положить файл лицензии в домашнюю директорию (

/.iourc). Напомню, что легально его можно получить, только если вы являетесь сотрудником Cisco.

10. Автоматический запуск сервера GNS3 при запуске виртуалки.

Напомню, что в последней версии Debian используется systemd в качестве init system/service manager.
Подготовка:

Создаем лог файл и передаем права на него пользователю gns3.

Необходимо также создать несколько директорий в момент старта. Для этого вносим изменения в следующий файл:

Создаем конфигурационный файл демона gns3server:

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

11. Проверка

Проверим, что gns3server работает и узнаем его версию:

12. Доменные записи

Нам необходимо также создать доменные записи для сервера. Если у вас есть свой домен, я советую создать поддомен для GCE static IP.

Если у вас нет домена, то добавьте следующую запись в ваш локальный hosts file:

На GNS3 сервере необходимо также изменить /etc/hosts:

На этом настройка серверной части закончена.

Настройка локального клиента GNS3

13. Скачивание клиента

Скачать клиент можно здесь.
Необходимо установить GNS3 клиент такой же версии, как и gns3server (см. шаг #11).

14. Запуск и настройка клиента

При запуске клиента появится Setup Wizard.

Кликаем Don’t show this again, затем Cancel

Потом на окне выбора проекта опять кликаем Cancel.

Заходим в меню Preferences.
Кликаем на раздел Server, снимаем галку Enable local server.
Кликаем на вкладку Remote Servers, добавляем доменное имя вашего GNS3 сервера или gns3server, кликаем Add:

Кликаем на раздел VPCS, снимаем галку Enable local server.
Кликаем на раздел Dynamips, снимаем галку Enable local server.
Нажимаем на Apply внизу окна.
Кликаем на раздел Dynamips -> IOS routers. Нажимаем на New. Должно появиться такое окно:

Читайте также:  Media station x не работает tizen

Снимаем галку Load Balance и выбираем нужный сервер.
Далее выбираем локальный образ, который хотим использовать — он загрузится автоматически на сервер. Далее следуем диалоговому окну. В результате выбранный образ Dynamips IOS должен появиться в списке:

IOL образы добавляются точно так же с помощью раздела IOS on UNIX -> IOU Devices.
После добавления всех образов кликаем OK.

15. Проверка

Построим для теста небольшую топологию, состоящую из коммутатора и трёх маршрутизаторов:

Чтобы запустить топологию, используйте кнопку Start/Resume all devices на панели.
После запуска всех устройств можно подключиться к консольным портам, нажав на Console connect to all devices.
Поздравляю, теперь ваши лабы могут быть запущены в облаке!

Я ещё не использую GNS3, но хочу начать. Какую версию мне стоит использовать?
— Последнюю стабильную. На момент написания статьи — это 1.4.4.

Как поменять приложение по умолчанию для консольного доступа?
— Preferences -> General -> Console Applications -> Edit

Как настроить Wireshark Live Capture?
— Установите Wireshark версии 2.x, в GNS3 Preferences -> Packet Capture убедитесь, что используется правильный путь к Wireshark.

При запуске GUI у меня отображается следующее сообщение: => Client version X differs with server version Y.
Обязательно ли использовать одинаковую версию клиента и сервера?

-Лучше использовать одинаковую, но в большинстве случаев, если клиент и сервер из одной ветки (например, 1.4), то даже несмотря на предупреждение, все будет работать нормально.

Есть ли легальный способ использовать IOL в GNS3 для тех, кто не является инженером Cisco?
— Нет. В таком случае, единственный легальный способ использовать IOL для своих топологий — это CCIE Lab Builder от Cisco.

Можно ли использовать Qemu (KVM) образы в облаке?
— Теоретически можно, если ваш облачный сервис поддерживает Nested Virtualization/KVM hardware acceleration. К сожалению, ни в AWS, ни в GCE это нельзя включить.

Добавлять QEMU образы все также сложно, как и раньше?
— Нет, в 1.4 добавили Appliances — это специальные файлы с преконфигурацией, доступные для скачивания. От вас требуется только предоставить нужный образ.

Можно ли экспортировать/импортировать разные конфиги для одной и той же лабы, если я использую IOL?
— Да, с помощью опции File -> Import/Export configs. Не забудьте только остановить все устройства (перед импортом/экспортом), а перед экспортом также необходимо сохранить проект.

Когда запускается IOL устройство мне показывается initial configuration dialog, можно ли этого избежать?
— Да. Для этого необходимо в файле startup-config.cfg указать все физические интерфейсы, согласно количеству ethernet и serial адаптеров, учитывая что один адаптер содержит 4 интерфейса. Минимальный конфиг для 1 ethernet и 1 serial адаптеров:

У меня есть физический сервер или сервера, где я хочу запускать GNS3. Мне тоже необходимо выполнить столько шагов, чтобы GNS3 работал?
— Нет. Просто скачайте GNS3 VM, где всё предустановлено, и добавьте Remote Server, как показано в последней части статьи.

Поддерживается ли многопользовательский режим?
— Скорее нет, чем да. Ещё очень много необходимо сделать, чтобы можно было это добавить в список поддерживаемых фич. Тем не менее, в текущей версии GNS3 порты для консольных подключений выбираются автоматически, если выбранный порт занят, что позволяет нескольким юзерам делать лабы одновременно.

Куда движется GNS3?
— В 1.5.x ожидается поддержка Docker. Также планируется Web GUI (можно будет выбрать отдельное приложение или Web GUI) и многопользовательский режим. К сожалению, если я не ошибаюсь, обе эти фичи не планируются в 1.5.x

Источник

Оцените статью