Monday, December 28, 2009

Windows 7 and Vista Network Problems

Windows 7, Windows 8 and Vista laptops may have problems with "Unidentified Networks" and broken network connections. This article discusses the solution, mainly by disabling IPV6.  This works on all Windows 8, 7 and Vista computers and is likely due to a conflict with older routers.  This article also describes a fix for the Teredo Tunneling Pseudo Interface and the Microsoft ISATAP Adapter.

"The network crashed"
"Laptops crash the network"
"The laptop kicks off the other users"
"My new Windows 7 (Windows 8) computer crashes the wireless network"

This article permanently fixes the problem.

Symptoms:
  • Windows 8 / 7 / Vista report an "Unidentified Network" error.
  • Task-tray icon shows "Access: Local" only; no Internet
  • Network Discovery and File Sharing may mysteriously turn off.
     
  • You may loose both your intranet and Internet network connections.
  • Other wired desktop computers in the same network may temporarily loose their network connections.
  • The entire home network may "crash" when a laptop connects to the Wireless.

  • The laptop has an Intel 3945ABG Wireless Network adapter or related cousins; or a Atheros AR5007 Wifi Adapter (Readers suggest other network cards are also a problem -- indicating this is really a problem with the Router). 
  • Likely, this is an older wireless router.
In Vista and Windows 7, the Network control panel will look similar to this; Windows 8 will show "Not Connected" and will imply no network connections are available:





Interesting Update: 2012.05:
This is an issue with older Linksys routers, such as the WRT110.

Today, I retired that router and replaced it with a keyliner reviewed: Linksys EA2700.  The new router behaves properly when PCs have a mixture of IPV4 and IPV6.  These steps listed here allow you to keep using an older router with newer operating systems. 


The following steps can be applied in any order.  
I recommend applying these changes to all wired and wireless Windows 8, Windows 7 and Vista computers on the local network.

Do not use these steps for Windows XP machines, which may also reside on the same network.


1. Disable the DHCP Broadcast Flag

Note: The first two steps above could be considered somewhat optional.
Steps 3 through 8 actually "fix" this problem.

Edit the Registry and modify a DHCP Broadcast flag setting.

This does not disable the feature but it does change the order DHCP addresses are discovered. As dangerous as this sounds, it is benign, only changing how DHCP is searched. These instructions assume you know how to edit the registry; if not, please talk with a knowledgeable friend.

a. Start, Run "Regedit" and tunnel to this HKLM key
See this article for instructions on exposing the RUN command or type WindowsKey-R.


HKey_Local_Machine\System\CurrentControlSet\ Services\TCPIP\Parameters\Interfaces

b. In the key you may find multiple {GUID}'s -- especially if you are working on a laptop.

Within each populated {GUID} key:

- select Edit, New,
- Click DWORD-32 Value
- Create/name "DhcpConnEnableBcastFlagToggle"
- Press Enter

c. Double-click the newly-added value, Set value to (Hex) 1 (one).



d. Make similar changes to the other GUID's.

Leave Regedit open for the next step.

For reference: See Microsoft article: http://support.microsoft.com/kb/928233/en-us for details. Note they are vague by saying "click the GUID that corresponds with your network adapter." They do not explain how to tell which GUID belongs to your wireless. It is safe to make this modification for all network adapters.


2. Disable TCPIP6

Windows 8/7/Vista supports the new IPV6 IP Addressing scheme, which is great, except the entire world still uses the older IPV4 standard. There appears to be conflicts between this new protocol and most home routers. Here is how you can safely disable it. Note: In order to properly disable the protocol, you need to make changes in the Control Panel *and* in the registry.

Still in Regedit, continue with these steps:

a. Tunnel to

HKLM\System\CurrentControlSet\
Services\TCPIP6\Parameters


* Note: this is not the previously-edited TCPIP key -- this is one folder down *


b. Create a new DWORD-32 value:

Name: "DisabledComponents"

