Virtual ExtremeXOS - свитчи от Extreme Networks в VirtualBox
Решил попробовать освоить активное оборудование от Extreme Networks. Железки живые у меня имеются, но в рабочем состоянии. Благо, есть ExtremeXOS VM - образ операционной системы Extreme XOS (ОС на базе Linux) для виртуальной машины Oracale VirtualBox.
Итак, что необходимо для начала. Установить виртуальную машину и OVB Extension Pack (скачивается со страницы загрузки Oracale VirtualBox).
После задаём настройки сети по Ctrl+G и "Добавить виртуальную сеть хоста":
И архив с ExtremeXOS VM. Распаковываем последний и выполняем следующий файл - EXOS_VM_15.3.2.11 sw1.vbox.
В результате чего в окне VirtualBox появляется новая виртуальная машина EXOS_VM_15.3.2.11 sw1.
Я в ней сразу отключил USB и звук.
Следующий шаг - клонирование только что созданной виртуальной машины. Наводим курсор на EXOS_VM_15.3.2.11 sw1 и делаем "копировать" или Ctrl+O:
В названии удаляем слово "Копия" и "sw1" меняем на "sw2" и ставим галочку на "Сгенерировать новые MAC-адреса для всех сетевых адаптеров". "Далее". "Полная копия", "Копировать". Сколько вам нужно виртуальных свитчей, столько копий и делайте. Я рекомендую создать не менее трёх VM.
Осталось создать и настроить виртуальные порты на каждом свитче. Так как во вкладке настройки сети можно настроить всего 4 сетевых адаптера, я приведу скрипт автоматического создания портов (сетевых адаптеров), который приводится в мануале (пришлось немного его подправить). Он генерирует текст (команды) для настроки 8 портов на один свитч. Думаю, что этого вполне достаточно для образовательных целей. При желании, можно увеличить это число. Итак, скрипт:
my $i = 2;
my $j = 1;
my $p = 201;
my $n = $p - 200;
while ($p < 209) {
$i = 2;
while ($i < 9) {
$j = $i - 1;
$n = $p - 200;
print "vboxmanage modifyvm \"EXOS_VM_15.3.2.11 sw$n\" --nic$i intnet\n";
print "vboxmanage modifyvm \"EXOS_VM_15.3.2.11 sw$n\" --nictype$i Am79C973\n";
print "vboxmanage modifyvm \"EXOS_VM_15.3.2.11 sw$n\" --macaddress$i 0800276$p";
print "F$i\n";
print "vboxmanage modifyvm \"EXOS_VM_15.3.2.11 sw$n\" --cableconnected$i on\n";
print "vboxmanage modifyvm \"EXOS_VM_15.3.2.11 sw$n\" --intnet$i link$n";
print "$j\n";
print "vboxmanage modifyvm \"EXOS_VM_15.3.2.11 sw$n\" --nicpromisc$i allow-all\n";
$i = $i + 1;
}
$p = $p + 1;
}
В итоге получаем вот такой вот набор команд:
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nic2 intnet
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nictype2 Am79C973
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --macaddress2 0800276201F2
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --cableconnected2 on
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --intnet2 link11
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nicpromisc2 allow-all
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nic3 intnet
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nictype3 Am79C973
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --macaddress3 0800276201F3
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --cableconnected3 on
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --intnet3 link12
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nicpromisc3 allow-all
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nic4 intnet
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nictype4 Am79C973
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --macaddress4 0800276201F4
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --cableconnected4 on
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --intnet4 link13
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nicpromisc4 allow-all
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nic5 intnet
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nictype5 Am79C973
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --macaddress5 0800276201F5
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --cableconnected5 on
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --intnet5 link14
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nicpromisc5 allow-all
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nic6 intnet
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nictype6 Am79C973
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --macaddress6 0800276201F6
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --cableconnected6 on
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --intnet6 link15
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nicpromisc6 allow-all
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nic7 intnet
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nictype7 Am79C973
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --macaddress7 0800276201F7
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --cableconnected7 on
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --intnet7 link16
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nicpromisc7 allow-all
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nic8 intnet
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nictype8 Am79C973
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --macaddress8 0800276201F8
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --cableconnected8 on
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --intnet8 link17
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --nicpromisc8 allow-all
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw2" --nic2 intnet
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw2" --nictype2 Am79C973
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw2" --macaddress2 0800276202F2
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw2" --cableconnected2 on
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw2" --intnet2 link21
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw2" --nicpromisc2 allow-all
...
Выполняем всё это добро в консоли и радуемся )
Только нужно иметь ввиду, что если мы хотим связать свитчи через какие-то порты, эти порты должны назваться одинаково. Например, мы хотим связать "EXOS_VM_15.3.2.11 sw1" и "EXOS_VM_15.3.2.11 sw2" через вторые порты (виртуальные сетевые адаптеры). Соответственно, последние должны иметь одинаковое имя в настройках VM - link11. То есть:
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw1" --intnet2 link11
vboxmanage modifyvm "EXOS_VM_15.3.2.11 sw2" --intnet2 link11
Наконец, загружаем две VM - "EXOS_VM_15.3.2.11 sw1" и "EXOS_VM_15.3.2.11 sw2". Логин admmin, пароль пустой. Следующей командой можно посмотреть, есть ли линк между виртуальными свитчами:
show edp ports all
Видим, что "линк" есть. Осталось настроить VLAN'ы, чтобы проверить всё это дело пингом. Думаю, что базовые настройки лучше привести отдельной статьёй, а тут я лишь покажу, что соседняя VM пингуется.
На скриншоте выше можно увидеть, что у виртуальных машин есть некий VLAN Mgmt с ip-адресом 192.168.56.107. По этому адресу к VM/свитчу можно цепляться telnet'ом. Отлично! Но адрес однаков у обоих VM :) Поэтому, нам нужно его поменять у всех виртуалок, кроме первой. Выполняем на "EXOS_VM_15.3.2.11 sw2" следующие команды (по табу срабатывает автозавершене, как и в консоли Linux; не так удобно, но очень неплохо):
unconfigure Mgmt ipaddress
configure Mgmt ipaddress 192.168.56.108
save configuration
Ну, и всё. Подключаемся telnet'ом к любому нужному виртуальному свитчу и изучаем мануалы по настройке девайсов от Extreme Networks.
$ telnet 192.168.56.107
Ну, всё. Доступ есть, связь между ними есть, вперёд к освоению )
Автор: vovans
http://zenway.ru/page/virtual-extremexos-svitchi-ot-extreme-networks-v-virtualbox
|