qmq icon indicating copy to clipboard operation
qmq copied to clipboard

当在linux上时,得到的是docker0的地址

Open doodoocoder opened this issue 5 years ago • 5 comments

当在linux上时,得到的是docker0的地址,直接选最后一个ip地址即为“真实”ip即可

doodoocoder avatar Sep 16 '19 08:09 doodoocoder

@doodoocoder 谢谢

不过选最后一个就代表选的是真实ip么? 是巧合,还是确实就是这样呢?有依据么 这里确实困扰我很久

yuyijq avatar Sep 16 '19 11:09 yuyijq

我在windows 10测试了,环境是一个虚拟网卡(virtualbox虚拟出来的),一个真实的局域网地址,选取最后一个能得到真实的局域网ip地址,在linux上测试,环境是安装了docker,选取最后一个就是真实的局域网地址,但在云服务器上,得不到真实的外网地址,只能得到局域网的地址,我建议这个地址直接在实时broker,delay broker中配置,不用代码获取,最稳当,你觉得呢?

doodoocoder avatar Sep 17 '19 01:09 doodoocoder

@doodoocoder 配置也是一个办法,但是有点麻烦,每一台都要去单独配置,我看看有没有别的什么办法

yuyijq avatar Sep 17 '19 03:09 yuyijq

@doodoocoder 不过可以加上配置的选项

yuyijq avatar Sep 17 '19 03:09 yuyijq

这个修改应该不是最终方案,老代码在某些装了docker的机器上依然可以拿到正确的IP地址,应该是和ioctl的SIOCGIFCONF有关系,暂时没查到这个列表的内部sort规则。

BrickXu avatar May 07 '20 03:05 BrickXu