首页 > 其他分享 >解决内部pod解析不到外网问题

解决内部pod解析不到外网问题

时间:2023-01-04 16:12:19浏览次数:64  
标签:ConfigMap 内部 arpa yaml dns pod 解析

问题描述:

进入pod内发现只能ping通内部node和pod地址,baidu.com解析不到

  1. CoreDNS 的ConfigMap重定向到文件内

kubectl get cm -n kube-system coredns -o yaml > CoreDNS_ConfigMap.yaml

vim CoreDNS_ConfigMap.yaml
apiVersion: v1
data:
  Corefile: |
    .:53 {
        log
        errors
        health
        ready
        kubernetes cluster.local in-addr.arpa ip6.arpa {
          pods insecure
          fallthrough in-addr.arpa ip6.arpa
        }
        prometheus :9153
        forward . 8.8.8.8 #加入本地用的dns解析服务器
        cache 30
        loop
        reload
        loadbalance
    }
kind: ConfigMap
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"v1","data":{"Corefile":".:53 {\n    log\n    errors\n    health\n    ready\n    kubernetes cluster.local in-addr.arpa ip6.arpa {\n      pods insecure\n      fallthrough in-addr.arpa ip6.arpa\n    }\n    prometheus :9153\n    forward . 8.8.8.8\n    cache 30\n    loop\n    reload\n    loadbalance\n}\n"},"kind":"ConfigMap","metadata":{"annotations":{},"name":"coredns","namespace":"kube-system"}}
  creationTimestamp: "2022-12-18T10:11:57Z"
  name: coredns
  namespace: kube-system
  resourceVersion: "663977"
  uid: 97b64ce7-3850-4d34-974f-ae53f47c3a08

# 删除之前的旧pod
# 生效
kubectl replace -f CoreDNS_ConfigMap.yaml
  1. 创建pod测试在pod内是否可以ping通baidu.com

cat <<EOF | kubectl apply -f -
apiVersion: v1
kind: Pod
metadata:
  name: busybox
  namespace: default
spec:
  containers:
  - name: busybox
    image: docker.io/library/busybox:1.28
    command:
      - sleep
      - "3600"
    imagePullPolicy: IfNotPresent
  restartPolicy: Always
EOF

kubectl  get pod

kubectl exec -ti busybox -- sh
/ # ping baidu.com
PING baidu.com (39.156.66.10): 56 data bytes
64 bytes from 39.156.66.10: seq=0 ttl=127 time=41.059 ms
64 bytes from 39.156.66.10: seq=1 ttl=127 time=71.731 ms
64 bytes from 39.156.66.10: seq=2 ttl=127 time=123.897 ms
64 bytes from 39.156.66.10: seq=3 ttl=127 time=142.284 ms
64 bytes from 39.156.66.10: seq=4 ttl=127 time=43.085 ms

这样做的方法是:域名解析不用pod里的dns服务了,强制转发到外边,用外边的dns服务来做解析,从而避免pod里dns服务解析不了的问题。

参考:k8s中pod内dns无法解析的问题 | Pod (lmlphp.com)

标签:ConfigMap,内部,arpa,yaml,dns,pod,解析
From: https://www.cnblogs.com/Mercury-linux/p/17025154.html

相关文章

  • 解析URL中的携带的参数到Map
    手动解析URL字符串中的参数,写了一个工具类。1finalintMIN_ARRAY_LEN=2;2finalintDIVIDE_INTO_PAIRS=2;34publicMap<String,String>p......
  • Json-Tutorial03 字符串解析
    前言学习了Json字面量解析和数值解析后,本节我们将完成Json的单个字符串解析。Json中的字符串是以""修饰的。代码设计1.编写lept_get_boolean()等访问函数的单元测试,......
  • 内部类(成员,静态,匿名,局部)
    在成员内部类也可以被一些权限修饰符修饰成员内部类的地位相当于成员变量:定义格式:修饰符 class 类名 {}jdk16以前成员内部类不能定义静态变量,jdk16以后可以获取......
  • Pod生命周期
    PodphasePod的status字段是一个PodStatus对象,PodStatus中有一个phase字段。Pod的相位(phase)是Pod在其生命周期中的简单宏观概述。该字段并不是对容器或Pod......
  • Apache HTTPD 换行解析漏洞(CVE-2017-15715)
    1.漏洞原理ApacheHTTPD是一款HTTP服务器,它可以通过mod_php来运行PHP网页。其2.4.0~2.4.29版本中存在一个解析漏洞,在解析PHP时,a.php\x0a将被按照PHP后缀进行解析,导致绕过......
  • UMLChina建模竞赛题答案及解析(新增试卷7-9套解析)
    建模竞赛题比起《软件方法》书中的题目要更难一些,可以作为熟悉了《软件方法》中的基本知识之后的进一步练习。题目颇有些陷阱,应一些同学的要求,挑部分题目给出答案并详细讲解......
  • UMLChina建模竞赛题答案及解析(添加试卷3和4解析)
    建模竞赛题比起《软件方法》书中的题目要更难一些,可以作为熟悉了《软件方法》中的基本知识之后的进一步练习。题目颇有些陷阱,应一些同学的要求,挑部分题目给出答案并详细讲解......
  • Web3区块链DAS域名注册教程 tron trx链波卡钱包地址解析 用户名转账 ENS
    而在去中心化系统中,大部分人充值、转账时,使用的都是区块链原生的长地址,比如:ETH的地址:0x9euo8sHip*******dHld90CKB的地址:ckHUEI829D********hfjdD0在操作过程中,这......
  • [答疑]关于公众号答题比赛第5轮第1题的解析
    flen2018-11-2721:09第一个题目谁能解释一下潘加宇:本轮共3道题,很多人栽在了第1题,看到选项D是个用例图,就选了D。题目如下:1、以下属于描述"电视机"需求的是:A)B)C)D)我们先来......
  • 阿里easyexcel解析百万级大数据量的Excel表格,看这一篇文章就够了
    ​1、应用场景1.1、实际工作中可能会遇到百万条数据量的Excel表格上传到后台进行解析。那么传统的POI,它只适用于数据量较小的Excel表格解析,当数据量到一定级别时,后台程序就......