2 houyuliangtime houyuliangtime 于 2015.06.03 10:21 提问

双机热备,如何用浮动IP跨网络访问异地服务

环境是这样的:
本地有两台服务器A、B
A:192.168.151.170(主)
B:192.168.151.171(备)
双机的浮动IP:192.168.151.174
承载网IP:10.182.254.164
异地服务端:172.16.122.39

在装双机之前,承载网映射的A服务器IP。A服务器可以ping通和telnet通异地服务器端。如:ping 172.16.122.39。代码里面调用异地服务端接口代码如下:
String wsdlUrl = "http://172.16.122.39:8080/interface4wcp/wcpActionServlet";
URL url = new URL(wsdlUrl);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();

装了双机之后,承载网映射的浮动IP。应用飘到哪台服务器上,该服务器只能通过源地址ping通异地服务器。如:ping -I 192.168.151.174 172.16.122.39。配管人员说这样是正常的。需要修改的是代码里面调用异地服务端接口时,也需要先转成源地址再去调用。
请问大侠们,代码该怎么写?怎么先转成源地址再调用异地服务端的接口?

1个回答

sumcul
sumcul   2015.06.09 11:15

不用转源地址吧,如果是个集群的话,那么就只保留一个IP,是有HA或者负载均衡软件决定分发到那台集群上。

Csdn user default icon
上传中...
上传图片
插入图片