您的位置:程序门 -> delphi -> 网络通信/分布式开发



在线等待(200分)- 关于corba客户端、服务器分发问题。


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


在线等待(200分)- 关于corba客户端、服务器分发问题。
发表于:2008-01-13 11:26:16 楼主
客户机分布在
192.168.0.10   -   192.168.0.60
ip地址区间内。

服务端程序放在192.168.0.70机器上,
正常情况下
客户机上的client.exe   ,是可以正常
连接70机器上的server.exe   上。

但是,这个server.exe   是提供一些独立
功能调用的,这个功能调用依赖于70机器
上的另一个网卡的vpn连接。现在vpn不拨
的话,那么正常,只要拨了vpn,client.exe
就连不上server.exe了。


请问大家是否遇到过,如何处理的。
发表于:2008-01-13 16:26:161楼 得分:0
首先你得确认在你拨了vpn后还可以ping   通   192.168.0.70
如果不能。那你查一下。你设置了什么东西。
发表于:2008-01-15 14:47:322楼 得分:0
拨vpn之后不能访问内部网的话,有可能是由于网络上传输的最大数据包(mtu)大小问题引起的。
大部分网络设备的mtu都是1500。如果本机的mtu比网关的mtu大,大的数据包就会被拆开来传送,这样会产生很多数据包碎片,增加丢包率,降低网络速度。把本机的mtu设成比网关的mtu小或相同,就可以减少丢包。   3、如何检测网关的mtu?   在本机打开dos窗口,执行:   ping   -f   -l   1472   192.168.0.1   其中192.168.0.1是网关ip地址,1472是数据包的长度。请注意,上面的参数是“-l”(小写的l),而不是“-1”。   如果能ping通,表示数据包不需要拆包,可以通过网关发送出去。   如果出现:   packet   needs   to   be   fragmented   but   df   set.   表示数据包需要拆开来发送。此时,减少数据包长度,再执行上面的ping命令。从1400到1472之间多试几次,就能找到合适的数据包长度了。把数据包长度加上数据包头28字节,就得到mtu的值。   如果检测到网关的mtu值是1500,不需要修改。   如果网关有防火墙ping不通,可以试试直接把mtu设为1400。   4、如何修改本机的mtu?   修改方法如下:   (1)、运行regedit   (2)、浏览到:   hkey_local_machine\system\currentcontrolset\services\tcpip\parameters\interfaces   (3)、interfaces下有多个子项,每个子项对应一个网卡。请按如下方法选择网卡:   (a)确定本机用来连接internet的网卡或拨号连接的ip,如192.168.0.19;   (b)用鼠标点击interfaces上的子项,查看键值列表中的ipaddress项;   (c)如果ipaddress的键值与(a)中的ip相同,即192.168.0.19,则该子项就是要找的网卡。   (4)、进入该子项,在右边的窗口里按鼠标右键,选择“新建”-> “双字节值”,输入名称“mtu”,按回车。再用鼠标双击“mtu”,弹出修改窗口:   如图3:   填入mtu的值。填写前请先把基数设为十进制。   设置好后,需要重启机器才能生效。
发表于:2008-01-15 20:56:123楼 得分:0
mark!


快速检索

最新资讯
热门点击