无法识别的网络和防火墙问题
如果Windows 7无法透过某个网络连接上互联网,那么就会被识别为"无法识别的网络",Window 7会识别不了网络,导致网络被放在"公用"这个网络位置当中,而默认情况下,Win 7的防火墙会针对"公用"网络位置采用严格的防火墙策略,因此无法使用文件共享之类。然后可鄙的是,Win 7还不允许手动更改在"无法识别的网络"这个集合当中的连接的网络位置,例如你无法修改这种连接为"家庭网络"或者"工作网络"!
一个典型的例子是VMWare的Host Only网卡就会有这个问题:
VMWare安装后,会有两个虚拟网卡:VMware Network Adapter VMnet1和VMware Network Adapter VMnet8,如果某个虚拟机你添加了一块Host Only的虚拟网卡,然后你启动后,就会发现,在Win 7中,VMware Network Adapter VMnet?这块网卡会被识别为"无法识别的网络",导致你无法从虚拟机里面透过文件共享来访问Win 7物理主机的共享,因为防火墙挡住了。
当然我们可以通过修改防火墙的策略,来放开在VMware Network Adapter VMnet?网卡对应网段的入站连接,允许文件共享,但是这个太麻烦了。一般人也搞不定。
如果我们要避免类似情况,可以修改注册表,在注册报表中,定位 到:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}
在这个目录下,有0000到00nn个子目录,我们可以依次找一下,每选中这个某个00nn的目录的时候,看一下右边DriverDesc对应的数据,如果和对应网卡的名字相同,那么就要修改这个目录下的数据了,以VMWare为例,假设找到的是0019目录下,对应的DriverDesc是VMware Virtual Ethernet Adapter for VMnet1,那么就在右边的空白处,右击,新建DWORD,名字输入*NdisDeviceType,注意有个星号在前面,不可少,然后把他的值改为1即可。
改完后,到【控制面板\网络和 Internet\网络连接】中,把对应网卡禁用,然后再启用一下就好了。
上面的方式缺点是:在网络连接当中,会看不到这个网卡对应的网络连接了!
最希望的还是Win 7让用户自己可以设定无法识别的网络其位置即可。用户应该有最终的裁量权。
参考URL:
http://msdn.microsoft.com/en-us/library/ff557037(vs.85).aspx