Solution: Cisco VPN on Windows 10 Error 442 "Failed to enable Virtual Adapter"

Posted in Blog on December 7th, 2014 by Matt – Be the first to comment

On my Windows 10 PC the Cisco Systems VPN adapter (not AnyConnect) worked for a bit then started throwing error 442 "Failed to enable Virtual Adapter". Even after uninstalling and re installing the application I still encountered the error.

Cisco VPN Error 442 on Windows 10

Cisco VPN Error 442 on Windows 10

I finally found a fix on a post in the Cisco Support forums here

The solution is this:

  1. Open Registry editor by typing regedit in the Run prompt
  2.  Browse to the Registry Key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CVirtA

    Cisco VPN Regedit

    Cisco VPN Regedit

  3.  Select the DisplayName to modify, and remove the leading characters from the value data up to "%;" i.e.

    - For x86, change the value data from something like "@oem20.inf,%CVirtA_Desc%;Cisco Systems VPN Adapter” to "Cisco Systems VPN Adapter”

    - For x64, change the value data from something like "@oem20.inf,%CVirtA_Desc%;Cisco Systems VPN Adapter for 64-bit Windows” to "Cisco Systems VPN Adapter for 64-bit Windows”

Cisco VPN Regedit

Cisco VPN Regedit

That fixed it for me. Now my VPN connection works perfectly.

Force ASUS PCE-AC68 (and other adapters) onto 5GHz Wireless 802.11ac

Posted in Blog on November 21st, 2014 by Matt – Be the first to comment

I recently purchased a ASUS PCE-AC68 802.11ac Wireless adapter for my Windows gaming machine so I can benefit from the speed that my Apple Airport Extreme's 802.11ac wireless offers.

After some tweaking I've finally got this setup working perfectly. Offering my Windows 10 Gaming PC a 500Mb/s wireless connection while being three rooms away. Here's what I did to force the PCE-AC68 to join the 5GHz ac network:

ASUS PCE-AC68

ASUS PCE-AC68

Apple Airport Extreme

Apple Airport Extreme

 

 

 

 

 

 

 

 

 

 

I found that when I joined the new ASUS adapter to my Airport Extreme's wireless network, the adapter defaulted to 802.11g speeds and 2.4GHz. I could simply disable the 802.11b/g network on my Airport, but I didnt want to limit my connectivity options (plus I have an older iPad that only supports b/g).

The better option is tell the ASUS adapter to disable its ability to connect to b/g networks so the only wireless network it sees are the a/c networks.

To disable 802.11 b/g bands do the folling:

  1. First join the wireless network and test to make sure its working.
  2. Right click on the wireless network bars on the start bar in the lower right and select "Open Network and Sharing Center

    Open Network and Sharing Center

    Open Network and Sharing Center

  3. Select the "Change Adapter Settings" option from the left hand side.

    Change Adapter Settings

    Change Adapter Settings

  4. Right click on your wireless network connection, select "Properties" from the dropdown
  5. Click the "Configure" button
  6. Select the "Advanced" tab at the top
  7. On the scrolling list look for "Disable bands" and select it.
  8. On the drop down list of options select "802.11b/g"

    ASUS Adapter Configuration

    ASUS Adapter Configuration

Your adapter should immediately rejoin the network, but this time at 802.11ac speeds. To verify your wireless connection speeds right click the wireless bars in the lower right, select  the Network and Sharing Center, click the Wi-Fi connection. The Speed section shows the connection speed between the wireless adapter and your router.

Wireless Speed

Wireless Speed

If you're seeing anything above 300Mb/s you're connected via 802.11ac wireless. Want faster speeds above that? It's all about location, location, location. Try moving your adapters antenna into a corner (no closer that 1 ft from any walls).

How to Bulk Delete All Music from an iPhone without iTunes

Posted in Blog on March 14th, 2014 by Matt – 2 Comments

I recently wanted to update to the latest iOS release while at work. However, I found I couldn't do so because I had ran out of space. My Music was taking up over 4 gigs. I didn't care about removing it, because I could always re-add it when I got home.

The only way I could find to delete music was one song at a time by swiping left to right on each and every song. I had 5 gigs of music, that was going to take forever!!

