<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>KVM &#8211; Virtually Fun</title>
	<atom:link href="https://virtuallyfun.com/category/kvm/feed/" rel="self" type="application/rss+xml" />
	<link>https://virtuallyfun.com</link>
	<description>Fun with Virtualization</description>
	<lastBuildDate>Sun, 23 Mar 2025 10:14:28 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>
	<item>
		<title>Revisiting a UnixWare 7.1.1 install on Qemu/KVM</title>
		<link>https://virtuallyfun.com/2018/01/31/revisiting-a-unixware-7-1-1-install-on-qemu-kvm/</link>
					<comments>https://virtuallyfun.com/2018/01/31/revisiting-a-unixware-7-1-1-install-on-qemu-kvm/#comments</comments>
		
		<dc:creator><![CDATA[neozeed]]></dc:creator>
		<pubDate>Wed, 31 Jan 2018 09:07:31 +0000</pubDate>
				<category><![CDATA[KVM]]></category>
		<category><![CDATA[QEMU]]></category>
		<category><![CDATA[SYSV]]></category>
		<category><![CDATA[UnixWare]]></category>
		<category><![CDATA[Y2k]]></category>
		<guid isPermaLink="false">https://virtuallyfun.com/?p=8087</guid>

					<description><![CDATA[So after nearly 8 years ago from messing around with UnixWare, I wanted to confirm something from a SYSV Unix that has a C compiler that isn&#8217;t GCC, and I remembered I have UnixWare 7.1.1 from a long time ago.  &#8230; <a href="https://virtuallyfun.com/2018/01/31/revisiting-a-unixware-7-1-1-install-on-qemu-kvm/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p>So after nearly <a href="https://virtuallyfun.com/2010/08/24/unixware-7-1-1/">8 years ago from messing around with UnixWare</a>, I wanted to confirm something from a SYSV Unix that has a C compiler that isn&#8217;t GCC, and I remembered I have UnixWare 7.1.1 from a long time ago.  Anyways I have long since lost the virtual machine I had installed onto, but I still have media and of course the more important licenses.</p>
<div id="attachment_8088" style="width: 645px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2018/01/UnixWare-Business-Edition-cert.jpg"><img fetchpriority="high" decoding="async" aria-describedby="caption-attachment-8088" class="wp-image-8088 size-full" src="https://virtuallyfun.com/wp-content/uploads/2018/01/UnixWare-Business-Edition-cert.jpg" alt="unixware certificate of license and authenticity" width="635" height="270" /></a><p id="caption-attachment-8088" class="wp-caption-text">UnixWare licenses. the dread of fixing things 20+ years later</p></div>
<p>Yep it&#8217;s the real thing.  So with my certs in hand I do an initial install in Qemu and on reboot the system basically has bricked itself.</p>
<p>WARNING: System is in an unreliable state.</p>
<p>And then looking at the licenses it turns out that my license has expired.  What?</p>
<p>Somehow I got lucky before, but it turns out that the installation process for ancient UnixWare is <strong>NOT Y2K compliant</strong>!  And this actually turned out to be a known issue.  I can&#8217;t find the original article, but a mirror is here: <a href="http://www.ischo.net/board_unixware/652">ischo.net</a></p>
<p>So basically install using an eval license, which will of course expire on install, and then use your actual license after the installation, remove the eval, reboot and all will be well.</p>
<p>License Number: UW711EVAL<br />
License Code: airhorpx<br />
License Data: d60;m7hjbtt</p>
<p>Now isn&#8217;t that great.</p>
<div id="attachment_8093" style="width: 812px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2018/01/Post-Install-Expired-Licenses.png"><img decoding="async" aria-describedby="caption-attachment-8093" class="size-full wp-image-8093" src="https://virtuallyfun.com/wp-content/uploads/2018/01/Post-Install-Expired-Licenses.png" alt="" width="802" height="601" /></a><p id="caption-attachment-8093" class="wp-caption-text">The OS install license immediately expires.</p></div>
<p>Although you can&#8217;t boot up in any real useful state, the networking will kick people off, and it&#8217;ll constantly complain that you are in license violation, you can at least bring up the SCO Admin tool, and add in your actual licenses, and then delete the evals.</p>
<div id="attachment_8092" style="width: 812px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2018/01/Licensed-with-my-certificates.png"><img decoding="async" aria-describedby="caption-attachment-8092" class="size-full wp-image-8092" src="https://virtuallyfun.com/wp-content/uploads/2018/01/Licensed-with-my-certificates.png" alt="" width="802" height="601" /></a><p id="caption-attachment-8092" class="wp-caption-text">And now we&#8217;re good!</p></div>
<p>Ok, now for the real fun part, flags and how to run with kvm/qemu.  Since I was loading this onto a server for remote access something like this works fine for me as I&#8217;m using the VNC remote console.</p>
<p>qemu-system-x86_64 -enable-kvm -m 1024 -smp 4 -hda UnixWare.vmdk -cpu pentium -net none -monitor telnet::444,server,nowait -curses -vnc 10.12.0.1:11 -cdrom iso/SCO_UnixWare711.iso</p>
<p>So the key things are to restrict the CPU level, and I&#8217;ve deferred the network configuration so I can update network drivers, and the OS.  I&#8217;ve found that by doing the networking during the install resulted in an OS that crashed with an integer divide by zero after installing the fixpack 5.</p>
<p><a href="https://virtuallyfun.com/wp-content/uploads/2018/01/installing-maintenance-pack-5.png"><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-8090" src="https://virtuallyfun.com/wp-content/uploads/2018/01/installing-maintenance-pack-5.png" alt="" width="1804" height="1005" /></a></p>
<p>Once you have UnixWare 7.1.1 installed, be sure to install <a href="ftp://ftp.sco.com/pub/unixware7/uw711pk/">Maintenance Pack 5</a>, which is thankfully still online over at sco.com  I&#8217;d also recommend to do this in single user mode, you can enter single user mode by hitting a key during the boot logo and typing in:</p>
<p>INITSTATE=S<br />
boot</p>
<p>And you&#8217;ll boot in single user mode, and can install the Maintenance pack with ease.  Until the maintenance pack is installed, expect poor stability, and the system won&#8217;t actually listen to the real time clock device, and it&#8217;ll accelerate the clock like crazy where I was passing an hour every minute or two.</p>
<div id="attachment_8094" style="width: 812px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2018/01/Adding-the-AMD-PCnet-on-UnixWare.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-8094" class="size-full wp-image-8094" src="https://virtuallyfun.com/wp-content/uploads/2018/01/Adding-the-AMD-PCnet-on-UnixWare.png" alt="" width="802" height="601" /></a><p id="caption-attachment-8094" class="wp-caption-text">Adding the AMD PCnet on UnixWare</p></div>
<p>Once the install and update is done, I just added a PCI network card (So older versions of Qemu work well with the ne2k_isa, but newer work much better with the AMD PCNet card.), which is a popular choice for both machines and VM&#8217;s of the era.  Although you can use SLiRP the built in NAT for Qemu/KVM alternatively you can also use tun/tap.  I tried to enable SMP, however it has issues binding to the other processors, although it does see them.  And this is better to give full access to the network stack for fun things like FTP, NFS and whatnot.</p>
<p>qemu-system-x86_64 -enable-kvm -m 1024 -smp 4 -hda UnixWare.vmdk -cpu pentium -monitor telnet::444,server,nowait -curses -vnc 10.12.0.1:11 -device pcnet,netdev=net0 -netdev tap,id=net0,ifname=tap10,script=/etc/qemu-ifup</p>
<div id="attachment_8095" style="width: 671px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2018/01/UnixWare-Telnet.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-8095" class="size-full wp-image-8095" src="https://virtuallyfun.com/wp-content/uploads/2018/01/UnixWare-Telnet.png" alt="" width="661" height="418" /></a><p id="caption-attachment-8095" class="wp-caption-text">Telnet access</p></div>
<p>And just like that I can now access the VM.</p>
<p>And for fun&#8230;</p>
<p># uname -a<br />
UnixWare kvm711 5 7.1.1 i386 x86at SCO UNIX_SVR5<br />
# uname -f<br />
architecture=IA32<br />
bus_types=PCI2.10,ISA,PnP1.0<br />
hostname=kvm711.joes.local<br />
hw_provider=Generic AT<br />
hw_serial=DEM076116<br />
kernel_stamp=04/11/11<br />
machine=Pentium<br />
num_cg=1<br />
num_cpu=1<br />
os_base=UNIX_SVR5<br />
os_provider=SCO<br />
release=5<br />
srpc_domain=<br />
sysname=UnixWare<br />
user_limit=5<br />
version=7.1.1</p>
<p>Oh yeah so I don&#8217;t forget years from now I&#8217;m using the following OS &amp; Qemu version:</p>
<p style="padding-left: 30px;"># qemu-system-x86_64 -version<br />
QEMU emulator version 2.8.1(Debian 1:2.8+dfsg-6+deb9u3)</p>
<p style="padding-left: 30px;"># cat /etc/issue<br />
Debian GNU/Linux 9 \n \l</p>
<p>Also I found an eval serial for SMP, but it doesn&#8217;t recognize the second processor after the boot.</p>
<p># psrinfo -v<br />
Status of processor 0 as of 01/31/18 16:40:07<br />
Processor has been on-line since 01/31/18 16:13:57.<br />
The Pentium processor has a i387 floating point processor.<br />
The following conditions exist:<br />
Device drivers are bound to this processor.</p>
<p>I&#8217;ll try apparently this as for some reason it doesn&#8217;t detect the MP in Qemu/KVM so it never installed the osmp driver.</p>
<p>pkgadd -d cdrom1 osmp</p>
<p>Add the following line to the file /stand/boot:<br />
ACPI=Y</p>
]]></content:encoded>
					
					<wfw:commentRss>https://virtuallyfun.com/2018/01/31/revisiting-a-unixware-7-1-1-install-on-qemu-kvm/feed/</wfw:commentRss>
			<slash:comments>8</slash:comments>
		
		
			</item>
		<item>
		<title>Installing VMware ESXi 5.5.0 Update 3 on KVM</title>
		<link>https://virtuallyfun.com/2017/03/08/installing-vmware-esxi-5-5-0-update-3-kvm/</link>
					<comments>https://virtuallyfun.com/2017/03/08/installing-vmware-esxi-5-5-0-update-3-kvm/#comments</comments>
		
		<dc:creator><![CDATA[neozeed]]></dc:creator>
		<pubDate>Wed, 08 Mar 2017 12:12:31 +0000</pubDate>
				<category><![CDATA[ESX server]]></category>
		<category><![CDATA[KVM]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[VMWare]]></category>
		<guid isPermaLink="false">https://virtuallyfun.com/?p=6949</guid>

					<description><![CDATA[Well I had no luck with the boot process hanging during initialization.  I searched a little, and came across this thread, stating: The line that says &#8220;Running inside a VM; adjusting spinout timeout to 180 seconds&#8221; would suggest that KVM &#8230; <a href="https://virtuallyfun.com/2017/03/08/installing-vmware-esxi-5-5-0-update-3-kvm/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p>Well I had no luck with the boot process hanging during initialization.  I searched a little, and <a href="https://communities.vmware.com/thread/451412?start=0&amp;tstart=0">came across this thread, stating</a>:</p>
<p style="padding-left: 30px;">The line that says &#8220;Running inside a VM; adjusting spinout timeout to 180 seconds&#8221; would suggest that KVM implements enough of our backdoor interface to make it look like we&#8217;re running under a VMware hypervisor.  When we&#8217;re running in this environment, we use the backdoor to get the host TSC frequency.  I suspect that KVM doesn&#8217;t implement the &#8220;GETMHZ&#8221; backdoor call, so we are confused about the TSC frequency.  The 30ms delay turns into &#8230; 30 hours?  30 years?</p>
<p>So they had a source code change for QEMU 1.7.0, however it obviously doesn&#8217;t work in 2.x.  It was rolled up stream, and then made into a switch to disable with a simple flag to add into the command line.</p>
<p style="padding-left: 30px;">-machine vmport=off</p>
<p>So with that set I ran the following:</p>
<p style="padding-left: 30px;">kvm -vnc 0.0.0.0:1 -cpu host \<br />
-machine vmport=off \<br />
-m 4096M \<br />
-smp cpus=2 \<br />
-drive file=esx-1.qcow2,if=ide,index=0,media=disk \<br />
-serial telnet:127.0.0.1:5001,server,nowait \<br />
-monitor tcp:127.0.0.1:6001,server,nowait \<br />
-cdrom /root/VMware-VMvisor-Installer-5.5.0.update03-3116895.x86_64.iso -boot d \<br />
-net none \<br />
-device vmxnet3,mac=00:2e:3c:92:26:00,netdev=esx-0 \<br />
-device vmxnet3,mac=00:2e:3c:92:26:01,netdev=esx-1 \<br />
-device e1000,mac=00:2e:3c:92:26:02,netdev=esx-2 \<br />
-device e1000,mac=00:2e:3c:92:26:03,netdev=esx-3 \<br />
-netdev socket,id=esx-0,udp=127.0.0.1:10000,localaddr=127.0.0.1:20000 \<br />
-netdev socket,id=esx-1,udp=127.0.0.1:10001,localaddr=127.0.0.1:20001 \<br />
-netdev socket,id=esx-2,udp=127.0.0.1:10002,localaddr=127.0.0.1:20002 \<br />
-netdev socket,id=esx-3,udp=127.0.0.1:10003,localaddr=127.0.0.1:20003</p>
<p>And now I can boot up, and install VMWare!</p>
<div id="attachment_6950" style="width: 1036px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/ESXi-5.5.0-on-Qemu-KVM.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6950" class="size-full wp-image-6950" src="https://virtuallyfun.com/wp-content/uploads/2017/03/ESXi-5.5.0-on-Qemu-KVM.png" alt="" width="1026" height="800" /></a><p id="caption-attachment-6950" class="wp-caption-text">ESXi 5.5.0 on Qemu KVM</p></div>
<p>By default you will not be permitted to start any virtual machine.  To get around this you have to enable VMWare to run nested.<br />
Add the following to /etc/vmware/config under ESX:</p>
<p style="padding-left: 30px;">vmx.allowNested=TRUE</p>
<p>And then you are good to go!</p>
<div id="attachment_6951" style="width: 734px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/VM-running-on-nested-ESXi-5.5.0.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6951" class="size-full wp-image-6951" src="https://virtuallyfun.com/wp-content/uploads/2017/03/VM-running-on-nested-ESXi-5.5.0.png" alt="" width="724" height="510" /></a><p id="caption-attachment-6951" class="wp-caption-text">VM running on nested ESXi 5.5.0</p></div>
]]></content:encoded>
					
					<wfw:commentRss>https://virtuallyfun.com/2017/03/08/installing-vmware-esxi-5-5-0-update-3-kvm/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Running VMWare ESXi 6.5 under Linux/KVM!</title>
		<link>https://virtuallyfun.com/2017/03/07/running-vmware-esxi-6-5-linuxkvm/</link>
					<comments>https://virtuallyfun.com/2017/03/07/running-vmware-esxi-6-5-linuxkvm/#comments</comments>
		
		<dc:creator><![CDATA[neozeed]]></dc:creator>
		<pubDate>Tue, 07 Mar 2017 07:07:24 +0000</pubDate>
				<category><![CDATA[ESX server]]></category>
		<category><![CDATA[KVM]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[VMWare]]></category>
		<guid isPermaLink="false">https://virtuallyfun.com/?p=6931</guid>

					<description><![CDATA[So, with VIRL in hand, the next thing I wanted to do was play with some LACP, and VMWare ESX.  Of course, the best way to do this is under KVM as you can use UDP to bounce packets around &#8230; <a href="https://virtuallyfun.com/2017/03/07/running-vmware-esxi-6-5-linuxkvm/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p>So, with VIRL in hand, the next thing I wanted to do was play with some LACP, and VMWare ESX.  Of course, the best way to do this is under KVM as you can use UDP to bounce packets around between virtual machines, like the VIRL L2 switch.  I went ahead and fired up 5.5 and got this nice purple screen of death.</p>
<div id="attachment_6932" style="width: 1036px" class="wp-caption alignleft"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/purple-error.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6932" class="size-full wp-image-6932" src="https://virtuallyfun.com/wp-content/uploads/2017/03/purple-error.png" alt="" width="1026" height="800" /></a><p id="caption-attachment-6932" class="wp-caption-text">Purple screen of death!</p></div>
<p>So naturally I need to force the processor type. Also after reading a few sites, I needed to turn on a nested &amp; ignore_msrs settings:</p>
<p>root@ubuntu:/etc/modprobe.d# cat qemu-system-x86.conf</p>
<p style="padding-left: 30px;">options kvm_amd nested=1<br />
options kvm ignore_msrs=1</p>
<p>Naturally if you are using an Intel processor the statements need to reflect that.  All being well you will see something like this in your log file:</p>
<p>Mar 7 11:34:38 ubuntu kernel: [ 14.802132] kvm: Nested Virtualization enabled<br />
Mar 7 11:34:38 ubuntu kernel: [ 14.802134] kvm: Nested Paging enabled</p>
<p>I got a little further trying to install VMWare ESXi 5.5 update 3, however it just hangs on Intitializing timing&#8230;</p>
<div id="attachment_6934" style="width: 732px" class="wp-caption alignleft"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/vMWare-5.5.0-update-3-hanging.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6934" class="size-full wp-image-6934" src="https://virtuallyfun.com/wp-content/uploads/2017/03/vMWare-5.5.0-update-3-hanging.png" alt="" width="722" height="432" /></a><p id="caption-attachment-6934" class="wp-caption-text">vMWare 5.5.0 update 3 hanging</p></div>
<p>(<em><a href="https://virtuallyfun.com/2017/03/08/installing-vmware-esxi-5-5-0-update-3-kvm/">I did later solve the 5.5 problem in a follow up here!</a></em>)</p>
<p>After going nowhere with that, I went ahead and downloaded VMWare ESXi 6.5 which as of today is the latest version, and that installed just fine!</p>
<div id="attachment_6935" style="width: 732px" class="wp-caption alignleft"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/VMware-ESXi-6.5.0-loaded-on-KVM.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6935" class="wp-image-6935 size-full" src="https://virtuallyfun.com/wp-content/uploads/2017/03/VMware-ESXi-6.5.0-loaded-on-KVM.png" alt="" width="722" height="432" /></a><p id="caption-attachment-6935" class="wp-caption-text">ESXi 6.5.0 running under KVM</p></div>
<p>For anyone brave or crazy enough to think about reproducing this, here is my install command line (yes Im doing this old school way on purpose)</p>
<p style="padding-left: 30px;">kvm -vnc 0.0.0.0:1 -cpu host \<br />
-machine pc-i440fx-2.1 \<br />
-m 4096M \<br />
-smp cpus=2 \<br />
-boot order=d \<br />
-drive file=esx-1.qcow2,if=ide,index=0,media=disk \<br />
-serial telnet:127.0.0.1:5001,server,nowait \<br />
-monitor tcp:127.0.0.1:6001,server,nowait \<br />
-net none \<br />
-device vmxnet3,mac=00:2e:3c:92:26:00,netdev=esx-0 \<br />
-device vmxnet3,mac=00:2e:3c:92:26:01,netdev=esx-1 \<br />
-device vmxnet3,mac=00:2e:3c:92:26:02,netdev=esx-2 \<br />
-device vmxnet3,mac=00:2e:3c:92:26:03,netdev=esx-3 \<br />
-netdev socket,id=esx-0,udp=127.0.0.1:10000,localaddr=127.0.0.1:20000 \<br />
-netdev socket,id=esx-1,udp=127.0.0.1:10001,localaddr=127.0.0.1:20001 \<br />
-netdev socket,id=esx-2,udp=127.0.0.1:10002,localaddr=127.0.0.1:20002 \<br />
-netdev socket,id=esx-3,udp=127.0.0.1:10003,localaddr=127.0.0.1:20003 \<br />
-cdrom VMware-VMvisor-Installer-5.5.0.update03-3116895.x86_64.iso \<br />
-boot d</p>
<p>As you can see it really isn&#8217;t that involved, well once you get the formatting to make some sense.  And to run it normally I run it something like this:</p>
<p style="padding-left: 30px;">kvm -vnc 0.0.0.0:1 -cpu host \<br />
-machine pc-i440fx-2.1 \<br />
-m 4096M \<br />
-smp cpus=2 \<br />
-drive file=esx-1.qcow2,if=ide,index=0,media=disk \<br />
-serial telnet:127.0.0.1:5001,server,nowait \<br />
-monitor tcp:127.0.0.1:6001,server,nowait \<br />
-net none \<br />
-device vmxnet3,mac=00:2e:3c:92:26:00,netdev=esx-0 \<br />
-device vmxnet3,mac=00:2e:3c:92:26:01,netdev=esx-1 \<br />
-device vmxnet3,mac=00:2e:3c:92:26:02,netdev=esx-2 \<br />
-device vmxnet3,mac=00:2e:3c:92:26:03,netdev=esx-3 \<br />
-netdev socket,id=esx-0,udp=127.0.0.1:10000,localaddr=127.0.0.1:20000 \<br />
-netdev socket,id=esx-1,udp=127.0.0.1:10001,localaddr=127.0.0.1:20001 \<br />
-netdev socket,id=esx-2,udp=127.0.0.1:10002,localaddr=127.0.0.1:20002 \<br />
-netdev socket,id=esx-3,udp=127.0.0.1:10003,localaddr=127.0.0.1:20003</p>
<p>So, it&#8217;s basically the same, just no mounted CD-ROM image.  Now this is all fun, but what about networking?  As I had mentioned before, I bought a VIRL license, which includes a l2 Catalyst image, so why not use that, instead of a &#8216;traditional&#8217; Linux bridge?  Sure!  In this example I&#8217;m going to connect the 4 ethernet ports from the ESXi into the first 4 ports on the cisco switch, with the last port connecting to a Linux bridge, that I then route to, as I wanted all my lab crap on a separate network.  To start the switch I use this script:</p>
<p style="padding-left: 30px;">kvm \<br />
-m 768M \<br />
-smp cpus=1 \<br />
-boot order=c \<br />
-drive file=vios_l2-adventerprisek9-m.vmdk.SSA.152-4.0.55.E.qcow2,if=ide,index=0,media=disk \<br />
-serial telnet:127.0.0.1:5000,server,nowait \<br />
-monitor tcp:127.0.0.1:51492,server,nowait \<br />
-net none \<br />
-device e1000,mac=00:2e:3c:92:26:00,netdev=gns3-0 \<br />
-device e1000,mac=00:2e:3c:92:26:01,netdev=gns3-1 \<br />
-device e1000,mac=00:2e:3c:92:26:02,netdev=gns3-2 \<br />
-device e1000,mac=00:2e:3c:92:26:03,netdev=gns3-3 \<br />
-device e1000,mac=00:2e:3c:92:26:04 \<br />
-device e1000,mac=00:2e:3c:92:26:05 \<br />
-device e1000,mac=00:2e:3c:92:26:06 \<br />
-device e1000,mac=00:2e:3c:92:26:07 \<br />
-device e1000,mac=00:2e:3c:92:26:08 \<br />
-device e1000,mac=00:2e:3c:92:26:09 \<br />
-device e1000,mac=00:2e:3c:92:26:0a \<br />
-device e1000,mac=00:2e:3c:92:26:0b,netdev=gns3-tap \<br />
-netdev socket,id=gns3-0,udp=127.0.0.1:20000,localaddr=127.0.0.1:10000 \<br />
-netdev socket,id=gns3-1,udp=127.0.0.1:20001,localaddr=127.0.0.1:10001 \<br />
-netdev socket,id=gns3-2,udp=127.0.0.1:20002,localaddr=127.0.0.1:10002 \<br />
-netdev socket,id=gns3-3,udp=127.0.0.1:20003,localaddr=127.0.0.1:10003 \<br />
-netdev tap,id=gns3-tap,ifname=tap0,script=/etc/qemu-ifup \<br />
-nographic</p>
<p>Now as you can see the udp sockets are inverse of eachother, meaning that the ESX listens on 10000 and sends to 127.0.0.1 on port 20000, while the switch listesns on 20000, and sends packets to 10000 for the first ethernet interface pair.</p>
<p>By default VMware only assigns the first NIC into the first virtual switch, so after enabling CDP, we can see we have basic connecitivity:</p>
<p style="padding-left: 30px;">AMD-kvm#sho run int gig0/1<br />
Building configuration&#8230;</p>
<p style="padding-left: 30px;">Current configuration : 99 bytes<br />
!<br />
interface GigabitEthernet0/1<br />
media-type rj45<br />
speed 1000<br />
duplex full<br />
no negotiation auto<br />
end</p>
<p style="padding-left: 30px;">AMD-kvm#show cdp neigh<br />
Capability Codes: R &#8211; Router, T &#8211; Trans Bridge, B &#8211; Source Route Bridge<br />
S &#8211; Switch, H &#8211; Host, I &#8211; IGMP, r &#8211; Repeater, P &#8211; Phone,<br />
D &#8211; Remote, C &#8211; CVTA, M &#8211; Two-port Mac Relay</p>
<p style="padding-left: 30px;">Device ID Local Intrfce Holdtme Capability Platform Port ID<br />
KVMESX-1 Gig 0/0 155 S VMware ES vmnic0</p>
<p style="padding-left: 30px;">Total cdp entries displayed : 1</p>
<p>And of course the networking actually does work&#8230; I created a quick VM, and yep, It&#8217;s online!</p>
<p style="padding-left: 30px;">AMD-kvm#show mac address-table<br />
Mac Address Table<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p style="padding-left: 30px;">Vlan Mac Address Type Ports<br />
&#8212;- &#8212;&#8212;&#8212;&#8211; &#8212;&#8212;&#8211; &#8212;&#8211;<br />
1 000c.2962.09e5 DYNAMIC Gi0/0<br />
1 002e.3c92.2600 DYNAMIC Gi0/0<br />
1 76b0.3336.34b3 DYNAMIC Gi2/3<br />
Total Mac Addresses for this criterion: 3</p>
<p>And of course some obliguttory pictures:</p>
<div id="attachment_6937" style="width: 1896px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/test-nested-NT-4-server-on-vmware-65-running-under-kvm.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6937" class="size-full wp-image-6937" src="https://virtuallyfun.com/wp-content/uploads/2017/03/test-nested-NT-4-server-on-vmware-65-running-under-kvm.png" alt="" width="1886" height="724" /></a><p id="caption-attachment-6937" class="wp-caption-text">Nested ESXi running a simple NT 4.0 server</p></div>
<p>And:</p>
<div id="attachment_6938" style="width: 928px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/welcome-to-IIS-2.0.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6938" class="size-full wp-image-6938" src="https://virtuallyfun.com/wp-content/uploads/2017/03/welcome-to-IIS-2.0.png" alt="" width="918" height="716" /></a><p id="caption-attachment-6938" class="wp-caption-text">Welcome to IIS 2.0</p></div>
<p>With ip forwarding turned on my Ubuntu server, and an ip address assigned to my bridge interface, I can then access the NT 4.0 VM from my laptop directly.</p>
<p>Nex&#8217;t time to make the L2 more complicated, and add in some L3 insanity&#8230;</p>
]]></content:encoded>
					
					<wfw:commentRss>https://virtuallyfun.com/2017/03/07/running-vmware-esxi-6-5-linuxkvm/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
		<item>
		<title>Getting started with cisco VIRL L2 virtual Ethernet switches</title>
		<link>https://virtuallyfun.com/2017/03/06/getting-started-cisco-virl-l2-virtual-ethernet-switches/</link>
					<comments>https://virtuallyfun.com/2017/03/06/getting-started-cisco-virl-l2-virtual-ethernet-switches/#comments</comments>
		
		<dc:creator><![CDATA[neozeed]]></dc:creator>
		<pubDate>Mon, 06 Mar 2017 05:42:16 +0000</pubDate>
				<category><![CDATA[cisco]]></category>
		<category><![CDATA[cisco networking]]></category>
		<category><![CDATA[GNS3]]></category>
		<category><![CDATA[KVM]]></category>
		<category><![CDATA[virtual networking]]></category>
		<guid isPermaLink="false">https://virtuallyfun.com/?p=6901</guid>

					<description><![CDATA[Well for the longest time there was no generally available way to emulate a cisco L2 switch. right beforeÂ Dynamips was abandoned, in 0.28RC1, there was actually some work on the the Catalyst 6000 Supervisor 1 line card, although no interfaces &#8230; <a href="https://virtuallyfun.com/2017/03/06/getting-started-cisco-virl-l2-virtual-ethernet-switches/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p>Well for the longest time there was no generally available way to emulate a cisco L2 switch. right beforeÂ Dynamips was abandoned, in <a href="http://unix.superglobalmegacorp.com/cgi-bin/cvsweb.cgi/cf/dev_c6sup1.c?rev=1.1.1.1;cvsroot=Dynamips;only_with_tag=dynamips_028-rc1">0.28RC1</a>, there was actually some work on the the <a href="http://www.cisco.com/c/en/us/products/interfaces-modules/catalyst-6500-series-supervisor-engine-1a/index.html">Catalyst 6000 Supervisor 1 line card</a>, although no interfaces are supported, and it was largely seen as impossible at the time.</p>
<p>While there may have been leaks of the internal IOU or IOS on UNIX, these are even more dubious than buying your own cisco 7200 and running that IOS on Dynamips. Â Indeed in the old days you&#8217;d no doubt find people with home labs that look something like this:</p>
<div id="attachment_6902" style="width: 2314px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/IMG_20170304_120222.jpg"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6902" class="size-full wp-image-6902" src="https://virtuallyfun.com/wp-content/uploads/2017/03/IMG_20170304_120222.jpg" alt="" width="2304" height="1296" /></a><p id="caption-attachment-6902" class="wp-caption-text">My sad lab.</p></div>
<p>So yeah, I know it&#8217;s not new but it was new to me. Â But yes, VIRL is something us mere mortals can buy without a CCIE on hand, or a multi-million dollar contract on hand. Â Although it isn&#8217;t free, but compared to everything else cisco sells it&#8217;s cheap&#8230;</p>
<p><a href="http://virl.cisco.com/getvirl/"><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-6903" src="https://virtuallyfun.com/wp-content/uploads/2017/03/purchase-VIRL.png" alt="" width="1245" height="701" /></a></p>
<p>So VIRL comes in a few different flavors. Â They do have an ISO to run on bare metal x86 machines, OVAs for deployment on VMWare Workstation, and ESXi (Although for player you&#8217;ll have to get VIX and the vmnet config util from workstation, as I went through <a href="https://virtuallyfun.com/2014/05/25/gns3-vmware/">here</a> &amp; <a href="https://virtuallyfun.com/2016/01/19/getting-dot1q-to-work-between-vmware-and-gns3/">here</a>).</p>
<p>Although that&#8217;s not so much what I&#8217;m interested in. Â As always I&#8217;m more interested in something that lets me run it on my own.</p>
<div id="attachment_6904" style="width: 1046px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/Download-Cisco-Virtual-Internet-Routing-Lab-IOSvL2.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6904" class="size-full wp-image-6904" src="https://virtuallyfun.com/wp-content/uploads/2017/03/Download-Cisco-Virtual-Internet-Routing-Lab-IOSvL2.png" alt="" width="1036" height="770" /></a><p id="caption-attachment-6904" class="wp-caption-text">Downloading the l2 image</p></div>
<p>So as of today, the latest file isÂ vios_l2-adventerprisek9-m.vmdk.SSA.152-4.0.55.E, with the MD5 checksum ofÂ 1a3a21f5697cae64bb930895b986d71e.</p>
<p>So as a first test, you can run the L2 image with Qemu/KVM! Â I found it works better renamingÂ vios_l2-adventerprisek9-m.vmdk.SSA.152-4.0.55.E toÂ vios_l2-adventerprisek9-m.vmdk.SSA.152-4.0.55.E.vmdk otherwise there was some issues with Qemu picking up the image.</p>
<p>The command line for a switch can be a little crazy so it&#8217;ll break some of it up onto separate lines. Â This way you can see that I bound a few interfaces to listen on UDP, while most of them are unbound, but you get the idea. Â Naturally it being a cisco product, it drives with a serial console.</p>
<p style="padding-left: 30px;">qemu-system-i386w.exe<br />
-m 768M<br />
-smp cpus=1<br />
-boot order=c<br />
-drive file=vios_l2-adventerprisek9-m.vmdk.SSA.152-4.0.55.E.vmdk,if=ide,index=0,media=disk<br />
-serial telnet:127.0.0.1:5000,server,nowait<br />
-monitor tcp:127.0.0.1:51492,server,nowait<br />
-net none -device e1000,mac=00:2e:3c:92:26:00<br />
-device e1000,mac=00:2e:3c:92:26:01,netdev=gns3-1<br />
-netdev socket,id=gns3-1,udp=127.0.0.1:10003,localaddr=127.0.0.1:10002<br />
-device e1000,mac=00:2e:3c:92:26:02<br />
-device e1000,mac=00:2e:3c:92:26:03<br />
-device e1000,mac=00:2e:3c:92:26:04<br />
-device e1000,mac=00:2e:3c:92:26:05,netdev=gns3-5<br />
-netdev socket,id=gns3-5,udp=127.0.0.1:10000,localaddr=127.0.0.1:10001<br />
-device e1000,mac=00:2e:3c:92:26:06 -device e1000,mac=00:2e:3c:92:26:07<br />
-device e1000,mac=00:2e:3c:92:26:08 -device e1000,mac=00:2e:3c:92:26:09<br />
-device e1000,mac=00:2e:3c:92:26:0a -device e1000,mac=00:2e:3c:92:26:0b<br />
-nographic</p>
<p>In some ways, this is very much like running <a href="http://gunkies.org/wiki/Installing_Solaris_2.4_on_Qemu_SPARC">Solaris on QEMU via a serial console</a>. Â Once booted up, if you grab the console you&#8217;ll see:</p>
<div id="attachment_6905" style="width: 671px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/l2-grub-console.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6905" class="size-full wp-image-6905" src="https://virtuallyfun.com/wp-content/uploads/2017/03/l2-grub-console.png" alt="" width="661" height="418" /></a><p id="caption-attachment-6905" class="wp-caption-text">l2&#8217;s grub console</p></div>
<p>Now, while I think it&#8217;s interesting to play with, but I know many people don&#8217;t like to setup and run a dozen programs manually, so how do we get this to run underÂ GNS3!</p>
<p>As of right now the current version is 1.5.3, so let&#8217;s step through this real quick</p>
<div id="attachment_6906" style="width: 390px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/GNS-153.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6906" class="size-full wp-image-6906" src="https://virtuallyfun.com/wp-content/uploads/2017/03/GNS-153.png" alt="" width="380" height="266" /></a><p id="caption-attachment-6906" class="wp-caption-text">Version 1.5.3</p></div>
<p>First when you fire it up (by default) you&#8217;ll get the option to specify using a local server</p>
<div id="attachment_6907" style="width: 776px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/use-local-server.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6907" class="size-full wp-image-6907" src="https://virtuallyfun.com/wp-content/uploads/2017/03/use-local-server.png" alt="" width="766" height="218" /></a><p id="caption-attachment-6907" class="wp-caption-text">use local server</p></div>
<p>Next you will want to check the box to add a Qemu VM</p>
<div id="attachment_6908" style="width: 731px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/Add-a-Qemu-VM.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6908" class="size-full wp-image-6908" src="https://virtuallyfun.com/wp-content/uploads/2017/03/Add-a-Qemu-VM.png" alt="" width="721" height="317" /></a><p id="caption-attachment-6908" class="wp-caption-text">Add a Qemu VM</p></div>
<p>give it a name like adventerprisek9-m.vmdk.SSA.152-4.0.55.E&#8230; Or anything else you wish to call it.</p>
<div id="attachment_6909" style="width: 635px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/give-it-a-name-like-adventerprisek9-m.vmdk_.SSA_.152-4.0.55.E.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6909" class="size-full wp-image-6909" src="https://virtuallyfun.com/wp-content/uploads/2017/03/give-it-a-name-like-adventerprisek9-m.vmdk_.SSA_.152-4.0.55.E.png" alt="" width="625" height="449" /></a><p id="caption-attachment-6909" class="wp-caption-text">give it a name</p></div>
<p>Next I set the emulator to qemu-system-i386.exe and give it 768MB of RAM.</p>
<div id="attachment_6910" style="width: 635px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/set-to-the-i386-and-768MB-of-RAM.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6910" class="size-full wp-image-6910" src="https://virtuallyfun.com/wp-content/uploads/2017/03/set-to-the-i386-and-768MB-of-RAM.png" alt="" width="625" height="449" /></a><p id="caption-attachment-6910" class="wp-caption-text">set the Qemu emulator &amp; RAM</p></div>
<p>hit next, and then it&#8217;ll prompt to select a disk image. Â In this example, remember I had renamed the downloaded VIRL image to have a VMDK extension.</p>
<div id="attachment_6911" style="width: 836px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/select-the-image-added-a-VMDK-extension.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6911" class="size-full wp-image-6911" src="https://virtuallyfun.com/wp-content/uploads/2017/03/select-the-image-added-a-VMDK-extension.png" alt="" width="826" height="518" /></a><p id="caption-attachment-6911" class="wp-caption-text">select the image</p></div>
<p>Then GNS3 will prompt to add it to the default images directory</p>
<div id="attachment_6913" style="width: 512px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/add-VMDK-to-the-default-images-directory.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6913" class="size-full wp-image-6913" src="https://virtuallyfun.com/wp-content/uploads/2017/03/add-VMDK-to-the-default-images-directory.png" alt="" width="502" height="119" /></a><p id="caption-attachment-6913" class="wp-caption-text">add it to the images directory</p></div>
<p>After that the wizard is complete.</p>
<div id="attachment_6914" style="width: 635px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/hit-finish.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6914" class="size-full wp-image-6914" src="https://virtuallyfun.com/wp-content/uploads/2017/03/hit-finish.png" alt="" width="625" height="449" /></a><p id="caption-attachment-6914" class="wp-caption-text">Then finish</p></div>
<p>However there is still a bunch of settings that still need to change. Â If you don&#8217;t make these changes you&#8217;ll have a switch with a single Ethernet port, and you will only be able to deploy a single switch, so that won&#8217;t be any fun!.</p>
<p>Once the wizard has finished you&#8217;ll be in the Preferences. Â Just hit edit, on the template we just added, or otherwise it&#8217;s under Edit-&gt;Preferences.</p>
<div id="attachment_6915" style="width: 992px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/hit-edit.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6915" class="size-full wp-image-6915" src="https://virtuallyfun.com/wp-content/uploads/2017/03/hit-edit.png" alt="" width="982" height="712" /></a><p id="caption-attachment-6915" class="wp-caption-text">Hit edit</p></div>
<p>First thing is kind of cosmetic, but go ahead and set the Category to Switches, so that way it &#8216;flows&#8217; nice in the UI.</p>
<div id="attachment_6916" style="width: 597px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/set-category-to-switches.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6916" class="size-full wp-image-6916" src="https://virtuallyfun.com/wp-content/uploads/2017/03/set-category-to-switches.png" alt="" width="587" height="565" /></a><p id="caption-attachment-6916" class="wp-caption-text">set category</p></div>
<p>Next hit the Network tab, and then add some adapters.</p>
<div id="attachment_6917" style="width: 597px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/set-the-adapters-to-something-more-usable-like-12.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6917" class="size-full wp-image-6917" src="https://virtuallyfun.com/wp-content/uploads/2017/03/set-the-adapters-to-something-more-usable-like-12.png" alt="" width="587" height="565" /></a><p id="caption-attachment-6917" class="wp-caption-text">set the adapters to something more usable like 12</p></div>
<p>I&#8217;ve set the switch to 12 adapters. Â The default of 1 isn&#8217;t too useful. Â Next up hit the Advanced settings tab. Â Be sure to un-check the &#8216;Use as a linked base VM&#8217; . This will let you deploy multiple copies. Â On Windows there is some weird issue where changes are seemingly not saved, so be sure to have a config backup strategy beyond saving the config locally.</p>
<div id="attachment_6918" style="width: 597px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2017/03/uncheck-the-Use-as-linked-base-VM.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6918" class="size-full wp-image-6918" src="https://virtuallyfun.com/wp-content/uploads/2017/03/uncheck-the-Use-as-linked-base-VM.png" alt="" width="587" height="565" /></a><p id="caption-attachment-6918" class="wp-caption-text">uncheck the Use as linked base VM</p></div>
<p>Great, hit OK, and now we&#8217;ve got our L2 template for GNS3!</p>
<p>As a bonus, I put it on Linux, and it&#8217;ll run under KVM, however if you use the cisco downloaded files, you&#8217;ll see this error while booting:</p>
<p class="p1" style="padding-left: 30px;"><span class="s1">-Traceback= 1DBB7C8z 8DBFE5z 90522Ez 904F50z 904D5Dz 900F45z 901B7Bz 901B0Fz 8D7C0Dz 8D7B0Dz 887061z 8BAE73z 8B9FD7z 8B7827z 8BCCC4z 8C0587z &#8211; Process &#8220;Async write process&#8221;, CPU hog, PC 0x008D7D62</span></p>
<p class="p1">Over and over, and it&#8217;ll be generally slow. Â For some reason KVM/Qemu on Linux is struggling with the VMDK. Â So the solution is to simply convert it from a VMWare VMDK into a Qcow2 image with:</p>
<p class="p1"><span class="s1"> qemu-img convert -f vmdk -O qcow2 vios_l2-adventerprisek9-m.vmdk.SSA.152-4.0.55.E.vmdk<span class="Apple-converted-space">Â  </span>vios_l2-adventerprisek9-m.vmdk.SSA.152-4.0.55.E.qcow2 </span></p>
<p class="p1">Now using the qcow2 file, the switch will boot up just fine!</p>
<p class="p1">For any reference I&#8217;m runningÂ <span class="s1">Ubuntu 16.10</span></p>
<p class="p1">and the KVM version is:</p>
<p class="p1"><span class="s1"># kvm &#8211;version</span></p>
<p class="p1" style="padding-left: 30px;"><span class="s1">QEMU emulator version 2.6.1 (Debian 1:2.6.1+dfsg-0ubuntu5.3), Copyright (c) 2003-2008 Fabrice Bellard</span></p>
]]></content:encoded>
					
					<wfw:commentRss>https://virtuallyfun.com/2017/03/06/getting-started-cisco-virl-l2-virtual-ethernet-switches/feed/</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		
			</item>
		<item>
		<title>Windows NT 3.1 &#038; KVM</title>
		<link>https://virtuallyfun.com/2016/10/06/windows-nt-3-1-kvm/</link>
					<comments>https://virtuallyfun.com/2016/10/06/windows-nt-3-1-kvm/#comments</comments>
		
		<dc:creator><![CDATA[neozeed]]></dc:creator>
		<pubDate>Thu, 06 Oct 2016 01:34:25 +0000</pubDate>
				<category><![CDATA[KVM]]></category>
		<category><![CDATA[Windows NT 3.1]]></category>
		<guid isPermaLink="false">https://virtuallyfun.com/?p=6460</guid>

					<description><![CDATA[I don&#8217;t know what I was expecting, but I thought I&#8217;d try to install Windows NT 3.1 Advanced Server in a KVM virtual machine. Â No doubt the processor is just too new. Â The -cpu 486 / -cpu pentium flags didn&#8217;t &#8230; <a href="https://virtuallyfun.com/2016/10/06/windows-nt-3-1-kvm/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<div id="attachment_6461" style="width: 732px" class="wp-caption alignleft"><a href="https://virtuallyfun.com/wp-content/uploads/2016/10/NT-3.1-sp3-bluescreen-on-KVM.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-6461" class="size-full wp-image-6461" src="https://virtuallyfun.com/wp-content/uploads/2016/10/NT-3.1-sp3-bluescreen-on-KVM.png" alt="No go." width="722" height="432" /></a><p id="caption-attachment-6461" class="wp-caption-text">No go.</p></div>
<p>I don&#8217;t know what I was expecting, but I thought I&#8217;d try to install Windows NT 3.1 Advanced Server in a KVM virtual machine. Â No doubt the processor is just too new. Â The -cpu 486 / -cpu pentium flags didn&#8217;t help things out at all. Â However using Qemu has it running just fine.</p>
<p>I also had this crazy idea that haproxy could front HTTP 1.1 requests into serweb so I could go back to having a Windows NT 3.1 web server. Â Naturally that didn&#8217;t work.</p>
<h1 style="padding-left: 30px;">502 Bad Gateway</h1>
<p style="padding-left: 30px;">The server returned an invalid or incomplete response.</p>
<p>Oh well.</p>
<p>The useless update, is that I managed to get Apache 1.3.4 to compile and run on Windows NT 3.1!</p>
<blockquote class="wp-embedded-content" data-secret="iHQ4IhcbhM"><p><a href="https://virtuallyfun.com/2016/10/12/apache-1-3-4-on-windows-nt-3-1/">Apache 1.3.4 on Windows NT 3.1</a></p></blockquote>
<p><iframe loading="lazy" class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="&#8220;Apache 1.3.4 on Windows NT 3.1&#8221; &#8212; Virtually Fun" src="https://virtuallyfun.com/2016/10/12/apache-1-3-4-on-windows-nt-3-1/embed/#?secret=API7945H7j#?secret=iHQ4IhcbhM" data-secret="iHQ4IhcbhM" width="584" height="329" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe></p>
]]></content:encoded>
					
					<wfw:commentRss>https://virtuallyfun.com/2016/10/06/windows-nt-3-1-kvm/feed/</wfw:commentRss>
			<slash:comments>8</slash:comments>
		
		
			</item>
		<item>
		<title>All aboard the VENOM hype train!</title>
		<link>https://virtuallyfun.com/2015/05/13/all-aboard-the-venom-hype-train/</link>
					<comments>https://virtuallyfun.com/2015/05/13/all-aboard-the-venom-hype-train/#comments</comments>
		
		<dc:creator><![CDATA[neozeed]]></dc:creator>
		<pubDate>Wed, 13 May 2015 14:55:42 +0000</pubDate>
				<category><![CDATA[KVM]]></category>
		<category><![CDATA[QEMU]]></category>
		<category><![CDATA[random updates]]></category>
		<guid isPermaLink="false">https://virtuallyfun.com/?p=5112</guid>

					<description><![CDATA[So here we go, another time for another major security threat, and this time it&#8217;s the &#8220;VIRTUALIZED ENVIRONMENT NEGLECTED OPERATIONS MANIPULATION&#8221; aka VENOM attack. Â Yes it has a website, and even a logo! (Creative Commons Attribution-ShareAlike 4.0 International License) So &#8230; <a href="https://virtuallyfun.com/2015/05/13/all-aboard-the-venom-hype-train/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p>So here we go, another time for another major security threat, and this time it&#8217;s the &#8220;VIRTUALIZED ENVIRONMENT NEGLECTED OPERATIONS MANIPULATION&#8221; aka VENOM attack. Â Yes it has a <a href="http://venom.crowdstrike.com/">website</a>, and even a logo! (Creative Commons Attribution-ShareAlike 4.0 International License)</p>
<div id="attachment_5113" style="width: 552px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2015/05/venom-logo.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5113" class="size-full wp-image-5113" src="https://virtuallyfun.com/wp-content/uploads/2015/05/venom-logo.png" alt="Look at me!" width="542" height="375" /></a><p id="caption-attachment-5113" class="wp-caption-text">Look at me!</p></div>
<p>So what is all the fuss about? Â Well if you can compromise a Xen, or KVM (and QEMU) VM to run code that bangs against the floppy controller it can have a buffer overflow exploit.</p>
<p>fantastic.</p>
<p>But, I know what you are thinking, most people who KVM use guest OSs that either don&#8217;t have floppy drivers, or even explicitly disable the floppy controller. Â And from the site:</p>
<blockquote><p>an unrelated bug causes the vulnerable FDC code to remain active and exploitable by attackers.</p></blockquote>
<p>Oops.</p>
<p>But let&#8217;s calm down, first the attacker has to get root level on the VM before they can think about doing anything. Â Of course this is a BIG problem for VM resellers. Â Hopefully the patches will be available quickly, and they will be moderately disruptive, especially for those of us who still use virtual floppies.</p>
<p>The source patch has been released on <a href="http://lists.nongnu.org/archive/html/qemu-devel/2015-05/msg02600.html">the Qemu mailing list right here</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://virtuallyfun.com/2015/05/13/all-aboard-the-venom-hype-train/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Installing Debian 7 in KVM via the CLI (text mode)</title>
		<link>https://virtuallyfun.com/2015/04/26/installing-debian-7-in-kvm-via-the-cli-text-mode/</link>
					<comments>https://virtuallyfun.com/2015/04/26/installing-debian-7-in-kvm-via-the-cli-text-mode/#comments</comments>
		
		<dc:creator><![CDATA[neozeed]]></dc:creator>
		<pubDate>Sun, 26 Apr 2015 09:46:33 +0000</pubDate>
				<category><![CDATA[KVM]]></category>
		<category><![CDATA[Linux]]></category>
		<guid isPermaLink="false">https://virtuallyfun.com/?p=5044</guid>

					<description><![CDATA[So with my new disk, and my server back online, I went ahead and re-installed my web server VM, and the newer install from the netcd is graphical of all things. Ugh. If anyone cares, here is how I do &#8230; <a href="https://virtuallyfun.com/2015/04/26/installing-debian-7-in-kvm-via-the-cli-text-mode/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p>So with my new disk, and my server back online, I went ahead and re-installed my web server VM, and the newer install from the netcd is graphical of all things.</p>
<div id="attachment_5045" style="width: 584px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2015/04/Screen-Shot-2015-04-25-at-9.01.03-PM.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5045" class="size-full wp-image-5045" src="https://virtuallyfun.com/wp-content/uploads/2015/04/Screen-Shot-2015-04-25-at-9.01.03-PM.png" alt="xx" width="574" height="370" /></a><p id="caption-attachment-5045" class="wp-caption-text">Debian&#8217;s graphical installer</p></div>
<p>Ugh.</p>
<p>If anyone cares, here is how I do this, the old cli way. I don&#8217;t like weird manager things, I&#8217;m capable of hitting flags myself:</p>
<p class="p1" style="padding-left: 30px;"><span class="s1">kvm -m 640 -nographic -curses -hda blog.vmdk -cdrom /install/debian-7.8.0-i386-netinst.iso -boot d -vnc 10.12.0.1:23 -net nic,vlan=0,macaddr=52:54:00:11:11:23 -net tap,vlan=0,ifname=tap0,script=/etc/qemu-ifup</span></p>
<p class="p1">very simple, right?</p>
<p class="p1">So the &#8216;solution&#8217; to this is quite simple hit escape a few times, and the screen will repaint, and you should get the grub boot prompt</p>
<div id="attachment_5046" style="width: 582px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2015/04/Screen-Shot-2015-04-25-at-9.01.23-PM.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5046" class="size-full wp-image-5046" src="https://virtuallyfun.com/wp-content/uploads/2015/04/Screen-Shot-2015-04-25-at-9.01.23-PM.png" alt="gr" width="572" height="365" /></a><p id="caption-attachment-5046" class="wp-caption-text">The text mode grub loader</p></div>
<p>So simply type in:</p>
<p style="padding-left: 30px;">install vga=normal fb=none</p>
<p>And hit enter, and you should now be good to go!</p>
<div id="attachment_5047" style="width: 580px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2015/04/Screen-Shot-2015-04-25-at-9.01.36-PM.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5047" class="size-full wp-image-5047" src="https://virtuallyfun.com/wp-content/uploads/2015/04/Screen-Shot-2015-04-25-at-9.01.36-PM.png" alt="Debian text mode installer" width="570" height="368" /></a><p id="caption-attachment-5047" class="wp-caption-text">Debian text mode installer</p></div>
<p>I guess I can go over some quick guide to setting up the tun/tap bridging.  This section is to be added to <span class="s1">/etc/network/interfaces </span></p>
<p style="padding-left: 30px;">iface br0 inet static<br />
address 10.12.0.1<br />
netmask 255.255.255.0<br />
network 10.12.0.0<br />
broadcase 10.12.0.255<br />
bridge_fd 9<br />
bridge_hello 2<br />
bridge_maxage 12<br />
bridge_stp off<br />
pre-up brctl addbr br0<br />
post-down brctl delbr br0</p>
<p>And the qemu-ifup script:</p>
<p style="padding-left: 30px;"># cat /etc/qemu-ifup<br />
#!/bin/sh</p>
<p style="padding-left: 30px;">echo &#8220;Executing /etc/qemu-ifup&#8221;<br />
echo &#8220;Bringing up $1 for bridged mode&#8230;&#8221;<br />
sudo /sbin/ifconfig $1 0.0.0.0 promisc up<br />
echo &#8220;Adding $1 to br0&#8230;&#8221;<br />
sudo /sbin/brctl addif br0 $1<br />
sleep 2</p>
<p>thats about it.  Debian 8, was just released, and I suspect all of this will have changed.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://virtuallyfun.com/2015/04/26/installing-debian-7-in-kvm-via-the-cli-text-mode/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>OS/2 and KVM don&#8217;t mix.</title>
		<link>https://virtuallyfun.com/2014/10/22/os2-and-kvm-dont-mix/</link>
					<comments>https://virtuallyfun.com/2014/10/22/os2-and-kvm-dont-mix/#comments</comments>
		
		<dc:creator><![CDATA[neozeed]]></dc:creator>
		<pubDate>Wed, 22 Oct 2014 07:26:49 +0000</pubDate>
				<category><![CDATA[KVM]]></category>
		<category><![CDATA[OS/2]]></category>
		<category><![CDATA[OS/2 2.0]]></category>
		<category><![CDATA[QEMU]]></category>
		<guid isPermaLink="false">https://virtuallyfun.com/?p=4628</guid>

					<description><![CDATA[After I was able to run OS/2 2.11 on VMware with PCI drivers, I thought I&#8217;d try KVM. &#160; No go. Â Also Qemu 2.1.2 on Linux didn&#8217;t fare much better. Â Must be something about HPFS and raw disk images. Â The &#8230; <a href="https://virtuallyfun.com/2014/10/22/os2-and-kvm-dont-mix/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p>After I was able to run <a href="https://virtuallyfun.com/?p=4196">OS/2 2.11 on VMware</a> with PCI drivers, I thought I&#8217;d try KVM.</p>
<div id="attachment_4629" style="width: 653px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2014/10/KVM-OS2-crash.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-4629" class="size-full wp-image-4629" src="https://virtuallyfun.com/wp-content/uploads/2014/10/KVM-OS2-crash.png" alt="KVM internal error. Suberror: 1 emulation failure EAX=00000720 EBX=00000050 ECX=fee10050 EDX=00400780 ESI=d02f004c EDI=ff3f0000 EBP=00000d88 ESP=00000d72 EIP=00006725 EFL=00013202 [-------] CPL=3 II=0 A20=1 SMM=0 HLT=0 ES =0047 00080000 00000f9f 0010f300 DPL=3 DS16 [-WA] CS =d517 1aa20000 0000672d 0000ff00 DPL=3 CS16 [CRA] SS =0017 00020000 00000fff 0000f300 DPL=3 DS16 [-WA] DS =bfcf 17f90000 0000033d 0000f300 DPL=3 DS16 [-WA] FS =0000 00000000 ffffffff 00000000 GS =bfff 17ff0000 00000fff 0000f300 DPL=3 DS16 [-WA] LDT=0028 7be57000 0000ffff 00008200 DPL=0 LDT TR =0010 ffe1f6e7 00000067 00008b00 DPL=0 TSS32-busy GDT=     7c7e5000 00001fff IDT=     ffe201e0 000003ff CR0=8001001b CR2=00080000 CR3=001b3000 CR4=00000000 DR0=0000000000000000 DR1=0000000000000000 DR2=0000000000000000 DR3=0000000000000000 DR6=00000000ffff0ff0 DR7=0000000000000400 EFER=0000000000000000 Code=ca 76 0f 8b ca eb 0b 03 7e 22 8b ca 3b cb 76 02 8b cb 2b d1 &lt;f3&gt; ab 0b d2 75 ed 2b c0 c3 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" width="643" height="389" /></a><p id="caption-attachment-4629" class="wp-caption-text">OS/2 2.11 crashing on KVM</p></div>
<p><!---------



<p style="padding-left: 30px;">KVM internal error. Suberror: 1
emulation failure
EAX=00000720 EBX=00000050 ECX=fee10050 EDX=00400780
ESI=d02f004c EDI=ff3f0000 EBP=00000d88 ESP=00000d72
EIP=00006725 EFL=00013202 [-------] CPL=3 II=0 A20=1 SMM=0 HLT=0
ES =0047 00080000 00000f9f 0010f300 DPL=3 DS16 [-WA]
CS =d517 1aa20000 0000672d 0000ff00 DPL=3 CS16 [CRA]
SS =0017 00020000 00000fff 0000f300 DPL=3 DS16 [-WA]
DS =bfcf 17f90000 0000033d 0000f300 DPL=3 DS16 [-WA]
FS =0000 00000000 ffffffff 00000000
GS =bfff 17ff0000 00000fff 0000f300 DPL=3 DS16 [-WA]
LDT=0028 7be57000 0000ffff 00008200 DPL=0 LDT
TR =0010 ffe1f6e7 00000067 00008b00 DPL=0 TSS32-busy
GDT= 7c7e5000 00001fff
IDT= ffe201e0 000003ff
CR0=8001001b CR2=00080000 CR3=001b3000 CR4=00000000
DR0=0000000000000000 DR1=0000000000000000 DR2=0000000000000000 DR3=0000000000000000
DR6=00000000ffff0ff0 DR7=0000000000000400
EFER=0000000000000000
Code=ca 76 0f 8b ca eb 0b 03 7e 22 8b ca 3b cb 76 02 8b cb 2b d1 &lt;f3&gt; ab 0b d2 75 ed 2b c0 c3 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-------><br />
No go. Â Also Qemu 2.1.2 on Linux didn&#8217;t fare much better. Â Must be something about HPFS and raw disk images. Â The funny thing is that even once a disk became corrupted, I quit Qemu, restore the disk, and start again, and it&#8217;s still behaving like it&#8217;s corrupt. Â Qemu 0.15.X has been the most stable branch I&#8217;ve found to run OS/2, but it&#8217;s so obsolete now.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://virtuallyfun.com/2014/10/22/os2-and-kvm-dont-mix/feed/</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		
			</item>
		<item>
		<title>Qemu vs KVM with Novell Netware 3.12</title>
		<link>https://virtuallyfun.com/2013/12/03/qemu-vs-kvm-with-novell-netware-3-12/</link>
					<comments>https://virtuallyfun.com/2013/12/03/qemu-vs-kvm-with-novell-netware-3-12/#comments</comments>
		
		<dc:creator><![CDATA[neozeed]]></dc:creator>
		<pubDate>Tue, 03 Dec 2013 03:28:03 +0000</pubDate>
				<category><![CDATA[KVM]]></category>
		<category><![CDATA[netware]]></category>
		<category><![CDATA[Novell Netware 3.12]]></category>
		<category><![CDATA[QEMU]]></category>
		<guid isPermaLink="false">https://virtuallyfun.com/?p=3629</guid>

					<description><![CDATA[So I received an interesting tip, talking about the latest Qemu version, when it was mentioned that it isn&#8217;t the hardware that is at fault with Netware not running, but rather something in the emulated CPU. Because, get this, Novell &#8230; <a href="https://virtuallyfun.com/2013/12/03/qemu-vs-kvm-with-novell-netware-3-12/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p>So I received an <a href="https://virtuallyfun.com/?p=3616">interesting tip</a>, talking about the latest Qemu version, when it was mentioned that it isn&#8217;t the hardware that is at fault with Netware not running, but rather something in the emulated CPU.</p>
<p>Because, get this, Novell Netware runs in KVM.</p>
<div id="attachment_3630" style="width: 733px" class="wp-caption aligncenter"><a href="https://virtuallyfun.com/wp-content/uploads/2013/12/Screen-Shot-2013-12-03-at-11.19.08-AM.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3630" class="size-full wp-image-3630" src="https://virtuallyfun.com/wp-content/uploads/2013/12/Screen-Shot-2013-12-03-at-11.19.08-AM.png" alt="Novell Netware 3.12" width="723" height="425" /></a><p id="caption-attachment-3630" class="wp-caption-text">Novell Netware 3.12</p></div>
<p>I was taken back, all this time I thought it was something in the -M isapc definition that broke, but it&#8217;s the CPU! Â I even rebuilt Qemu with the TCG interpreter, and it too breaks. Â I even went one more crazy step, and installed with the ancient isadisk controller, and NE2000 on the ISA bus, and it works!</p>
<p>So for now my old copy of Netware I bought a million years ago lives in the cloud!</p>
]]></content:encoded>
					
					<wfw:commentRss>https://virtuallyfun.com/2013/12/03/qemu-vs-kvm-with-novell-netware-3-12/feed/</wfw:commentRss>
			<slash:comments>12</slash:comments>
		
		
			</item>
		<item>
		<title>Some random updates</title>
		<link>https://virtuallyfun.com/2013/10/22/some-random-updates-2/</link>
					<comments>https://virtuallyfun.com/2013/10/22/some-random-updates-2/#respond</comments>
		
		<dc:creator><![CDATA[neozeed]]></dc:creator>
		<pubDate>Tue, 22 Oct 2013 15:13:15 +0000</pubDate>
				<category><![CDATA[KVM]]></category>
		<category><![CDATA[QEMU]]></category>
		<category><![CDATA[random updates]]></category>
		<guid isPermaLink="false">https://virtuallyfun.com/?p=3406</guid>

					<description><![CDATA[First I just found out about the KVM Forum 2013, taking place inÂ Edinburgh, Scotland. You can find all kinds of information and videos of the presentation on the G+ page! This is an incredible resource for anyone thinking of deploying &#8230; <a href="https://virtuallyfun.com/2013/10/22/some-random-updates-2/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p>First I just found out about the <a href="http://events.linuxfoundation.org/events/kvm-forum">KVM Forum 2013</a>, taking place inÂ Edinburgh, Scotland.</p>
<p>You can find all kinds of information and videos of the presentation on the <a href="https://plus.google.com/107691536544094955898/posts">G+ page</a>!</p>
<p>This is an incredible resource for anyone thinking of deploying KVM (<a href="http://pve.proxmox.com/wiki/Main_Page">Proxmox/VE</a>!) in a serious setting. Â Unlike VMWare ESX this is a free solution with no insane license restrictions. Â Not to mention that KVM+Qemu is far more flexible than any traditional x86 focused hypervisor will ever be. Â And poor Microsoft still doesn&#8217;t yet offer x86_64 solution.</p>
<p>I also got a ping back from <a href="http://www.linuxlifestyle.com/challenge-completed/">Linux Lifestyle</a>, about a challenge to find an ancient version of Linux. Â Although the real credit goes to the excellent preservation work of <a href="http://oldlinux.org/">oldlinux.org</a> .</p>
<p>Personal note, I got the flu (again!) and have been sick.. which is why the lag in the network stuff, but I&#8217;ll bang more on it tomorrow. Â I&#8217;ll finally get to adding remote sites, routing protocols, and all that fun stuff. Â Internet/NAT/Firewalls afterwards. Â ASA stuff too, as much as I don&#8217;t like them.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://virtuallyfun.com/2013/10/22/some-random-updates-2/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
