Alpine Linux域名区分大小写问题排查

本文涉及的产品
.cn 域名,1个 12个月
简介: alpine linux的hostname没有忽略大小写

产品采用Docker部署,为了减少镜像的体积某个版本升级后改用Alpine Linux作为基础镜像,升级完后发现Mongodb连接出错,异常如图:
image
显然是机器名解析不了,但应用的配置文件里明明是大写的,查了下Mongo的代码,发现Mongo驱动会把大写转小写:image,查看下驱动提交记录https://github.com/mongodb/mongo-java-driver/commit/03a6fbea6ec0608adf854116f2cb2c616664ee9e,给出的理由是DNS不区分大小写,查了下/etc/hosts配置文件,发现文件里配置的是大写的,在windows和linux宿主机上测试了下,确实不区分,在容器里ping以下,提示地址不正确,那问题应该出在Alpine Linux里了,Google了一会没发现相关的资料,只能查看代码了,把Alpine Linux依赖的musl libc源码下载下来,查下getaddrinfo函数的实现,
image
比较的时候没有忽略大小写,再查下glibc的实现:image
忽略了大小写,由此得知该问题是由于musl libc没有按照DNS的规范实现该函数

相关文章
|
6天前
|
域名解析 网络协议 程序员
程序员必知:【转】adns解析库——域名解析实例(C++、linux)
程序员必知:【转】adns解析库——域名解析实例(C++、linux)
13 0
|
17天前
|
算法 网络协议 Linux
探索Linux命令idn:处理国际化域名
`idn`命令在Linux中用于处理国际化域名,转换成ASCII兼容的ACE格式或反之。它支持Punycode算法,提供命令行接口及多种参数,如`-a`转ASCII,`-d`转回国际化域名。示例包括将`xn--zhonggu-wu9d.com`转换。使用时注意有效输入,考虑版本兼容性,并可与其他工具结合使用。
|
28天前
|
SQL Java Linux
Linux系统cpu飙升到100%排查方案
Linux系统cpu飙升到100%排查方案
19 0
|
2月前
|
Java Linux Arthas
linux上如何排查JVM内存过高?
linux上如何排查JVM内存过高?
1045 0
|
2月前
|
监控 安全 Linux
Linux系统入侵排查(三)
本文介绍了Linux系统入侵排查的相关知识。首先解释了进行系统入侵排查的原因,即当企业遭受黑客攻击、系统崩溃或其他安全事件时,需要迅速恢复系统并找出入侵来源。接着,重点讲述了日志入侵排查的重要性,因为日志文件记录了系统的重要活动,可以提供入侵行为的线索。
|
2月前
|
安全 Linux Shell
Linux系统入侵排查(二)
本文介绍了Linux系统入侵排查的步骤,包括检查历史命令记录、可疑端口和进程、开机启动项以及定时任务。作者强调了了解这些技能对于攻防两端的重要性,并提供了相关命令示例,如查看`/root/.bash_history`记录、使用`netstat`分析网络连接、检查`/etc/rc.local`和`/etc/cron.*`目录下的可疑脚本等。此外,还提到了如何查看和管理服务的自启动设置,以判断是否被恶意篡改。文章旨在帮助读者掌握Linux服务器安全维护的基本技巧。
|
2月前
|
缓存 安全 Linux
Linux系统入侵排查(一)
本文探讨了在遭遇黑客入侵或系统异常时进行应急响应和排查的必要性,重点介绍了基于Kali Linux的入侵排查步骤。排查的目标是找出潜在的恶意活动,恢复系统的安全性,并防止未来攻击。总结来说,进行Linux系统入侵排查需要密切关注账号安全,跟踪历史命令,及时识别并消除安全隐患。同时,保持对最新攻击手段和技术的了解,以便更好地防御和应对潜在的网络安全威胁。
|
2月前
|
域名解析 存储 缓存
Linux中搭建DNS 域名解析服务器(详细版)
Linux中搭建DNS 域名解析服务器(详细版)
124 5
|
2月前
|
安全 Linux 网络安全
Linux _ apache服务器部署 不同域名—访问不同网站(多网站)
Linux _ apache服务器部署 不同域名—访问不同网站(多网站)
|
2月前
|
运维 网络协议 Linux
【Linux】CentOS网络故障排查大揭秘: 实战攻略解读
【Linux】CentOS网络故障排查大揭秘: 实战攻略解读