Foxtable(狐表)用户栏目专家坐堂 → 关于服务器双IP问题


  共有2004人关注过本帖树形打印复制链接

主题:关于服务器双IP问题

帅哥哟,离线,有人找我吗?
a5654069
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:112 积分:1213 威望:0 精华:0 注册:2019/3/5 16:43:00
关于服务器双IP问题  发帖心情 Post By:2019/7/23 15:13:00 [只看该作者]

用户已被锁定

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105948 积分:538809 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/23 15:31:00 [只看该作者]

If e.Name = "数据源名称" Then
msgbox(Network.Ping("192.168.1.100",1000)
msgbox(Network.Ping("119.75.217.56",1000)
    If Network.Ping("192.168.1.100",1000) = False  Then '如果第一个IP无法接通
        e.ConnectionString = e.ConnectionString.Replace("192.168.1.100""119.75.217.56"
    End If

End
 If

这个2个地址都能访问吗?

内网用户和服务器是在同一个网段吗,能ping的通服务器内网IP吗

 回到顶部
帅哥哟,离线,有人找我吗?
a5654069
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:112 积分:1213 威望:0 精华:0 注册:2019/3/5 16:43:00
  发帖心情 Post By:2019/7/23 15:45:00 [只看该作者]

用户已被锁定

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105948 积分:538809 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/23 16:14:00 [只看该作者]

这样判断http://www.foxtable.com/webhelp/topics/2709.htm

If TryConnectHost("192.168.1.100") Then
    If 
Network.Ping("192.168.1.100") Then
        
e.ConnectionString = e.ConnectionString.Replace("192.168.1.100""119.75.217.56"
    End If
End If

 回到顶部
帅哥哟,离线,有人找我吗?
a5654069
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:112 积分:1213 威望:0 精华:0 注册:2019/3/5 16:43:00
  发帖心情 Post By:2019/7/23 16:34:00 [只看该作者]

用户已被锁定

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105948 积分:538809 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/23 16:44:00 [只看该作者]

怎么判断的?完整代码贴出来

 回到顶部
帅哥哟,离线,有人找我吗?
hahaman
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:7 积分:148 威望:0 精华:0 注册:2014/8/14 23:51:00
  发帖心情 Post By:2019/7/23 16:45:00 [只看该作者]

给你一个另外的解决方法。在很多场景下都可以使用。通过域名链接,外网解析到:114.114.114.114,内网路由器强制解析到192.168.1.111(类似本地host)。我感觉还挺方便的。

 回到顶部
帅哥哟,离线,有人找我吗?
a5654069
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:112 积分:1213 威望:0 精华:0 注册:2019/3/5 16:43:00
  发帖心情 Post By:2019/7/23 17:00:00 [只看该作者]

用户已被锁定

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105948 积分:538809 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/23 17:40:00 [只看该作者]

If e.Name = "ProductionBOM" Then
    If TryConnectHost("192.168.1.3") = false orelse Network.Ping("192.168.1.3") = false  Then
            e.ConnectionString = e.ConnectionString.Replace("192.168.1.3", "192.168.99.99")
    End If
End If

 回到顶部
帅哥哟,离线,有人找我吗?
shenyl0211
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:977 积分:6835 威望:0 精华:0 注册:2012/4/2 21:49:00
  发帖心情 Post By:2019/7/23 21:17:00 [只看该作者]

千万不要用Replace。关于这个问题,帮助文档很不贴实际。
IP就两个:内网和外网。
外网容易变化。一是因为网络运营商变IP,二是因为单位换网络运营商而变IP,三是因为设备调试的问题而临时变IP,四是因为变更服务器而变IP。
内网的变化也有可能。一是因为异地的子分公司有服务器,且内网IP地址一样,故必须修改一个IP;二是因为变更服务器而变IP。
以上变更IP的情况我都遇到过了。
由此可知,为了不因此而专门升级管理系统,就必须通过IP地址.txt文件进行管理,该文件的内容就是两个IP,用符号(,;|)分隔。用户修改IP地址.txt文件是很方便的。
实际编程的时候,需要先Ping内网IPa(IP地址.txt文件的第一个IP),因为Ping内网IPa是很快的,而且,内网用户也较多,特别是领导较多。Ping通了,IP就用IPa,否则就Ping外网IPb(IP地址.txt文件的第二个IP),Ping通了,IP就用IPb,Ping不同就是网络有问题。
另外,实际工作中,不仅有数据源的连接问题,还有FTP的设置问题,所以,需要用IPa和IPb变量。

 回到顶部