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

简介: 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的规范实现该函数

相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
相关文章
|
15天前
|
Linux
Linux安装bind9搭建自己的域名服务器
Linux安装bind9搭建自己的域名服务器
10 0
|
24天前
|
网络协议 Shell Linux
【Shell 命令集合 系统管理 】Linux 查询域名的注册信息 whois命令 使用指南
【Shell 命令集合 系统管理 】Linux 查询域名的注册信息 whois命令 使用指南
44 1
|
6月前
|
域名解析 负载均衡 应用服务中间件
nginx反向代理https域名时,请求报错502问题排查
nginx反向代理https域名时,请求报错502问题排查
|
4月前
|
安全 Unix Linux
Linux【问题记录 02】腾讯云 cron、sshd 进程CPU占用超95%(亡命徒 Outlaw 僵尸网络攻击)问题排查及处理步骤
Linux【问题记录 02】腾讯云 cron、sshd 进程CPU占用超95%(亡命徒 Outlaw 僵尸网络攻击)问题排查及处理步骤
53 0
|
4月前
|
弹性计算 Linux 数据安全/隐私保护
Linux【问题记录 01】阿里云CPU使用率 100% ECS 同时连接数峰值 25k+ 问题排查无果(附阿里云重新初始化云盘详细步骤)
Linux【问题记录 01】阿里云CPU使用率 100% ECS 同时连接数峰值 25k+ 问题排查无果(附阿里云重新初始化云盘详细步骤)
122 0
|
5月前
|
应用服务中间件 Linux nginx
linux nginx域名证书到期,拿着客户给的新证书文件在nginx中对证书进行替换
业务场景: 📕1.找到原证书位置,可在nginx 配置文件中查找到 🖥️2.找到位置后将原文件名字 加上.old (需要更换两个文件 一个.pem 一个.key) 🔖3.将新证书文件放在原目录,并重命名为原证书文件名称 📌4.cd到sbin目录 reload nginx 📇5.查询是否替换成功 🧣6、最后的话 业务场景: 域名证书到期,拿着客户给的新证书文件在nginx中对证书进行替换
158 0
|
5月前
|
Linux
Linux查看域名对应的ip地址
Linux查看域名对应的ip地址
|
5月前
|
关系型数据库 MySQL Linux
linux下mysql 8.0配置大小写不敏感
linux下mysql 8.0配置大小写不敏感
|
6月前
|
Linux 网络安全
百度搜索:蓝易云【如何在 Alpine Linux 上启用或禁用防火墙?】
请注意,以上命令将在当前会话中立即更改防火墙状态。如果你希望在系统启动时自动启用或禁用防火墙,请相应地调整配置。具体配置方式可能因使用的版本和环境而有所不同,你可以参考Alpine Linux的官方文档或相关资源来获取更多信息。
171 0