问题
部署到阿里云ecs的调度任务,防火墙安全组开放了内网的权限,不想使用公网调用;但是部署后发现,调度管理器执行任务是调用的是公网ip;
发现原因
调度执行器,如果没有设置相关ip和端口号,则框架会使用工具获取ip和使用随机未使用端口号,如下代码:
// fill ip port
port = port>0?port: NetUtil.findAvailablePort(9999);
ip = (ip!=null&&ip.trim().length()>0)?ip: IpUtil.getIp();
IpUtil.getIp()方法获取到的是ecs的公网ip;
解决
(1)开通阿里云获取网络地址的服务,获取内网地址; (2)ecs的启动jar执行文件中,指定所在机器内网ip;
本文由 GY 创作,采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
最后编辑时间为:
2022/03/17 11:18