在局域网中,电子邮件被人们经常使用,但由于局域网自身的系统平台、组网方式、拓扑结构等因素的影响,可导致数据传输故障,使电子邮件及其附件无法正常发送。笔者公司的局域网中就有些工作站使用WinXP系统,但一直不能发邮件,这严重影响了局域网的有效使用,如果不能解决,那么每台装有WinXP系统的机器都只能重装Win98或其他系统,这将造成大量重复工作及资源浪费。经过我们的努力终于找到了解决办法。
下面以WinXP系统为例,说明如何修改注册表使网络畅通,邮件得以正常发送的。我们的局域网接入Internet采用的是连接卫星的下行非对称传输方式。以Winroute为代理软件,局域网中的多台计算机共享DirectPC连接,由于DirectPC期望的数据包与客户端收发的数据包大小不匹配,造成客户端接收数据阻塞及不能发送邮件的问题。为了发邮件,WinXP系统的注册表需要做如下的修改:“HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\{…}\MTU”,Interfaces下的{…}需要用户自己确定哪一个是对应的网卡分支。一般情况下其中包含本机IP地址或网关等内容。WinXP注册表中每个分支内容较多,需仔细辨别,要同服务器的网络设置相对应。找到该分支后新建“DWORD”类型的键“MTU”,取值为十进制数“1466"。修改完成后重启机器即可正常发送邮件,带附件亦无问题。
另外还需注意,主服务器注册表亦应做相应修改。若其它客户机使用Windows其它系统,也应修改其注册表使其邮件能正常发送。具体参考如下:
Win2000
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters\Interfaees\{…}\MTU(DWORD值:1466)WinNT
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\“ejthernet_adapter”\Parameters\Tcpip\MT (DWORD值:1466)Win98/Me
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\OOOx(x可能是0、1、2……)\MaxMTU(字符串值:1462)
以上同样需确定分支后再做修改。经过修改后客户端主机可发送电子邮件及其附件。若服务器的注册表新建MTU值,那么客户端MTU或MaxMTU值不应大于服务器端的取值(若存在)。取值范围可根据实际情况修改,以达到最佳匹配速率。修改成功后再导出注册表做一备份,可备不时之需。