ArcGIS License Manager端口设置知多少(二)

上一篇文章中介绍了如何设置ArcGIS License Manager的端口以及如何设置防火墙,这篇文章就看下其背后的原理。

三、ArcGIS许可服务器与ArcGIS客户端间的通信原理:

我们知道lmgrd.exe是用于管理ArcGIS许可的,该后台进程的端口默认是27000,那么我们从27000端口开始顺藤摸瓜,一步一步寻找答案。

在没有修改service.txt的情况下,在许可服务器所在机器上以管理员身份运行cmd,然后输入netstat –abn|findstr27000”查找, 发现27000与49722的端口建立了通信,注意127.0.0.1是本机地址,也就是机器内部通讯用的。
在这里插入图片描述
接下来查找49722端口对应什么进程,打开任务管理器发现49722是ARCGIS.exe程序,也就是说Imgrd.exe与ARCGIS.exe产生了通信,同时ARCGIS.exe还有一个端口是49718,该端口与远程机器192.168.100.81进行了通信。
在这里插入图片描述
然后打开ArcMap客户端所在机器的任务管理器界面,发现ArcMap.exe与远程的49718端口进行了通信,也就是上一步的ARCGIS.exe。
在这里插入图片描述:192.168.100.86是ArcGIS License Manager所在机器的IP,192.168.100.81是ArcMap所在机器的IP。

看到这里相信大家就会明白,在没有修改service.txt文件的情况下,Imgrd.exe的27000端口会先和本机的ARCGIS.exe进行通信,然后客户端ArcMap.exe再和该ARCGIS.exe的端口进行通信,建立连接,所以这个ARCGIS.exe端口也就是上图中的49718才是最终ArcGIS客户端与ArcGIS服务器端进行通信的端口,也就是需要将该端口开放给服务器端的防火墙,而27000则是本机进行通讯用的。

但由于这个端口号不固定且端口号又比较大,所以我们需要设置一个小的并且固定的端口号,以便用户将这个固定端口开放给防火墙,设置方法就可以参考上篇文章

那么我们看下修改service.txt文件后会有什么变化:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
通过上图发现,这时ARCGIS.exe就固定在1234端口了,所以原则上只需要在服务器的防火墙中只开放该端口即可,这时在客户端直接使用1234@IP就可以成功连接。

后来我测试客户端直接输入服务器IP看是否可以连接,发现不行。这是为什么呢?因为客户端如果不用port@IP这种写法,那么就无法知道ArcMap.exe要与端口为1234的ARCGIS.exe进行连接,也就是说ArcMap无法找到1234端口的ARCGIS.exe,建立不了通信,所以连接不上。这就是为什么上篇文章要强调必须要用port@IP才能连接的原因。

细心的你也许会发现,我们之前说27000端口是内部通讯用的,那么我们为什么还要开放27000端口呢?答案就是27000端口可以帮助我们找到1234端口,如下图,如果防火墙中同时开放了1234和27000端口,那么客户端的ArcGIS Administrator里设置1234@IP或者27000@IP都可以直接找到端口为1234的ARCGIS.exe:
在这里插入图片描述
但如果直接输入IP,那么ArcMap.exe会从27001端口开始一直找到27009,都没有连接成功才会找到1234端口,这也是为什么上篇文章中会说如果只设置IP的话,开启ArcMap的过程会比设置port@IP会稍慢一点点的原因。
在这里插入图片描述
文章就写到这里,如有哪里写的不对的地方,欢迎大家留言。

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值