折腾了一晚上Windows网络却未果
搞了一晚上Windows网络,还是没有搞明白,也许我不能用“通过怪异的配置总能实现”这种典型的Linux用户思想来审视Windows,我真的错了,毫无成就感,以下是我的难题,在Linux上总能解决而在WIndows很难解决的难题:
1.网卡桥接
在Linux下,配置网卡桥接实在太简单了,但是几乎什么事情都得你自己来做,桥接后网卡的IP地址依然存在,如果你不手工清除的话,搞不好就会路由冲突。而在Windows下,一旦网卡桥接了,那么被桥接的网卡基本就只能用来“插拔网线”了,IP地址被清除,并且很多属性参数也没办法配置,有时候正是需要它们的时候,却不能用了。
2.单臂NAT路由器
WIndows没法实现单臂NAT,不管怎么说也得需要两块网卡,哪怕其中一块是虚拟网卡,比如Tap-win32之类的,没有Linux那种令人疯狂的Netfilter点。
3.NAT配置
使用Windows配置实在太麻烦了,使用网卡共享这种方式有时满足不了你的需求,此时就要用netsh了,以下是配置简单NAT的命令
netsh routing ip nat>add interface "本地连接" full
netsh routing ip nat>add interface "VMware Network Adapter VMnet1" private
C:\Documents and Settings\Administrator>net start remoteaccess
也许你会说,这有什么麻烦的,这话未免说的有点太形而上了吧,因为天知道你在执行上述命令的时候会遇到什么鬼问题,每一个问题你解决起来都要花很久,最终的结果也许还是“不可解决”的...
4.ARP问题
找了好久,实验了好久,也没有找到什么方法能让Windows的一块网卡回应针对另一块网卡的arp请求,类似Linux的arp_ignore那样的。有时候,正是这种小配置却能做成很大的事...
5.注册表实在太乱了
使用Linux时,你会很自然的想起sysctl,如果实在想不出到底设置哪个参数了,就用sysctl -a|grep搜索一下,一般从名字就能看出其含义,Linux的网卡使用ethX这种短且清晰的名字标示,而在Windows,我们知道与sysctl对应的是注册表,然而其键名称却大量使用了GUID这类不可读的字符,GUID是个好东西,但是为何不将其作为一个短而易读的名称的一个属性存在呢?Windows真是把所有人都当成傻瓜用户了,然而确实有一些高级用户需要关怀,这些冗长的名字让很多高手望而却步。
人们往往最恐惧的就是未知的事物,神说:远离Windows。于是我离开了...