I wanted a way to delete all the music from my iPhone at once. In bulk. In one go. Not by swiping on every single song.

I found a way to delete all the music in one action!

On your iPhone go to Settings > General > Usage. It should look something like this:

iOS Usage Settings

iOS Usage Settings
Yes this phone has lots of free space, its just an example.

Now select the Music app from that list. You should see All Music and how much space it's using. Swipe from right to left on it and it will remove All Music from your iPhone without having to use iTunes.

Delete All Music from iPhone in the Usage Settings

Delete All Music from iPhone in the Usage Settings

It's easy to do once you figure out how to do it, but I couldn't find anywhere this was documented. The swipe to delete from usage function doesn't work on most other apps... it just happens to work for Music.

Speaker Wiring: Bi-Amping or Bi-Wiring, Active and Passive Explained

Posted in Blog, Tech, Tutorial on March 4th, 2014 by Matt – 2 Comments

Two amplifiers driving a pair of speakers has got to be better than one, right? Well everything's not as logical as it first sounds in the world of audio. In many cases running two amplifiers (bi-amping) is a complete waste of an amplifier.

There's lots of information out there, but most of it is in long winded articles. Let's see if we can get the basics a little more clear with some diagrams.

I'll diagram out the three most common ways of connecting bi-ampable speakers: Bi-Wiring, Bi-Amping with a passive or no crossover, and Bi-Amping with an active crossover.

I'm going to assume you have a set of speakers that can be bi-amped or bi-wired. How do you know if you do? Look for two sets of terminals on the back of your speakers:

Bi-amp terminals on the back of Polk Monitor speakers.

Bi-amp terminals on the back of Polk Monitor speakers.

Each set of terminals connects to either the highs in the speaker (tweeters) or the lows in the speaker (woofers). In the picture above you can clearly see the terminal bridges installed. Terminal bridges allow you to connect bi-ampable speakers via a single speaker wire to your amplifier. Just as you would if you had non bi-ampable speakers.

First up we have bi-wiring. Bi-wiring is simply running two sets of wires to each speaker. Your first logical thought is that adding more wire will reduce resistance of the wire connecting speaker to the amp. Well yes, but the resistance of the wire is so small as to be negligable. Assuming you're using  decent speaker wire; Bi-wirings only benefit is wasting a length of wire. 

BiAmp-BiWire

Bi-wiring uses twice as much wire compared to a normal connection.

Next up Passive Bi-Amping. Here's the real waste of power with no benefit. Hows that you ask? I mean double the power right? How can that go wrong? (Jeremy Clarkson voice) POWEEEEERRRR!!!

In this case both amps amplify the full range of frequencies, and that's the problem. As we talked about above one set of terminals is only wanting high frequencies for the tweeters. The other set of terminals only wants low frequencies for the woofers. To ensure that your tweeters aren't blown by low frequencies resistors and other electronics are installed to block all low the low frequencies on the tweeters connections. Half those amplified frequencies are never going to reach a speaker. The amplifier handling the tweeters is having all low frequencies blocked before they make it to the tweeter.  The same goes for the amplifier handling the woofers, half of its energy is never used, being blocked before the woofers. And I use half loosely. Woofers use more power as a percentage than tweeters, but the analogy stands (note the math on the diagram).

BiAmp-Passive

Passive biamping is the waste of a perfectly good amplifier.

Lastly we have Active Bi-Amping. Yes this one actually has a use, but the benefits may not be as great as you would hope. If your amplifier is powerful enough that it can cause the speakers to distort before the amp itself distorts, then you have zero reason for this setup. On the other hand if, in a normal wiring setup, your speakers can handle your amplifier at max level then you may see some benefit. But I'd argue the case of why purchase two weak amplifiers and not just buy one powerful amplifier in the first place?

BiAmp-Active

The full power from each amplifier is being seen by the speakers.

And in this setup we come across the problem with the fact that tweeters need less power than woofers. So assuming you're using matching amplifiers (and they should match for even sound) for both the tweeters and woofers. When the amplifier on the woofers is at max levels, the amplifier at the tweeters will be at a considerable less level; a waste of power. But you say, "I'm not planning to max my amplifier out. That would be too loud..." then whats the point of having double the amplifiers if a single one supplies enough power for your comfortable listening level!?

