Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IOU not support on fedora linux #1979

Closed
Abady-01 opened this issue Oct 4, 2021 · 4 comments
Closed

IOU not support on fedora linux #1979

Abady-01 opened this issue Oct 4, 2021 · 4 comments

Comments

@Abady-01
Copy link

Abady-01 commented Oct 4, 2021

Hi.

I install gns3 from Fedora repository and the last version of GNS3 exist there is 2.2.21

I face many issues when i try to install Cisco Appliances ether i user qcow2 or bin

but when i want to running bin file by IOU I have two issue :

ONE is i get this error when i running the switch

error while starting IOU1: IOU image '/home/armeen/GNS3/images/IOU/i86bi-linux-l2-adventerprisek9-15.1a.bin' is not executable
IOU image '/home/armeen/GNS3/images/IOU/i86bi-linux-l2-adventerprisek9-15.1a.bin' is not executable

as mention here :
GNS3/gns3-gui#2125

and i try to build from source by following this link https://computingforgeeks.com/how-to-install-gns3-on-fedora-29-fedora-28/

but it it does not work because i get this error where i try to build :
[armeen@fedora GNS3]$ cd iouyap/
[armeen@fedora iouyap]$ make
bison -y -d netmap_parse.y
netmap_parse.y:68.1-11: warning: POSIX Yacc does not support %destructor [-Wyacc]
68 | %destructor { free($$); }
| ^~~~~~~~~~~
mv -f y.tab.c netmap_parse.c
cc -Wall -c -o netmap_parse.o netmap_parse.c
flex -t netmap_scan.l > netmap_scan.c
cc -Wall -c -o netmap_scan.o netmap_scan.c
cc -Wall -c -o netmap.o netmap.c
cc -Wall -c -o config.o config.c
cc -Wall -c -o iouyap.o iouyap.c
cc -Wall -c -o iniparser/iniparser.o iniparser/iniparser.c
cc -Wall -c -o iniparser/dictionary.o iniparser/dictionary.c
cc -Wall -o iouyap netmap_parse.o netmap_scan.o netmap.o config.o iouyap.o iniparser/iniparser.o iniparser/dictionary.o -lpthread
/usr/bin/ld: netmap_scan.o:(.bss+0x40): multiple definition of sizecheck'; netmap_parse.o:(.bss+0x0): first defined here /usr/bin/ld: netmap.o:(.bss+0x0): multiple definition of sizecheck'; netmap_parse.o:(.bss+0x0): first defined here
/usr/bin/ld: iouyap.o:(.bss+0x0): multiple definition of `sizecheck'; netmap_parse.o:(.bss+0x0): first defined here
collect2: error: ld returned 1 exit status
make: *** [Makefile:51: iouyap] Error 1
rm netmap_scan.c netmap_parse.c
[armeen@fedora iouyap]$

Second Issue is how i can install the license of IOU because I use localhost as gns3Server not by using vm because already there is KVM and Qemu on Linux kernel So how i could install license in my case
i used this python script https://srv-file14.gofile.io/download/0yjCRc/CiscoIOUKeygen3f.py
to generate .IOURC file but i don't know how i get access to gns3 shell because I turn on gns3Server on localhost

Thanks

@ghost
Copy link

ghost commented Oct 7, 2021

I face many issues when i try to install Cisco Appliances ether i user qcow2 or bin

Without any further information, nobody can help you with that.

but when i want to running bin file by IOU I have two issue :

ONE is i get this error when i running the switch
error while starting IOU1: IOU image '/home/armeen/GNS3/images/IOU/i86bi-linux-l2-adventerprisek9-15.1a.bin' is not executable IOU image '/home/armeen/GNS3/images/IOU/i86bi-linux-l2-adventerprisek9-15.1a.bin' is not executable

How did you install the IOU image?
If you manually copy it to GNS3/images/IOU it's your own responsibility, that the image is correctly installed. For IOU that means, you have to set the execute permission yourself.
If you install it by using the import wizard (File / New template / Install an appliance from the GNS3 server) the wizard will take care about all the details and will ensure (among other things), that the image has the right permissions.

and i try to build from source by following this link https://computingforgeeks.com/how-to-install-gns3-on-fedora-29-fedora-28/

iouyap is not used since GNS3 v2.0 (2017), ubridge is used instead. As ubridge is automatically installed, when installing gns3-server, there is no need to compile anything. As iouyap is no longer maintained, nobody will fix it.

But there is another issue with IOU images, not mentioned by the article, you linked.

IOU images are 32-bit Linux binaries, that need several 32-bit shared libraries. So before using IOU images, you need to install these libraries.

Normally this would be relatively easy, install the openssl-libs.i686 package. But the IOU images are that old, that there are some incompatibilities between the IOU images and the openssl-libs package. So that won't work.

You have to install some older libraries. I created a tar archive with the needed libraries from the old Debian 9 (Stretch):
libc-i386.tar.gz
If you have already installed the openssl-libs.i686 package, you need to uninstall it and it's dependencies first. Then you can install the 32-bit libraries with sudo tar xvfz libc-i386.tar.gz -C /. But please keep in mind, that I normally use Debian and I made only some few tests on Fedora. So you are basically on your own.

Second Issue is how i can install the license of IOU because I use localhost as gns3Server not by using vm because already there is KVM and Qemu on Linux kernel So how i could install license in my case ...

Official answer: You need to get your license from Cisco. The GNS3 folks won't support anyone, who tries use images in a way, that is not approved by the copyright owner (Cisco).

Cisco will not give anyone a license for IOU images, as they are a Cisco internal tool. So you have to either use VIRL/CML images or make your own research, how to use them without a proper Cisco license.

@Abady-01
Copy link
Author

Abady-01 commented Oct 11, 2021

If you manually copy it to GNS3/images/IOU it's your own responsibility, that the image is correctly installed. For IOU that means, you have to set the execute permission yourself.
If you install it by using the import wizard (File / New template / Install an appliance from the GNS3 server) the wizard will take care about all the details and will ensure (among other things), that the image has the right permissions.

first i appreciate for replying
yah I installed IOU image manually i used chmod to change all image to 777 and also tried from import wizard but i was getting same error " IOU image ... is not executable"
Until i check this box .. also i did this sudo tar xvfz libc-i386.tar.gz -C solution

at the end now i face problem with the license even if use python script i got this:
md5input=iouPad1 + iouPad2 + struct.pack('!i', ioukey) + iouPad1
struct.error: 'i' format requires -2147483648 <= number <= 2147483647

ksnip20

@ghost
Copy link

ghost commented Oct 13, 2021

The appliance wizard doesn't copy the image and doesn't set the permissions, when the image already exists in the GNS3 image directory. So you are right, you can't fix permission errors of existing appliances by re-running the wizard.

Using chmod on the command line or using the GUI method with the file manager has the same effect. So when it works with the file manager and it doesn't work with chmod, then you have made a mistake using chmod. But anyway, you managed to correct it via the file manager, so this part is done.

As already mentioned in my first comment, I won't give any support using a non-cisco license key. You have to fix it yourself.

@Abady-01
Copy link
Author

thanks for replaying i really appreciate that yah for license problem maybe i have to depend on other community like gns3 or even reddit

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants