Prerequisites
Host system - Fedora 15 Linux or any other Linux
Ghost system - Solaris 2.6 sparc installed on Qemu disk
http://brezular.com/2012/02/17/installation-solaris-2-6-sparc-on-qemu-part2-solaris-installation/
Qemu v1.0.50 compiled for sparc support installed on host system
http://brezular.com/2012/02/12/installation-solaris-sparc-2-6-sunos-5-6-on-qemu-part-1-qemu-installation/
Script iou2net.pl - connects IOU instance inside Qemu disk to the real world
http://inetpro.org/wiki/Connect_IOU_with_real_networks_or_dynamips
Solaris 2.6 installation CD
Solaris_2.6_Software_05_98.img
Solaris 9 installation CD
Solaris 9 sol-9-905hw-ga-sparc-dvd.iso
They are four install DVD.
sol-9-905hw-ga-sparc-dvd-iso-a
sol-9-905hw-ga-sparc-dvd-iso-b
sol-9-905hw-ga-sparc-dvd-iso-c
sol-9-905hw-ga-sparc-dvd-iso-d
Merge iso images with cat command:
cat sol-9-905hw-ga-sparc-dvd-iso-? > sol-9-ga-sparc-dvd.iso
Solaris 2.6 packages and source files
Download required packages and create ISO image of them. For easy manipulation with files unpack Solaris packages and source files directly on the ghost system first and then create iso image.Use k3b (Fedora). Qemu disk will be started with virtual CDROM having ISO image attached aspackages.iso.
Solaris 2.6 packages are those with .gz extension. Go to the directory when sparc packages are located and use this script to gunzip them all.
for i in . ; do gunzip * ; done
Similary, extract tar sources.
for i in $(ls) ; do tar -xvf $i; done
Solaris Packages
bash-4.1-sol26-sparc-local libgcc-3.4.6-sol26-sparc-local
prngd-0.9.25-sol26-sparc-local libiconv-1.13.1-sol26-sparc-local
libintl-3.4.0-sol26-sparc-local gcc-2.95.3-sol26-sparc-local
perl-5.8.5-sol26-sparc-local zlib-1.2.5-sol26-sparc-local
libidn-1.19-sol26-sparc-local openssl-1.0.0a-sol26-sparc-local
openssh-5.1p1-sol26-sparc-local gdbm-1.8.3-sol26-sparc-local
egd-0.8-sol26-sparc-local bison-2.4.3-sol26-sparc-local
make-3.82-sol26-sparc-local popt-1.14-sol26-sparc-local
tcp_wrappers-7.6-sol26-sparc-local tcpdump-3.9.8-sol26-sparc-local
librsync-0.9.7-sol26-sparc-local ncurses-5.7-sol26-sparc-local
libsigsegv-2.6-sol26-sparc-local mpfr-2.4.0-sol26-sparc-local
gzip-1.4-sol26-sparc-local gtk+-1.2.10-sol26-sparc-local
glib-1.2.10-sol26-sparc-local ncurses-5.7-sol26-sparc-local
vim-7.3-sol26-sparc-local pcre-8.10-sol26-sparc-local
grep-2.7-sol26-sparc-local flex-2.5.35-sol26-sparc-local
m4-1.4.15-sol26-sparc-local tcpdump-3.9.8-sol26-sparc-local
Perl modules
Carp-1.24 Module-Load-0.22
Config-General-2.50 Module-Load-Conditional-0.46
Exporter-5.66 Net-Pcap-0.14
ExtUtils-CBuilder-0.280202 Params-Check-0.32
ExtUtils-Constant-0.23 PathTools-3.33
ExtUtils-MakeMaker-6.62 Socket-1.98
Getopt-Long-2.38 Test-Simple-0.98
IO-1.25 Text-ParseWords-3.27
IO-Interface-1.06 Time-HiRes-1.9725
IO-Socket-Multicast-1.12 XSLoader-0.15
IPC-Cmd-0.76 Locale-Maketext-Simple-0.21
libpcap-1.1.1 Module-CoreList-2.60
1) Bridging Script
A bridging script will create tap interface and attach it to the bridge. It also attaches host Ethernet interface to the bridge.
/home/brezular/Download/sparc/bridge_interfaces
Find more about script here:
http://brezular.com/2012/03/12/bridging-guest-os-solaris-2-6-qemu-vm-with-the-host-os-fedora-15/
Script can be downloaded here:
http://www.4shared.com/file/UdcViHR_/bridge_interfaces.html
2) Running Solaris 2.6 from Qemu Disk with Solaris 2.6 Install CD attached
/usr/local/bin/qemu-system-sparc -bios /usr/local/share/qemu/ss20_v2.25_rom -M SS-20 -nographic -boot c -hda ./36G.disk -cdrom ./2.6/Solaris_2.6_Software_05_98.img -m 512 -serial telnet:0.0.0.0:3000,server -net nic,vlan=0,macaddr=00:aa:00:60:00:01,model=lance -net tap,vlan=0,ifname=tap0,script=no -smp 2,cores=4 -cpu "TI SuperSparc 60"
Connect to Qemu
telnet localhost 3000
When ok prompt is displayed, enter the command sbus-probe-list f and reset. The system will be rebooted.
Can't open boot device
Type help for more information
ok setenv sbus-probe-list f
sbus-probe-list = f
ok reset
After restart, prompt is displayed again. Boot system from disk0 with command
Can't open boot device
Type help for more information
ok boot disk0
Username is root without password set.
Set IP address.
ifconfig le0 172.18.100.150 netmask 255.255.0.0 up
Set default gateway.
route add default 172.18.100.1
If you want to keep default router settings permanent:
touch /etc/defaultrouter
cat >> /etc/defaultrouter
172.8.100.1
^d <--- ctrl+d
3) Installation Solaris 2.6 Packages
First, get info about disks.
iostat -En
Mount Solaris installation CD to /mnt/
mount -F hsfs -o ro /dev/dsk/c0t2d0s0 /mnt
cd /mnt/Solaris_2.6/Product
Although not neccessary, it is recommended to create a script to help mount CDROM
mkdir -p /usr/local/bin/
cat > /usr/local/bin/mount_cdrom
#Script mounts CDROM to /mnt
mount -F hsfs -o ro /dev/dsk/c0t2d0s0 /mnt
^d
chmod 755 /usr/local/bin/mount_cdrom
Install the required Sun packages.
touch /tmp/admin
cat >> /tmp/admin
instance=overwrite
mail=
basedir=/
^d
cd /mnt/Solaris_2.6/Product
pkgadd -a /tmp/admin -d . SUNWarc
pkgadd -a /tmp/admin -d . SUNWhea
pkgadd -a /tmp/admin -d . SUNWbtool
pkgadd -a /tmp/admin -d . SUNWlibC
pkgadd -a /tmp/admin -d . SUNWlibCf
pkgadd -a /tmp/admin -d . SUNWtoo
pkgadd -a /tmp/admin -d . SUNWlibm
pkgadd -a /tmp/admin -d . SUNWlibms
pkgadd -a /tmp/admin -d . SUNWsprot
pkgadd -a /tmp/admin -d . SUNWdfbh
pkgadd -a /tmp/admin -d . SUNWcg6h
pkgadd -a /tmp/admin -d . SUNWcsu
We need libraries from package SUNWxwrtl in order to run vim application. We are not going to install the package as libraries would be installed to /lib/ directory. This is not desired behaviour because the directory /lib should be presented only as a symbolic link to /usr/lib.
Instead of it manually copy required libraries to the following directories.
mkdir /usr/openwin/lib/
cp /mnt/Solaris_2.6/Tools/Boot/usr/openwin/lib/libXmu.so.4 /usr/openwin/lib/
cp /mnt/Solaris_2.6/Tools/Boot/usr/openwin/lib/libXext.so.0 /usr/openwin/lib/
cp /mnt/Solaris_2.6/Tools/Boot/usr/lib/libXm.so.3 /usr/lib/
cp /mnt/Solaris_2.6/Tools/Boot/usr/openwin/lib/libXt.so.4 /usr/openwin/lib/
cp /mnt/Solaris_2.6/Tools/Boot/usr/openwin/lib/libSM.so.6 /usr/openwin/lib/
cp /mnt/Solaris_2.6/Tools/Boot/usr/openwin/lib/libICE.so.6 /usr/openwin/lib/
cp /mnt/Solaris_2.6/Tools/Boot/usr/openwin/lib/libX11.so.4 /usr/openwin/lib/
Halt Qemu image. Boot Qemu with this CD iso image:
/usr/local/bin/qemu-system-sparc -bios /usr/local/share/qemu/ss20_v2.25_rom -M
SS-20 -nographic -boot c -hda ./36G.disk -cdrom ./packages.iso -m 512 -serial telnet:0.0.0.0:3000,server -net nic,vlan=0,macaddr=00:aa:00:60:00:01,model=lance -net tap,vlan=0,ifname=tap0,script=no -smp 2,cores=4 -cpu "TI SuperSparc 60"
Login to the system and set the Environment Variables.
LD_LIBRARY_PATH=/usr/lib:/usr/local/lib:/lib:/usr/local/X11/lib:/usr/dt/lib:/usr/openwin/lib
PATH=/usr/local/bin:/usr/ccs/bin:/bin:/usr/bin:/usr/sbin:/etc:/usr/etc:/usr/ucb:/usr/openwin/bin:/usr/local/etc
MANPATH=/usr/local/man:/usr/man:/usr/local/X11/man
export LD_LIBRARY_PATH PATH MANPATH
Add the lines also to /etc/profile to have variables kept after restart.
cat >> /etc/profile
LD_LIBRARY_PATH=/usr/lib:/usr/local/lib:/lib:/usr/local/X11/lib:/usr/dt/lib:/usr/openwin/lib
PATH=/usr/local/bin:/usr/ccs/bin:/bin:/usr/bin:/usr/sbin:/etc:/usr/etc:/usr/ucb:/usr/openwin/bin:/usr/local/etc
MANPATH=/usr/local/man:/usr/man:/usr/local/X11/man
export LD_LIBRARY_PATH PATH MANPATH
^d
Mount CDROM.
/usr/local/bin/mount_cdrom
cd /mnt/
Install Solaris packages
pkgadd -d bash-4.1-sol26-sparc-local
pkgadd -d libgcc-3.4.6-sol26-sparc-local
pkgadd -d prngd-0.9.25-sol26-sparc-local
pkgadd -d libiconv-1.13.1-sol26-sparc-local
pkgadd -d libintl-3.4.0-sol26-sparc-local
pkgadd -d gcc-2.95.3-sol26-sparc-local
pkgadd -d perl-5.8.5-sol26-sparc-local
pkgadd -d zlib-1.2.5-sol26-sparc-local
pkgadd -d libidn-1.19-sol26-sparc-local
pkgadd -d openssl-1.0.0a-sol26-sparc-local
pkgadd -d openssh-5.1p1-sol26-sparc-local
pkgadd -d gdbm-1.8.3-sol26-sparc-local
pkgadd -d egd-0.8-sol26-sparc-local
pkgadd -d bison-2.4.3-sol26-sparc-local
pkgadd -d make-3.82-sol26-sparc-local
pkgadd -d popt-1.14-sol26-sparc-local
pkgadd -d tcp_wrappers-7.6-sol26-sparc-local
pkgadd -d tcpdump-3.9.8-sol26-sparc-local
pkgadd -d librsync-0.9.7-sol26-sparc-local
pkgadd -d libsigsegv-2.6-sol26-sparc-local
pkgadd -d mpfr-2.4.0-sol26-sparc-local
pkgadd -d gzip-1.4-sol26-sparc-local
pkgadd -d gtk+-1.2.10-sol26-sparc-local
pkgadd -d glib-1.2.10-sol26-sparc-local
pkgadd -d ncurses-5.7-sol26-sparc-local
pkgadd -d vim-7.3-sol26-sparc-local
We have perl installed in /usr/local/bin/. Create a symbolic link /usr/bin/perl pointing to /usr/local/bin/perl.
ln -s /usr/local/bin/perl /usr/bin/perl
4) SUNWcsl Installation
Halt the system and boot from Qemu disk with attached Solaris 9 Installation DVD. We need to install package SUNWcsl available in Solaris 9.
/usr/local/bin/qemu-system-sparc -bios /usr/local/share/qemu/ss20_v2.25_rom -M SS-20 -nographic -boot c -hda ./36G.disk -cdrom ./sol-9-905hw-ga-sparc-dvd.iso -m 512 -serial telnet:0.0.0.0:3000,server -net nic,vlan=0,macaddr=00:aa:00:60:00:01,model=lance -net tap,vlan=0,ifname=tap0,script=no -smp 2,cores=4 -cpu"TI SuperSparc 60"
/usr/local/bin/mount_cdrom
touch /tmp/admin
cat >> /tmp/admin
instance=overwrite
mail=
basedir=/
^d
We need to bzcat utility to get SUNWcsl installed properly.
cp /mnt/Solaris_9/Tools/Boot/usr/bin/bzcat /usr/bin/
cp /mnt/Solaris_9/Product/SUNWbzip/reloc/usr/lib/libbz2.so.1 /usr/lib/
cd /mnt/Solaris_9/Product
pkgadd -a /tmp/admin -d . SUNWcsl
Do you want to install these conflicting files [y,n,?,q] n
Do you want to install these conflicting files [y,n,?,q] y
Do you want to continue with the installation of <SUNWcsl> [y,n,?] y
Halt Solaris again and boot it again with packages.iso attached to CDROM.
/usr/local/bin/qemu-system-sparc -bios /usr/local/share/qemu/ss20_v2.25_rom -M SS-20 -nographic -boot c -hda ./36G.disk -cdrom ./packages.iso -m 512 -serial telnet:0.0.0.0:3000,server -net nic,vlan=0,macaddr=00:aa:00:60:00:01,model=lance -net tap,vlan=0,ifname=tap0,script=no -smp 2,cores=4 -cpu "TI SuperSparc 60"
5) Additional Solaris Packages and Perl Modules Installation
/usr/local/bin/mount_cdrom
cd /mnt/
pkgadd -d grep-2.7-sol26-sparc-local
pkgadd -d pcre-8.10-sol26-sparc-local
pkgadd -d flex-2.5.35-sol26-sparc-local
pkgadd -d m4-1.4.15-sol26-sparc-local
Use a verson of grep that handles long lines.
mv /usr/bin/grep /usr/bin/grep-backup
ln -s /usr/local/bin/grep /usr/bin/grep
/usr/local/bin/bash
Edit /etc/passwd and change default shell for root to Bash.
root:x:0:1:Super-User:/:/usr/local/bin/bash
a) Install libpcap version of 1.1.1
cp -r /mnt/libpcap-1.1.1/ /export/home/
cd /export/home/libpcap-1.1.1/
./configure
make
make install
b) Install IO-Interface-1.06
cp -r /mnt/IO-Interface-1.06/ /export/home/
cd /export/home/IO-Interface-1.06/
perl Makefile.PL
make
make install clean
c) Install Getopt-Long-2.38
cp -r /mnt/Getopt-Long-2.38/ /export/home/
cd /export/home/Getopt-Long-2.38/
perl Makefile.PL
make
make install clean
d) Install IO-Socket-Multicast-1.12
cp -r /mnt/IO-Socket-Multicast-1.12/ /export/home/
cd /export/home/IO-Socket-Multicast-1.12/
perl Makefile.PL
make
make install clean
e) Install Test-Simple-0.98
cp -r /mnt/Test-Simple-0.98/ /export/home/
cd /export/home/Test-Simple-0.98/
perl Makefile.PL
make install clean
f) Install Time-HiRes-1.9725
cp -r /mnt/Time-HiRes-1.9725/ /export/home/
cd /export/home/Time-HiRes-1.9725/
perl Makefile.PL
make
make install clean
g) Install IO-1.25
cp -r /mnt/IO-1.25/ /export/home/
cd /export/home/IO-1.25/
perl Makefile.PL
make
make install clean
h) Install Module-Load-0.22
cp -r /mnt/Module-Load-0.22/ /export/home/
cd /export/home/Module-Load-0.22/
perl Makefile.PL
make
make install clean
i) Install Locale-Maketext-Simple-0.21
cp -r /mnt/Locale-Maketext-Simple-0.21/ /export/home/
cd /export/home/Locale-Maketext-Simple-0.21/
perl Makefile.PL
make
make install clean
j) Install Module-CoreList-2.60
cp -r /mnt/Module-CoreList-2.60/ /export/home/
cd /export/home/Module-CoreList-2.60/
perl Makefile.PL
make
make install clean
k) Install Params-Check-0.32
cp -r /mnt/Params-Check-0.32/ /export/home/
cd /export/home/Params-Check-0.32/
perl Makefile.PL
make
make install clean
l) Install Module-Load-Conditional-0.46
cp -r /mnt/Module-Load-Conditional-0.46/ /export/home/
cd /export/home/Module-Load-Conditional-0.46/
perl Makefile.PL
make
make install clean
m) Install ExtUtils-Constant-0.23
cp -r /mnt/ExtUtils-Constant-0.23 /export/home/
cd /export/home/ExtUtils-Constant-0.23/
perl Makefile.PL
make
make install clean
n) Install ExtUtils-MakeMaker-6.62
cp -r /mnt/ExtUtils-MakeMaker-6.62/ /export/home/
cd /export/home/ExtUtils-MakeMaker-6.62/
perl Makefile.PL
make
make install clean
o) Install IPC-Cmd-0.76
cp -r /mnt/IPC-Cmd-0.76/ /export/home/
cd /export/home/IPC-Cmd-0.76/
perl Makefile.PL
make
make install clean
p) Install PathTools-3.33
cp -r /mnt/PathTools-3.33/ /export/home/
cd /export/home/PathTools-3.33/
perl Makefile.PL
make
make install clean
q) Install ExtUtils-CBuilder-0.280202
cp -r /mnt/ExtUtils-CBuilder-0.280202/ /export/home/
cd /export/home/ExtUtils-CBuilder-0.280202/
perl Makefile.PL
make
make install clean
r) Install Socket-1.98
cp -r /mnt/Socket-1.98/ /export/home/
cd /export/home/Socket-1.98/
perl Makefile.PL
make
make install clean
s) Install Carp-1.24
cp -r /mnt/Carp-1.24/ /export/home/
cd /export/home/Carp-1.24/
perl Makefile.PL
make
make install clean
t) Install Exporter-5.66
cp -r /mnt/Exporter-5.66/ /export/home/
cd /export/home/Exporter-5.66/
perl Makefile.PL
make
make install clean
u) Install Config-General-2.50
cp -r /mnt/Config-General-2.50/ /export/home/
cd /export/home/Config-General-2.50/
perl Makefile.PL
make
make install clean
v) Install Text-ParseWords-3.27
cp -r /mnt/Text-ParseWords-3.27/ /export/home/
cd /export/home/Text-ParseWords-3.27/
perl Makefile.PL
make
make install clean
w) Install XSLoader-0.15
cp -r /mnt/XSLoader-0.15/ /export/home/
cd /export/home/XSLoader-0.15/
perl Makefile.PL
make
make install clean
x) Install Net-Pcap version 0.14
cp -r /mnt/Net-Pcap-0.14/ /export/home/
cd /export/home/Net-Pcap-0.14/
perl Makefile.PL INC=-I/usr/local/include/pcap LIBS='-L/usr/local/lib -lpcap'
make
make install clean
Remove files in /export/home. We do not need them anymore.
cd /export/home/
rm -rf /export/home/*
6) SSH Configuration
I am not going to explain any steps in detail as it is a tutorial available here:
http://www.sunfreeware.com/openssh26-7.html
cat /var/adm/wtmpx >> /usr/local/etc/prngd/prngd-seed
cat /var/adm/wtmpx >> /usr/local/etc/prngd/prngd-seed
mkdir /var/spool/prngd
/usr/local/sbin/prngd /var/spool/prngd/pool
ln -s /var/spool/prngd/pool /dev/egd-pool
To start prngd at boot create an init script:
cat >> /etc/init.d/prngd
#!/bin/sh
pid=`/usr/bin/ps -e | /usr/bin/grep prngd | /usr/bin/sed -e 's/^ *//' -e 's/ .*//'`
case $1 in
'start')
/usr/local/sbin/prngd /var/spool/prngd/pool
;;
'stop')
if [ "${pid}" != "" ]
then
/usr/bin/kill ${pid}
fi
;;
*)
echo "usage: /etc/init.d/prngd {start|stop}"
;;
esac
^d
Assign privilegies to the script.
chgrp sys /etc/init.d/prngd
chmod 555 /etc/init.d/prngd
ln -s /etc/init.d/prngd /etc/rc2.d/S98prngd
Setting up the sshd user and the /var/empty directory
mkdir /var/empty/
chown root:sys /var/empty/
chmod 755 /var/empty/
groupadd sshd
useradd -g sshd -c 'sshd privsep' -d /var/empty -s /bin/false sshd
Create rsa and dsa public/private key pair
ssh-keygen -t rsa1 -f /usr/local/etc/ssh_host_key -N ""
ssh-keygen -t dsa -f /usr/local/etc/ssh_host_dsa_key -N ""
ssh-keygen -t rsa -f /usr/local/etc/ssh_host_rsa_key -N ""
Create an init script.
cat >> /etc/init.d/sshd
case "$1" in
'start')
if [ -x /usr/local/sbin/sshd ]; then
echo "Starting the secure shell daemon"
/usr/local/sbin/sshd &
fi
;;
'stop')
echo "Stopping the secure shell daemon "
pkill -TERM sshd
;;
*)
echo "Usage: /etc/init.d/sshd { start | stop }"
;;
esac
exit 0
^d
chown root /etc/init.d/sshd
chgrp sys /etc/init.d/sshd
chmod 555 /etc/init.d/sshd
ln -s /etc/init.d/sshd /etc/rc2.d/S98sshd
To be bale login we have to set password for root account. Set password to root.
passwd
7) IOU Configuration
a) Prevent the iou binaries call home
cat >> /etc/hosts
127.0.0.127 xml.cisco.com
127.0.0.127 cisco.com
127.0.0.127 terence.cisco.com
127.0.0.127 terence
127.0.0.127 xml
127.0.0.127 cisco
^d
b) Setting the NETMAP and iourc file
cat >> /etc/profile
IOURC=/export/home/iou/iourc
NETIO_NETMAP=/export/home/iou/NETMAP
export IOURC NETIO_NETMAP
^d
mkdir /export/home/iou/
touch /export/home/iou/NETMAP
cat >> /export/home/iou/iourc
[license]
iou = xxxxxxxxxxxxxxxx; # Using hostname "iou" and hostid "72000000"
^d
Even hostid is calculated based on MAC address of the first Ethernet card, it is not changed when MAC address is changed.
To get valid licence number use crack.py script. Python must be installed.
mount -F hsfs -o ro /dev/dsk/c0t2d0s0 /mnt
cp -r /mnt/iou/carck.py /export/home/iou/
chmod 755 ./crack.py
cp -r /mnt/python-2.6.2-sol26-sparc-local /export/home/python/
cd /export/home/python/
pkgadd -d python-2.6.2-sol26-sparc-local
c) iou2net.pl, wrapper, iou_binary
cp /mnt/iou/iou2net.pl /export/home/iou/
chmod +x /export/home/iou/iou2net.pl
cp /mnt/iou/wrapper /export/home/iou/
chmod +x /export/home/iou/wrapper
cp /mnt/iou/iou_binary /export/home/iou/
chmod +x /export/home/iou/iou_binary
8) CPU Usage Limitation
To decrease CPU load of the host system use cpulimit utility.
Install Fedora packages.
sudo yum install svncpp.i686
Get the latest source code from Subversion repository with this command
svn checkout https://cpulimit.svn.sourceforge.net/svnroot/cpulimit/trunk cpulimit
cd ./cpulimit
make
Copy binary to /usr/local/bin/
cp ./cpulimit /usr/local/bin/
Examples of use:
- Get PID and CPU load with t0p command:
2534 root 20 0 403m 357m 2708 R 40.3 11.8 47:24.83 qemu-system-spa
1793 root 20 0 317m 54m 29m S 15.2 1.8 13:37.23 plasma-desktop
- Process can be specified by its name or PID.
Limit a process by name to 40% CPU
sudo /usr/local/bin/cpulimit -e qemu-system-sparc -l 40
or limit a process by PID to 40% CPU
sudo /usr/local/bin/cpulimit -p 2534 -l 40
Clear logs and history
rm /.ssh/known_hosts
rm /.new
> /var/adm/wtmpx
> /.bash_history
9) Testing
a) Start Qemu disk
/usr/local/bin/qemu-system-sparc -bios /usr/local/share/qemu/ss20_v2.25_rom -M SS-20 -nographic -boot c -hda ./36G.disk -m 512 -serial telnet:0.0.0.0:3000,server -net nic,vlan=0,macaddr=00:aa:00:60:00:01,model=lance -net tap,vlan=0,ifname=tap0,script=no -smp 2,cores=4 -cpu "TI SuperSparc 60"
Set sparc machine IP address:
ifconfig le0 172.18.100.150 netmask 255.255.0.0 up
Hostname IOU must be resolved by local DNS
cat >> /etc/hosts
172.18.100.150 iou
cat >> /export/home/iou/NETMAP
1:0/0@iou 11:0/0@iou # iou is the hostname of the sparc qemu
1:0/1@iou 22:0/0@iou # 11 and 22 are the gns3 router instances
b) Run the iou sparc binary and the iou2net.pl script
/export/home/iou/wrapper -m /export/home/iou/unixl2-upk9-ms.port-security -p 2001 -- -m 128 -q 1 &
perl /export/home/iou/iou2net.pl -p 11 -u 20001:172.18.100.141:30001 &
perl /export/home/iou/iou2net.pl -p 22 -u 20002:172.18.100.141:30002 &
172.18.100.141 is the Fedora host ip address.
c) Start GNS3, use the cloud node and connect the routers using NIO_UDP settings
nio_udp:30001:172.18.100.150:20001
nio_udp:30002:172.18.100.150:20002
172.18.100.150 is the remote (qemu sparc) IP address.