获取当前服务器IP地址的java代码

七海恋空 2023-04-13 浏览(0 评论(0

import java.net.InetAddress;

InetAddress.getLocalHost().getHostAddress();

这是获取当前服务器IP地址的java关键性代码,代码是挺简单的,但用起来却是后患无穷。

最近一个项目就是被这段代码坑了。客户上级单位近期组织大面积更换服务器ip地址,偏偏某个单位想偷懒省事,不愿意修改ip地址。因为直接修改ip地址会带来大量的工作量,需要修改大量的配置文件。于是就在网络层面做ip映射,这样表面上看各项服务是能够正常访问的。可是没想到有一个服务用了这段代码,获取当前服务器的ip地址,结果服务怎么都调不通。

我一直都是极力反对类似这样的配置的,因为一个流程从起点到终点当然是中间环节越少越好,这样图省事增加了一个节点无疑是增加了一个故障点,对于后期的维护是非常的不利的。过了若干年后,谁还会记得做了这种隐秘的配置,真的发生了什么问题,排查起来是非常费时费力的。我们做事情不能光顾着眼前,但是如今这世道大家都喜欢快餐文化,很多工作都是领导临时指派,问题能快速解决并且能向领导交差就行了。这种事后期出现了问题,也没人会去追责,因为根本想不起来当时是谁负责这事的。所以最终这事要干好,还是得全凭良心和责任心。

回到代码上面来,我们写程序要获取当前服务器IP地址的时候最好不要通过代码直接获取,尽量将这类信息放入配置文件,这种相对来说不是很固定的信息写在代码里,后期会很麻烦的。