一切福田,不離方寸,從心而覓,感無不通。

业务实例如何指定IP(外网IP)注入Nacos

需求描述

使用 Spring Cloud Alibaba 搭建
微服务
,业务实例默认使用内网 IP 注册到 Nacos 服务端,这样在跨
局域网
时会无法请求成功。那如何解决呢?

答:指定
外网
IP 注册到 Nacos 上。

下述方法来自网络,版权归原著作人,本人只是搬运工+实践者!

方案一:指定IP注册

在 Nacos 客户端指定IP,启动成功后即可以在 Nacos 服务端上看到对应的IP。

bootstrap.yml 配置文件中写入:

 

或指定网卡注册:

 

也可以使用spring cloud 的 InetUtils工具,配置项为,具体说明可以自行检索

方案二: 动态注册IP-配置文件形式

 

PS:本人使用该方法虽然能注册成功,但是请求是失败的,报错:Illegal character in authority at index 7,本来以为是得到的公网IP前后有空格之类的,用了trim方法依然还是报错,有待继续研究。

方案三: 动态IP注册-监听器形式

  1. 新建监听器类

2、启动入口处注入该监听类

PS:使用此方法完美解决,可以愉快的跨服务器请求了!

特别强调

  1. 跨服务器组装业务一定要使用公网IP,千万不要用内网IP!!!
  2. 注意防火墙、安全组的限制!!!

参考文章:[Nacos] 业务实例如何指定IP注入Nacos_nacos指定ip-CSDN博客

 

from:https://blog.csdn.net/yyongsheng/article/details/134137316