If you still say (Jeremy Clarkson voice) "POWEEER!!!!" then by all means, bi-amp away.

I hope this sheds a little light on a sometimes counter intuitive concept. Comment below with your thoughts.

Looking for a super in-depth conversation? Try this AVSForum thread. 35 pages of discussion.

Setting up a VMware ESXi 4.1 Environment with a Dell PS4000x SAN using Software iSCSI, Multiple Paths and Jumbo Frames

Posted in Blog, Tech, Tutorial on March 8th, 2012 by Matt – Be the first to comment

Yea, that's a jumble of a title. This will be a brain dump of all the configuration I've done on our SAN environment. Looking back it seems so easy to configure, and I doubt that it would take me more than an hour or two to set up a whole new SAN environment from scratch. But since this was my first time, it took me a lot of reading and research. Here's a dump of what I've done:

Our environment:

Two Dell r710 servers: Each with four onboard NIC ports and two add-in Broadcom 5709s with two ports each. Each server has two internal hard disks in a RAID 1 (mirrored) array to boot ESXi off of. Booting directly from the SAN is an option I will explore at a later date. In our environment I already had one server hosting a few VMs off of internal storage including a VSphere server. This process was an upgrade to add a SAN and another server. A note: If I could do this over again I would NOT have purchased Broadcom 5709s in our servers. The main reason I got them was to offload all iSCSI traffic to the cards and use the hardware iSCSI initiators in VMware. Apparently 5709s support offloading of iSCSI but not with jumbo frames. After reading this article which benchmarks VMware with hardware iSCSI without jumbo frames against software iSCSI with jumbo frames I decided I would use the software iSCSI initiators.

One Dell PS4000x SAN: The SAN has two controllers each with three ports. One port is for management and is on our LAN. The other two are for SAN traffic. The controllers work in a Active/Standby configuration. The secondary controller simply mirrors the primary controllers configuration and sits idle until the primary controller fails, then the secondary takes over.

Two Cisco 3750G Switches: The pair are in a stacked configuration using Cisco's StackWise interconnects. These switches will ONLY be used for the SAN. Doing so saves a lot of VLAN configuration. At the moment I didn't even set VLAN information.

My process:

The following is how I set all this up. I used tons of various articles from official configuration guides to forum and blog posts. I'll try to link to the actual documents used wherever possible.

I rack mounted everything. I decided to go with the switches top most. Below that (with some space) our two servers. Below that (with some space) our SAN, Below that (with some space) two UPSs.

Install ESXi:

As stated earlier my environment already had one ESXi server running with VMs hosted out of internal storage including a VM hosting VSphere. I simply installed ESXi on the new server, wired it into the SAN/LAN and added it to VSphere. From there I managed everything. If I were doing this fresh (without a VSphere install) I'd install ESXi on both servers, connect all the SAN/LAN connections then connect to each one via a VSphere client  independently to configure the SAN connections then create a VSphere VM to manage them both.

Network Connections:

For redundancy each server should have at least two completely independent network routes to the SAN and LAN. In my situation each of my Dell servers have three independent network controllers. The two Broadcom cards and the onboard units. On each server I'm using one port on each of the two Broadcom cards for SAN connectivity. The SAN has two controller cards. Each card has two SAN ports and a management port. One SAN port from each card is connected to one switch and the Management ports are connected to the LAN.

Should any one network card on a server fail the sever will still have SAN and LAN access. Should any one of the switches fail the servers will have SAN and LAN access. Should any one of the SAN controllers fail the servers will have SAN and LAN access.

IP addresses for each device are in the 10.0.0.0/24 range. The Dell SAN requires three IP address. One for each network port (.1 and .2) on a member and a group IP address (.10). The servers have two SAN IPs each (.3 .4 and .5 .6).

SAN Topology Diagram

SAN Topology Diagram: Blue is SAN connections. Green is LAN connections.

Configuring the Cisco 3750g Switches:

Following the Appendix F of the Dell EqualLogic Configuration Guide "Cisco IOS based Switch Configuration" I enabled portfast, enabled flow control, disabled unicast storm, and enabled jumbo frames. Once again I'm setting these options on all ports because these are dedicated SAN only switches. Also because my switches are stacked I can configure them both from the same connection. Your situation may differ.

