GNS3 + Cisco IOU Návod

Ubuntu 24.04 LTS · GNS3 2.2.x · IOU L2/L3

Prístup do cloudu

1. Požiadanie o cloud server

Na stránke TUKE Cloud si vypýtajte virtuálny server:

Odkaz: https://cloud.tuke.sk/index.php/virtualne-servery/

Prihláste sa pomocou svojich údajov z MAISu a vyplňte krátky dotazník.

Do kolónky účel použitia napíšte:

text
KEMT cvicenia SAvPS - bugar
Upozornenie: Žiadosť musí schváliť UVT – môže to trvať dlhšie.

Po schválení prídu prihlasovacie údaje na email (skontrolujte aj nevyžiadanú poštu).

2. Prihlásenie do cloud systému a vytvorenie servera

Po schválení sa prihláste do cloud portálu:

Odkaz: https://vraa.cloud.tuke.sk/vcac/

Prihláste sa svojím MAIS loginom. Z ponuky vyberte Ubuntu 24.04 Server, zvoľte konfiguráciu a potvrďte.

Dôležité: Samotné vytvorenie a spustenie servera v systéme musí opäť schváliť administrátor, čo môže trochu trvať. Treba počkať na schválenie.
Tip: Po úspešnom schválení a spustení servera pokračujte inštaláciou GNS3 nižšie.

Inštalácia GNS3

3. Inštalácia GNS3 servera

bash
add-apt-repository ppa:gns3/ppa
apt-get update
apt-get install -y gns3-server

Spustenie – server počúva na porte 3080:

bash
gns3server
Info: Webové rozhranie bude dostupné na adrese http://<IP>:3080

4. Stiahnutie IOU images

bash
mkdir -p ~/GNS3/images/IOU
cd ~/GNS3/images/IOU

Nastav spustiteľné práva pre stiahnuté súbory:

bash
chmod 755 ~/GNS3/images/IOU/*.bin

5. Generovanie licencie – CiscoKeyGen.py

Vytvor a ulož skript ako CiscoKeyGen.py:

python3
#!/usr/bin/python3
import os, socket, hashlib, struct

hostid   = os.popen("hostid").read().strip()
hostname = socket.gethostname()
ioukey   = int(hostid, 16)
for x in hostname:
    ioukey += ord(x)

iouPad1    = b'\x4B\x58\x21\x81\x56\x7B\x0D\xF3\x21\x43\x9B\x7E\xAC\x1D\xE6\x8A'
iouPad2    = b'\x80' + 39 * b'\x00'
md5input   = iouPad1 + iouPad2 + struct.pack('!L', ioukey) + iouPad1
iouLicense = hashlib.md5(md5input).hexdigest()[:16]

print(f"[license]\n{hostname} = {iouLicense};")

Spusti skript:

bash
python3 CiscoKeyGen.py

Výstup skriptu skopíruj do licenčného súboru a zablokuj phone-home:

bash
# Nahraď HOSTNAME a KEY výstupom z predchádzajúceho skriptu
echo -e '[license]\nHOSTNAME = KEY;' | tee ~/.iourc

# Zablokuj phone-home pre overovanie licencie
grep -q '127.0.0.1 xml.cisco.com' /etc/hosts || \
  echo '127.0.0.1 xml.cisco.com' | tee -a /etc/hosts

6. Inštalácia 32-bitových knižníc (libcrypto.so.4)

Upozornenie: IOU images sú 32-bitové, preto vyžadujú inštaláciu i386 knižníc.
bash
dpkg --add-architecture i386
apt-get update
apt-get install -y libc6:i386 libssl3:i386

# Vytvor symlink pre knižnicu libcrypto.so.4
ln -s /usr/lib/i386-linux-gnu/libcrypto.so.3 \
      /usr/lib/i386-linux-gnu/libcrypto.so.4

# Overenie funkčnosti – vo výstupe nesmie byť "not found"
ldd ~/GNS3/images/IOU/L2-ADVENTERPRISE-M-15.1-20140814.bin
ldd ~/GNS3/images/IOU/L3-ADVENTERPRISE9-15.5.2T.bin
Tip: Ak príkaz `ldd` nevracia "not found", všetko je nainštalované správne.

7. Spustenie a overenie

bash
# Skontroluj, či je licencia správne uložená
cat ~/.iourc

# Spusti GNS3 server
gns3server

# Over, či služba beží na správnom porte
ss -tlnp | grep 3080
Dokončenie: Otvorte v prehliadači http://<IP>:3080 → prejdite do Edit Templates → New IOU Device → a vyberte pridaný .bin image.