自从单位配备笔记本后,就一直琢磨着怎样在家实现两台电脑同时上网。据他们说,我们这边儿的网通做了限制了,使用路由或者交换机均不能实现一IP点儿多台机器同时上网,后来想来想去,又想到了双网卡的这种方法,据说这个是没有任何限制的,既然如此,就将台式机作为主机,安装双网卡,来实现双机同时上网吧。当然,缺点也有,那就是必须两台机器都开着的时候才能实现同步上网,不过我要得似乎就是这种效果,不然我也不会进行共享上网的设定的,无所谓了。
开始进行:
系统背景:双机均为WINXP SP2版本。
第一、主机安装双网卡。
第二、假设我们连接adsl设备的网卡为网卡A的话,我们将余下的用来连接笔记本(或其他的电脑)的那个网卡称为网卡B。而通过网卡A建立的连接我们称为“我的连接1”,通过网卡B建立的连接,我们称为“我的连接2”。
第三、用双绞线连接网卡B和笔记本上的网卡。注意此处的网线做法与我们平常使用的连接交换机的那种网线是不相同的,必须要专门的来做进行双机互联的网线,这个可以请专业的人士(比如单位的网管)帮忙制作完成。
第四、设置主机:右键单击网上邻居---属性,在宽带区右键单击那个宽带连接---属性,选择最后一个选项卡“高级”,选中图中的2个选项。
第一个是设置该网络链接共享给其他网络的,这里我们选中(本地连接2,也就是网卡B建立的连接)Local Area Connection2,把网络共享给网卡B,这样笔记本电脑即可以通过网卡B来上网了。
第二个可选可不选,作用是如果内网有电脑要上网,他会自动拨号。
这里还有一个Windows自带的防火墙,如果共享有问题,可以手工设置防火墙或者干脆关闭。不过,主机必要的安全措施还是要的,建议使用一套网络防火墙+企业级杀毒软件。
第五、手工设置一下我的连接2,右键单击我的连接2---属性。将IP地址设为“192.168.0.1”,子网掩码设为“255.255.255.0”。
第六、设置笔记本电脑或者其他客户端电脑。
把网卡B和笔记本的网卡连接(或者与交换机或者HUB的UPLINK相连)。笔记本电脑或者其他客户端电脑IP如果无法自动获取,就手工指定。右键单击我的连接---属性
IP地址:192.168.0.2-255,
掩码:255.255.255.0,
网关:192.168.0.1,只要IP地址位数不一样就行。
一切设定完毕后,还要手工设置ISP提供的DNS地址。方法:开始-运行-cmd- ipconfig/all 可以查询到DNS地址。 (如下图,DNS Servers ...右边显示的就是ISP提供的DNS服务器)
至此,全部设置完成,正常而言,两台电脑应该已经能实现共享上网了。
补充资料:
1.我的网络接入是LAN,而不是PPPOE拨号
解决:方法类似,第一步设置共享是在本地连接中指定共享。(总的思路是这样:外网-网卡A-网卡A共享给网卡B-网卡B是网关-网内客户端通过网卡B上网)
2.网线制作不当导致网络连接失败或者丢包。
解决:请参考 《丢包不一定是网卡的问题-网线你做对了吗》 一文(转自isso论坛)。双机互连2台电脑间需要用13,26对调的交叉线。
3.主机上网正常,但是客户端打开网页速度很慢,有些网页能打开有些不能,能打开首页但是不能打开里面的链接。
解决:排除网线制作问题。在客户端电脑上,开始-运行-cmd,在命令提示窗口中:
c:\ping 192.168.0.1 -f -l 1500 如果返回来的信息是
Packet needs to be fragmented but DF set.
Packet needs to be fragmented but DF set.
Packet needs to be fragmented but DF set.
Packet needs to be fragmented but DF set.
就说明该大小的(1500字节)数据包超过了ISP的MaxMTU,产生了数据冲突碎片,那么我们就降低Ping命令中的数据包大小,比如1470,一直到返回信息是 :
Reply from 192.168.0.1: bytes=32 time=20ms TTL=244
Reply from 192.168.0.1: bytes=32 time=10ms TTL=244
Reply from 192.168.0.1: bytes=32 time=11ms TTL=244
Reply from 192.168.0.1: bytes=32 time=10ms TTL=244
那么这个数据包大小的值就是ISP的PPPoE协议的MaxMTU值。
找到这个数值以后,我们需要逐个修改各个客户端的注册表TCP/IP参数。
对于客户端是Windows 95/98/ME 操作系统,我们需要找到该项目: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet \Services\Class\NetTrans\000x\MaxMTU (STRING Value)
此处的000x所指的是客户端电脑连接Winroute服务器的那块局域网网卡,首先增加MaxMTU键,类型为字串,然后设定值为ISP的PPPoE的MaxMTU值。
客户端是Windows 2000/xp 操作系统,修改注册表项目HKEY_LOCAL_MACHINE\SYSTEM\CurrentControl Set\Services\Tcpip\Parameters\Interfaces\"网卡"\MTU (DWORD Value)
"网卡"指客户端电脑连接Winroute服务器的那块局域网网卡。增加MTU键值,类型为二进制字串,值为ISP的PPPoE协议的MaxMTU值。