1. 程式人生 > >SpringCloud服務IP使用V.P.N地址解決方案

SpringCloud服務IP使用V.P.N地址解決方案

分析 -s 有時 oot 情況下 後端 util 加載 使用

場景描述

服務器在外網,而且需要通過V.P.N賬戶才能訪問連接,所以這個時候我們會有兩個地址:
1.本地局域網ip:比如192.168.1.99
2.V.P.N網絡IP地址:比如172.17.1.*等

那麽如果我們在這種情況需要在研發環境中進行前後端接口對接,就會有一個問題:每次部署服務到服務器上很慢,因為服務器在北京,而我在深圳,通過V.P.N後上傳好慢。那麽我們是否可以直接使用本地啟動服務註冊V.P.N地址到註冊中心?這樣註冊中心就可以找到V.P.N地址,答案是肯定的,下面是我解決這一問題的過程記錄。

未解決問題

我的電腦在不配置bootstrap.yml的情況下,無法實現使用×××地址上報到註冊中心,實際使用時本地局域網地址。

但是我的同事卻可以,他也沒有做配置,這個問題我至今沒有搞明白為啥,所以有懂這個問題的大神可以給我留言,把你的分析分享給我嗎,感謝。

配置解決方案

配置對應服務的bootstrap.yml,對應用地址進行配置,加如下配置:

spring:
  cloud:
    inetutils:
      preferred-networks: 172.17.1.*
      use-only-site-local-interfaces: true

然後啟動服務,查看註冊中心就可以看到ip使用的是V.P.N上的地址了。

備註:切記是加在bootstrap.yml,因為bootstrap.yml的優先級最高,是啟動最先加載的配置文件,所以像這種註冊服務策略應該放到這裏。而不是放到git上的配置文件上。註意!!!!

關於未搞明白的那個問題,希望有了解的大神賜教,暫時因項目關系,所以沒有時間深入研究,我個人覺得跟系統、網絡相關所以我就沒有繼續下去了,不知道對不對,更不知道原因。

SpringCloud服務IP使用V.P.N地址解決方案