Сеть с открытым исходным кодом и эмулятор хоста

Мне интересно, существует ли следующий продукт? Вот мой список пожеланий:

Загрузочный компакт-диск с простой (XML, YAML) конфигурацией, позволяющий подключить несколько виртуальных хостов, каждый со своим IP-адресом и базовыми службами, такими как HTTP или SMTP. Для этого не требуется ничего, кроме того, что сервер отвечает (с данными по умолчанию или HELO) на запрос порта.

Пример конфигурации:

<host>
  <name>alpha</name>
  <ip>192.168.1.1</ip> 
  <service>smtp</service>
</host>
<host>
  <name>bravo</name>
  <ip>192.168.1.2</ip> 
  <service>
    <protocol>http</protocol>
    <port>8080</port>
  </service>
</host>
<host>
  <name>charlie</name>
  <ip>192.168.1.2</ip> 
  <service>http</service> 
  <service>smtp</service>  
</host>

Эта проблема

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

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

2 ответа

Я использую GNS3 для таких вещей. Это настольное приложение, в отличие от автономной среды на собственном загрузочном носителе, но оно выполняет в основном то, что вы просите. Он действительно популярен среди сетевых специалистов, поскольку он может эмулировать некоторые аппаратные средства Cisco и Juniper (вы предоставляете образы ОС), но он также связан с QEMU и VirtualBox, поэтому вы также можете работать с хостами Windows или Linux.

Производительность далеко не соответствует реальному оборудованию, но она была разработана для лабораторного использования, а не для промышленного использования. Прилично, если вы не идете за борт с огромными системными образами; Образы IOS 12.2 только для IP-адресов и Micro Core Linux занимают мало места в памяти и отлично подходят для этого.

В зависимости от того, насколько виртуальным вы хотите стать, вы можете добиться этого с Linux VServer. Может быть, лучше взглянуть на Вагранта с шеф-поваром / марионеткой. Или Xen с ролевым скриптом, который может делать вещи на основе одного из тех <host> элементы?

Но я ничего не знаю, чтобы сделать это из коробки.:-(

Другие вопросы по тегам