Enabled portfast on all ports:

Switch# config terminal
Switch(config)# spanning-tree portfast default
Switch(config)# end
Switch# copy running-config startup-config

Enabled flow control:

Switch> enable
Switch# configure terminal
Switch(config)# interface range gi1/0/1 - 24
Switch(config-if)# flowcontrol receive desired
Switch(config-if)# exit
Switch(config)# interface range gi2/0/1 - 24
Switch(config-if)# flowcontrol receive desired
Switch(config-if)# exit
Switch(config)# exit
Switch# copy running-config startup-config

Disabled unicast storm control:

Switch> enable
Switch# configure terminal
Switch(config)# interface range gi1/0/1 - 24
Switch(config-if)# no storm-control unicast level
Switch(config-if)# exit
Switch(config)# interface range gi2/0/1 - 24
Switch(config-if)# no storm-control unicast level
Switch(config-if)# exit
Switch(config)# exit
Switch# copy running-config startup-config

Enabled Jumbo Frames (notice this requires a reload... don't do this if you're on production equipment!):

Switch> enable
Switch# config terminal
Switch(config)# system mtu jumbo 9000
Switch(config)# exit
Switch# copy running-config startup-config
Switch# reload

Then I verified all my settings:

Switch# show spanning-tree interface gi1/0/1
Switch# show flowcontrol interface gi1/0/1
Switch# show storm-control gi1/0/1 unicast
Switch# configure t
Switch(config)# show system mtu
Switch(config)# exit
Switch# show interface gigabitethernet1/0/1

The last command is to confirm and MTU of 9000 on the port. Repeat the previous commands on all ports to ensure they have the necessary settings.

Initialize the SAN:

First time use of the PS Series SANs require you to connect to the unit with a serial cable and run a initial configuration wizard. The PS4000 Installation and Setup Manual covers all these steps in more detail.

Hook up the serial cable and open a connection to whatever COM port you used. I used Putty for this. Hit enter and you should get a prompt. Type "setup" to start the configuration wizard. First time setup uses "grpadmin" for both the username and password. From here you'll br prompted to set up a member name, group name, IP address, password and a few other things. After this process completes you can connect in a web browser to the units management interface via the IP address you set. From there you can setup the RAID level and volumes. At this time I've chosen RAID 5, but since I'm currently not production with this unit I plan on reformatting it to RAID 6 and RAID 50 to test performance levels. A note: Once you've chosen a particular RAID level you can only change to similar RAID levels.

RAID-10: Can only be changed to RAID-50, RAID-6, or RAID-5
RAID-50: Can only be changed to RAID-6 or RAID-5
RAID-6: can only be changed to RAID-5

Should you want to make an unsupported RAID level change you need to pretty much start over with the SAN member. In a one member environment this means also starting over with the group. See this post by an EqualLogic employee.

After completing the initial setup, I connected to the SAN's LAN IP address and created a temporary volume. Having a volume ready to connect to makes it easier to know you've set up your ESXi iSCSI connections correctly.

Install the Dell MEM (Multipath Extension Module):

This module is an alternative to the built in VMware iSCSI path selectors. It's configured to better support the PS series controllers. Installation consists of downloading the Dell Multipath Extension Module then using one of three ways to install it to your ESX hosts. All of the following is taken from the Installation and User Guide that comes in the MEM download package. Note: No matter which method you choose your ESX host will need to be in maintenance mode.

I chose to install the module via the vSphere CLI that's available here. After installing the vSphere CLI, I extracted the contents of the Dell MEM download to the /bin directory in the CLI install. Then after launching the CLI and changing directory to the /bin directory ("cd bin") I ran the following:

esxcli --server=esxi1 software vib install --depot dell-eql-mem-esx4-1.1.0.222691.zip

Then repeated the command for my other ESX server and took both servers out of maintenance mode.

Configuring ESXi SAN Connections with Jumbo Frames:

Most of the following I got from the VMware iSCSI SAN Configuration Guide however that guide doesn't cover jumbo frames. For Jumbo frames replace the commands in the previous guide with the commands from the Knowledge Base article: iSCSI and Jumbo Frames configuration on ESX/ESXi.