Set the value equal to (hex) "ffffffff"
(8-f's in a row. Decimal 4294967295)

This change is only required one time in the registry, regardless of the number of network adapters. Detailed reference on IPv6, see this Microsoft article: http://www.microsoft.com/technet/network/ipv6/ipv6faq.mspx.

Microsoft has a warning when disabling this protocol: If you disable IPv6, you will not be able to use Windows Meeting Space or Windows Home Gruoups. However, regular peer-to-peer networking works. My opinion: if you don't use Home Groups, this is still a good fix to apply (2010.01.29 - trw)


3. Cleanup old Network Connections:

There are two keys to look for:

a. While still in Regedit, tunnel to:

HKLM\Software\Microsoft\Windows NT\Current Version
\NetworkList\Profiles


b. Click on each numeric {GUID} key and note the internal names (e.g. HomeNetwork, My School, etc.).

c. When you find the network that is failing (at your house), press Delete and delete the entire numeric {guid} key. If in doubt about which entries to delete, delete all of the GUID's -- this is what I do.

d. Tunnel to this next key (directly below):

HKLM\Software\Microsoft\Windows NT\Current Version
\NetworkList\Signatures\Unmanaged


e. In the Unmanaged key, find two similarly-named network {GUID}'s.   Delete (both) key-folders.

For example, my computer has two unmanaged folders:
01013000f000f008....D6D7
01013000f000f008....C7F6

The deleted folders (GUID keys) rebuild in a moment.

f. Close Regedit






4. Disable IPV6 on the Cards

a. in Control Panel, "Network and Sharing Center,"
(or See this article for instructions on exposing the Network Desktop icon and choose Network Neighborhood, "properties).

 

b. On the Control Panel's left-menu



Windows 7 users: Click on left, "Change adapter settings" (or type: Start Run, "ncpa.cpl")
Vista users: Click on left, "Manage Network Connections"



c. From the displayed adapter list, other-mouse-click your (wireless and or wired) Network Adapter, select "Properties".

d. Uncheck [ ] "Internet Protocol Version 6 (TCP/IPv6)"
(leave [x] IPV4 checked.)



When you uncheck the current, active IPV6, and click OK, Windows 7 and Vista will prompt to re-select "home/work/public". Choose the appropriate type of network connection; for most, select "Home."

Windows 7 and Vista will next prompt "Share with other home computers running Windows 7".
Click Cancel.

e. Do the same for *all* other Network adapters, unchecking [ ] IPV6 -- even if they are not connected or you are not using them.  Uncheck for Bluetooth and other copies of the existing wireless that might exist. Also uncheck IPV6 on the Wired connection.



5. Reboot for these changes to take effect.

You must reboot before proceeding to the next step. Upon reboot, the PC may prompt to re-establish the wireless internet connection. Choose "Home Network" or "Work Network", as appropriate.


6.
Teredo Tunneling or ISATAP

Once rebooted, continue with this step.

If you are using an Intel Wireless driver or an Atheros adapter (possibly other brands), open the Control Panel, "Device Manager," and scroll to the Network Adapter section.

You will likely see a failed "Teredo Tunneling" yellow-bang icon.
  • "Teredo Tunneling Pseudo-Interface
    (yellow-bang and 'This device cannot start. (Code 10)').
or
  • Microsoft ISATAP Adapter (yellow-bang on multiple items 'This device cannot start (Code 10)'
These are protocols allowing IPV6 traffic to tunnel over IPV4 routers. Because IPV6 has been disabled, these protocols should also be turned off:

a. In Control Panel, Device Manager, "Network Adapters",

other-mouse-click "Teredo Tunnelling Pseudo Interface" or the failed ISATAP adapters
Choose "Disable" (or optionally press the keyboard's Delete key)

This assumes you have disabled IPV6 in the steps above.


7.  Repeat these steps on all Windows 7, 8 and Vista machines in the network.


8. Set Power Settings keeping the network adapter at full power

Optional:  If you are working on a laptop computer, consider these steps because some laptops do not recover from power-save mode on their wireless adapters. If you have reasonably modern equipment, skip this step:

a. Click the System Tray Battery Icon (or Control Panel, "Power")
Choose "More Power Options"

b. Under "Balanced",
Click "Change Plan Settings"
Click "Change Advanced Power Settings"

d. Tunnel to "Wireless Adapter Settings, Power Saving Mode"

e. Change "On Battery" to "Maximum Performance"
Click OK to save

f. Repeat these steps for the "Power Saver" profile.



See Microsoft Article http://support.microsoft.com/kb/928152 for details on this issue. Obviously, this affects battery life.


Other things that can cause network failures:
These steps are optional or may not apply to your computer.

9. McAfee Security Suite.

Check to see if you have an expired McAfee Security suite. If so, un-install all McAfee products. When it expires, it reportedly disables the firewall and this can also appear as a failed network connection. My opinion: Uninstall it even if it is not expired and install Microsoft's Virus scanner. See this keyliner article: MSE.


10. Installed iTunes, Safari, Adobe CS3, or GizmoPhone

Look in Control Panel, Administrative Tools, "Services" and look for a
Bonjour DNS Responder Service
##Id_String2.6844F930_1628_4223_B5CC_5BB94B87 9762 ##

If found, mark the service as "Disabled" and reboot. (This is from a Windows7Forums.com thread). I have admittedly not seen this myself and would appreciate more precise steps.

11. Update your wireless drivers to the latest version

Optional:  There are known bugs with IPV6 processing on Intel network adapters and it is always a good idea to upgrade to the latest versions. Unfortunately, those of us who upgraded to Windows 8/7, may not find appropriate x64 drivers. Resolving this will take research and the details are not discussed here.

If the control panel shows a default Microsoft Network drivers; these should be upgraded to the vendor's real drivers.
Contact your OEM vendor or check your shipping manifest for the correct network card. For laptops, the Wired and Wireless will use different drivers; usually an Intel driver. See this Intel link for an index of all versions: Link


Note: Microsoft Update periodically updates drivers, but I still recommend using the vendor's (usually Intel) latest versions.

12. Upgrade your Router's Firmware

Optional:  I recommend upgrading your home router's BIOS / Firmware to the latest version - admittedly this is a technical step. If you are comfortable with this type of work, see this Keyliner article: Upgrade Linksys WRT110 Firmware or check the Vendor's site for details. Skip this step if you are not technically inclined.

If you decide to upgrade the firmware, you can do this after all the other steps in this article. Linksys routers have had some bug fixes in this area and I've moved this higher in the list. If the local network continues to crash after performing the remainder of these steps, update the router's firmware.

Unconfirmed: Newer routers may not exhibit these network problems.



Last-Ditch Efforts if all else fails

The steps above solved the Windows 7 / Vista "Unidentified Network" problem for dozens of  computers that I have worked on -- but I did find one laptop where these steps failed. Here are additional things you might consider. These last-ditch steps are roughly described and are meant for technical users.

Last Ditch - 1. Confirm the NIC's MAC address:

* From a DOS prompt, run this command:

ipconfig /all

* In the displayed list, locate your adapter (laptops will show two adapters; look for the Wired or Wireless one you are using). Confirm the Ethernet's "Physical Address" (the MAC address) has a legitimate value.

Address look similar to this: 84-2C-2A-A1-22-8F (varies - anything but zeroes)


* If you have all zeroes 00-00-00-00-00-00 (00:00:00:00:00), then something is amiss.

Consider doing one, but not both of the following. If you have a legitimate MAC address, skip to "Last-Ditch 2":

Contact your OEM and download the latest Windows 7 (or at least Vista) driver and have it stored locally. Then, in Control Panel, Device Manager, "Network Adapaters", delete the offending network card. Reboot and re-install the driver - saying "Have disk." Confirm this fixes the problem and confirm the card was assigned a valid MAC address.

Or do this option: In Control Panel, Device Manager, Network card: Other-mouse-click the offending adapter, "Properties", "Advanced." In the Network Address property, type/invent a new MAC address (00-00-00-00-00-00 (6 pairs of numbers, no dashes or colons)) - using random numbers and letters A-F. (Note: when editing this property, it is normal for this field to report "not present" - which means it would prefer to automatically get a MAC address). Reboot to test.

On this particular laptop, I noted it connects to other WPA-Personal networks without a problem. One suggestion, which I did not try, was to change its MAC address to another random address -- even though this machine's original address was valid.


Last-Ditch 2: Change your encryption

If the IPCONFIG /ALL command shows a valid MAC address, consider this poor solution, which was recommended by Linksys support. On one particular laptop, this poor-excuse-for-a-real-technical-solution worked. While this "solved" the problem, it introduced others:

I'd bet you are using the recommended "WPA-Personal" TKIP encryption on the Router and the router is possibly so old that it does not properly support WPA-Personal TKIP encryption.

Linksys recommended re-configuring the router to use the older WEP (40-byte encryption standard). In this particular case, it solved the network disconnect problem -- but WEP is an older, slower, and hackable encryption that is no longer recommended. Plus, this forces you to re-configure all other computers, Nooks, Kindles, iphones, and other devices in the network to match this connection.

Before I did this solution, I'd try changing the MAC address. If you reach this state in your problem, write with your experiences.

Conclusions

Admittedly, disabling power save features and other registry changes are not elegant solutions, but these changes solved my networking problems on a half-dozen computers. The real solution is to have all the computers on the network with full support for IPV6 and most of us will have to buy newer routers that properly support IPV6. Additionally, the ISP's need to support IPV6 - and my understanding is most do not.

Finally, tunneling through the Toredo interface seems like a poor solution and it probably entails its own set of bugs. Deleting IPV6 and Toredo seems to be the most stable solution, for now.

Your comments and experiences on this are welcome. Please leave unregistered, anonymous comments below.

These steps will not solve the problem where a laptop is on one wireless network, goes to sleep and wakes on another (I am still looking for a solution to this) - to date, the best solution is to reboot the computer.

Related Links:
This is an interesting article on why Windows 7 should enable IPV6: Why IPV6 is worth the Bother. However, even with this article, I did not bother. The author points out that Windows 7 incorrectly implemented IPV6 and this command will help resolve the problem: netsh interface ipv6 set global randomizeidentifiers=disabled -- but even with this, most of us still have other hardware issues to contend with -- we need newer routers.

 

Related articles:
Review: Linksys EA2700 
Vista Spiffs
Optimizing the Swap File
Vista UAC Nags
Upgrade Linksys Firmware

Linksys EA2700 Smart Wi-Fi Router App enabled N600 with Gigabit

7 comments:

  1. Excellent. Thank you very much!
    I just bought a new notebook, windows vista sp1 and no wireless connection.
    But google and your blog, that was all I needed.
    You saved my day!

    ReplyDelete
  2. Just wanted to note that this isn't confined to the Intel adapter, but my problems were with a WRT110 and Vista. Two different laptops (HP Pavilion dv7 and Toshiba Satellite L355). HP has an Atheros AR5009 and the Toshiba has Realtek RTL8187B. Steps noted in your post have allowed both machines to connect simultaneously. They were previouslyl kicking each other off the wireless.

    ReplyDelete
  3. After over a year wrestling with my Dell M1530 w/Intel 4965AGN adapter having spotty connectiviy, it now works flawlessly. Thanks so much for documenting the steps. You're truly a lifesaver.

    Best regards.

    ReplyDelete
  4. After upgrading to Windows 7, my daughter's CPQ50 laptop was crashing the local network periodically during the day - taking out both desktops and laptops. These steps resolved the problem.

    This article was re-written to accommodate Windows 7 and the steps were streamlined.

    ReplyDelete
  5. The author further comments: I just installed a VM on my computer, and slipped-in a copy of Windows 7. Immediately, the entire home network crashed. On the VM machine, I ran through these steps and solved the problem.

    ReplyDelete
  6. Hello Everyone,



    I had the same problem and searched for 2 days for an answer.



    I am running Intel Centrino Wireless n 1030 in Windows 7.



    I finally came across an updated driver for the Centrino Wireless n 1030. It was updated 5/2011 which was more current than the 12/2010 version I had on my computer.

    http://www.driveridentifier.com/scan/download.php?item_id=51625129&scanid=6BEF4EB662F14B20B13ACCD8D322B6A9&hardware_id=PCI%5CVEN_8086%26DEV_008A%26SUBSYS_53258086



    When you log onto the site it says that !This driver is not designed for you computer!, but I downloaded and installed it anyways.



    IT FIXED EVERYTHING!!!!!!



    I hope this helps...



    Lindsay

    ReplyDelete
  7. The Author writes: In case you didn't see the update in the article, I recently upgraded to a new router and that fixed this problem without having to resort to the registry hacks.

    See article: http://keyliner.blogspot.com/2012/06/linksys-ea2700-wireless-router-review.html

    But this article is still useful if you are keeping your old router in service and these steps have worked every time.

    ReplyDelete

Comments are welcome and are moderated and published upon review.