k8s使用flannel网络后,通过域名访问不了外网


k8s使用flannel网络后,通过域名访问不了外网,能ping 通kube-dns,而且kube-dns的 pod内部也能访问外网域名
已邀请:

lit_aaron

赞同来自:


能说清楚一下么:
是在pod所在容器内,还是pod所在的host上不能通过域名访问外网
是哪些pod所在容器不能访问外网域名。

建议逐步排查问题
从描述上看kube-dns所在的pod内部能通过域名访问外网, 估计是其他pod上容器不能访问外网域名。
如果是这样, 一本是建立kube-dns配置前host上域名解析配置不正确(/etc/reslov.conf)导致的。

1、首先查看 host,pod 容器间网络访问是相通的。
2、在任何主机host上访问外网域名,确认是否可以,如果不可以,修改相应主机域名解析配置
3、在其他host(非kube-dns)的pod容器内访问外网域名,可以通过安装nslookup dig等工具逐步测试,看域名解析在哪个服务器上。

nslookup


server $hostdnsserver
看是否能够解析。

stirlingx

赞同来自:


问题已经解决,修改host上的配置文件

/usr/lib/sysctl.d/00-system.conf
net.bridge.bridge-nf-call-iptables=1
net.bridge.bridge-nf-call-ip6tables=1

要回复问题请先登录注册