All of the guides say to do the steps straight from the terminal. However all of the steps can be accomplished remotely using the VMware CLI. The VMware CLI is a series of Perl scripts. According to the documentation you can simply type the scripts name then switches to launch them. However on my computer I needed to change to the /bin subdirectory of the CLI install (where the scripts are actually located) and call each script with its .pl extension. Since the guides commands all assume your at the console the "--server=servername" switch will needed to be added to all commands in the guides.

Create a vSwitch:

esxcfg-vswitch.pl --server=esxi1 -a vSwitch-iSCSI

Change the MTU to 9000 on the vSwitch:

esxcfg-vswitch.pl --server=esxi1 -m 9000 vSwitch-iSCSI

Create two VM kernal port groups for iSCSI traffic (because I have two SAN connections on this server):

esxcfg-vswitch.pl --server=esxi1 -A iSCSI1 vSwitch-iSCSI
esxcfg-vswitch.pl --server=esxi1 -A iSCSI2 vSwitch-iSCSI

Create two VM kernal connections (one for each port group) with jumbo frames:

esxcfg-vmknic.pl --server=esxi1 -a -i 10.0.0.3 -n 255.255.255.0 -m 9000 iSCSI1
esxcfg-vmknic.pl --server=esxi1 -a -i 10.0.0.4 -n 255.255.255.0 -m 9000 iSCSI2

Make a note of the port names assigned to these connections when you create them. The port name will be in the format of "vmk#". You can view the port name from the networking section under the configuration tab. In my case iSCSI1 was vmk1 and iSCSI2 was vmk2

Each VMKernal Port needs to be assigned to one physical adapter. By default since all ports on a switch can use all adapters on the switch. We need to change each port to ONLY use a particular adapter. To do so select Properties on the vSwitch we created. Select the first iSCSI port listed and hit the Edit button. On the NIC Teaming tab move all but one of the vmnic adapters to the Unused Adapters section. Repeat the process for the other iSCSI ports on the switch so that each iSCSI port is bound to only one Active Adapter.

Failover Override

Each iSCSI port must be assigned only one Active Adapter

Enable the Software iSCSI adapter now if you haven't. Log in to vSphere client, select your server, configuration tab, Storage Adapters, select the Software iSCSI Adapter (and make a note of its port name, e.g. vmhba#), click configure, select Enable. In my case the Software iSCSI Adapter was vmhba41.

Bind the iSCSI ports to the iSCSI adapters:

esxcli --server=esxi1 swiscsi nic add -n vmk1 -d vmhba41
esxcli --server=esxi1 swiscsi nic add -n vmk2 -d vmhba41

The last step is to set up our discovery address and scan the bus.  Under the Storage Adapter section of the Configuration tab select the Software iSCSI adapter, select Properties, select the Dynamic Discovery tab, select the Add button and input the IP address of our Dell SAN group, not the individual member, but the group. In our case the group IP was 10.0.0.10. Select OK. When you hit close on the iSCSI Initiator Properties window you will be prompted to scan the bus. Select yes. If everything worked out correctly a new entry should populate under the iSCSI Storage Adapter details. Also if we navigate to the the Storage section we should see the volume we created earlier available for use.

An alternative to running each of the previous commands individually is to use the setup.pl script provided by Dell. We copied it over earlier to our vSphere CLI installation bin folder from the Dell MEM installation. Using the script consists of launching the vSphere CLI, changing into the /bin directory (only because thats where we extracted it earlier), and running the following:

setup.pl --configure --server=esxi1

The script will then prompt your for all the parameters we used earlier and setup everything automatically. It makes setup very easy. Have a look:

Dell's Setup Script

Dell's Setup Script - Click to Enlarge

Confirming Jumbo Frames are Being Used:

To confirm you are in fact using Jumbo frames and multiple paths you can connect to the Dell SAN's management interface via web browser, login, and go to the Monitoring section and select the Events list. You should see "iSCSI log on to target... stuff here... successfull, using Jumbo frame length."

Finished!

Now you're up and running. If this was a fresh install I'd create myself a vSphere server VM and go to town.

