关于disconf ContOS下报cannot get host info的问题
时间:2016-07-24 14:05 来源:linux.it.net.cn 作者:IT
发现linux下部署disconf报cannot get host info的问题我通过github上disconf源码发现:
第45行:InetAddress.getLocalHost();发现这个方法在linux上很是坑爹。
InetAddress.getLocalHost返回了一个错误的IP地址。为什么这个函数会返回一个错误的地址,因为这个函数的原理是通过获取本机的hostname,然后对此hostname做解析,从而获取IP地址的。那么问题来了,如果在本机的/etc/hosts文件里对这个主机名指向了一个错误的IP地址,那么InetAddress.getLocalHost就会返回这个错误的IP地址。当然如果你的hostname是到DNS去解析的,碰巧DNS上的信息也是错的,也同样是悲惨结局。
解决办法:
通过hostname查看主机名
修改/etc/hosts:添加一行:【本机IP地址】 【主机名】
搞定。
(责任编辑:IT)
发现linux下部署disconf报cannot get host info的问题我通过github上disconf源码发现:
第45行:InetAddress.getLocalHost();发现这个方法在linux上很是坑爹。 InetAddress.getLocalHost返回了一个错误的IP地址。为什么这个函数会返回一个错误的地址,因为这个函数的原理是通过获取本机的hostname,然后对此hostname做解析,从而获取IP地址的。那么问题来了,如果在本机的/etc/hosts文件里对这个主机名指向了一个错误的IP地址,那么InetAddress.getLocalHost就会返回这个错误的IP地址。当然如果你的hostname是到DNS去解析的,碰巧DNS上的信息也是错的,也同样是悲惨结局。 解决办法: 通过hostname查看主机名
修改/etc/hosts:添加一行:【本机IP地址】 【主机名】 |