macos调试dubbo发布ip地址错误问题

使用dubbo发布service时的ip地址老是个莫名奇妙的ip
虽然可以使用

-Ddubbo.protocol.host=192.168.31.90

解决,但ip老换着实很麻烦。故开始解决这个问题。
dubbo 获取ip 代码在

 InetAddress localAddress = NetUtils.getLocalAddress();

这里优先使用

InetAddress.getLocalHost()

获取ip.返回

 bogon/61.222.82.66

通过 https://stackoverflow.com/questions/9481865/getting-the-ip-address-of-the-current-machine-using-java 可以看到 获取有问题。
注意这里的主机名称为bogon.
修改主机名称

sudo scutil --set HostName MacBookPro  

修改共享名称

sudo scutil --set ComputerName MacBookPro  

最后在vim /etc/hosts

127.0.0.1   localhost MacBookPro
::1         localhost MacBookPro

dubbo 再获取ip时就是正确地址。

你可能感兴趣的:(macos调试dubbo发布ip地址错误问题)