Windows with two network connections: internal and external

Posted in Blog, Tech, Tutorial on May 6th, 2011 by Matt – 2 Comments

This post applies to both Windows 7 and Windows XP (and probably the server OS's as well).

At the office we have two available networks: An internal network with our servers that also has filtered internet and an external wifi network that just offers unfiltered internet.

The main issue is that, as an IT tech, I download a lot of large files that can slow down our network, so I often found myself using a laptop on our external wifi downloading items so that I don't slow internal people down.

My goal was to have two network connections on my Windows 7 PC, one wired internal connection and one a wifi external connection. I also want my internet traffic to go over my wifi connection but at the same time any have the ability to access all the internal sources.

A warning before I start: Doing this incorrectly can open a giant security hole in your network, please don't do it without the approval of your IT dept.

First, I simply hooked up both network connections and tested them both (by only plugging one in at a time and checking the internet) as fully functional.

Once both are functional you need to edit your routing table so the correct requests go over the correct network adapter.

You can do this via the command line, but I found the Nirsoft NetRouteView utility to make this whole process a whole bunch easier.

Download and extract the NetRouteView utility. Then if on Windows 7, right click the NetRouteView.exe file and select "Run as Administrator".

NetRouteView with two connections

Click the "Interface Name" column title to sort your entries by interface like above.

Depending on your network only one or two changes should be made. First, you need to remove the 0.0.0.0 entry from your internal network. That entry is a "catch all". We want the catch all on the outside network and not the inside. So remove 0.0.0.0 from your internal adapter and make sure its already there on your external connection.

For most people that should be it! But for me I had to add one entry to my internal network to get it to work. I wanted the whole 192.0.0.0 (that means anything that has a 192 for its first number in it's IP address) to go on my internal network connection. So I added the following:

Adding a route

Adding a route

Thats it! To check that everything is going over the correct interface I added the Network Traffic gadget to my Windows 7 desktop twice (just drag it to the desktop twice from the gadget list). I made my internal connection red and my external connection green.

Network Traffic with two connections

Network Traffic with two connections

Now I can watch as I view a web page which adapter it's going out.

Adobe Acrobat: "The Document could not be printed."

Posted in Blog, Tech on March 31st, 2011 by Matt – 1 Comment

Recently we upgraded our Windows 7 machines to Adobe Acrobat X Standard/Pro. Some of our users were having issues with random PDFs that would not print.

When attempting to print these PDFs users would get a "The Document could not be printed." pop-up followed by "The Document could not be printed."

Interestingly I found that in most cases the issue occurred when the PDF was being viewed embedded in Internet Explorer. In some cases If I saved the offending PDF to desktop and then opened it, it would print without issue.

The solution I've come across was to replace the drivers of our HP 1320 printers from the PCL 6 drivers to the HP universal drivers. For us, that resolved all printing problems.

I've read on the Adobe forums that the issue is related to gibberish hidden characters added when someone adds text to a PDF from something other than an Adobe product. Something like Microsoft Word.

I'd be interested if anyone could come up with a "true" fix, as my solution sounds sort of like a work around.

Fujitsu ScanSnap Error "PDF file creation failed."

Posted in Blog, Tech on March 29th, 2011 by Matt – 2 Comments

We currently have five of these scanners deployed on Windows 7 machines. All installations were experiencing a random error of "PDF file creation failed."

PDF file creation failed.

The error did not not usually occur if only a single document was scanned and saved. However, If two documents are scanned and saved back to back, this error was likely to occur at the start of the second document. Internet searches yielded nothing, but after contacting Fujitsu support, we came to a solution.

The error stems from the fact that ScanSnap Manager defaults to saving scans into the My Pictures folder. At our offices all users have their My Documents folders redirected via Group Policy to a network share. Apparently ScanSnap is sensitive to any delay when it attempts to write the scanned PDF files to disk.

The solution is to change the scan path to something other than a network share.

The steps:

Right click the ScanSnap icon and select the Scan Button Settings... option.

Select Scan Button Settings

Then, if necessary, expand the window to show all the options for each setting. Then go to the Save tab and change the Image Saving folder to something other than a network share.

Change the Image Saving folder location.

That quickly resolved the errors we were receiving.