Dokcer容器内无法域名解析

Posted wuser

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Dokcer容器内无法域名解析相关的知识,希望对你有一定的参考价值。

0x00 原因

Linux系统默认情况下是未打开ip转发功能的,docker容器内部的网络是由Linux的iptables制定转发规则实现的。
所以当Linux未打开IP转发时,会造成容器内部无法解析域名。

0x01 解决方案

暂时解决:

查看如下地址中的数值(1为开启,0为关闭)

/proc/sys/net/ipv4/ip_forward

如果为0,修改为1即可。

永久解决:

查看如下地址中的数值(1为开启,0为关闭)

/etc/sysctl.conf
# Centos7及以上地址为:/usr/lib/sysctl.d/50-default.conf

修改为1,没有添加即可。
运行如下命令使其生效。

sysctl -p /etc/sysctl.conf


以上是关于Dokcer容器内无法域名解析的主要内容,如果未能解决你的问题,请参考以下文章

docker 部署 coredns(内部域名解析)

Nginx反向代理docker容器进行域名解析绑定的实现方法

K8S POD无法访问外网域名

云原生-Dockerdocker容器自定义DNS解析

Dokcer容器的信息查询

coreDNS域名无法解析问题