Итак, у меня есть странная проблема, которую я не знаю, как решить:
Сейчас стручки сообщают, что у них нет интернета. Я сузил проблему до проблемы с DNS (кластер предварительно настроен с использованием kubespray, который использует coredns). Когда я встаю в модуль отладки, я получаю следующее поведение:
- Когда я отправляю DNS для запроса www.google.com (
копать www.google.com
) журналы tcpdump для порта 53 выглядят так, как я и ожидал:
21:10:33.025899 IP-отладка.59031 > 169.254.25.10.домен: 18350+ [лау] А? www.google.com. (43)
21:10:33.026542 Отладка IP.52810 > 169.254.2510.домен: 33725+ PTR? 10.25.254.169.in-addr.arpa. (44)
21:10:33.036522 IP 169.254.25.10.домен > отладка.52810: 33725 NXDomain 0/0/0 (44)
21:10:33.036665 IP 169.254.25.10.домен > отладка.59031: 18350 1/0/1 A 142.250.80.36 (73)
- Когда я отправляю http-запрос на www.google.com (
завиток https://www.google.com
) журналы tcpdump для порта 53 показывают, что он добавляет домены поиска к DNS-запросам, что объясняет, почему модули сообщают об отсутствии Интернета.
21:10:40.068763 Отладка IP.43031 > 169.254.25.10.домен: 24294+ А? www.google.com.kube-system.svc.<домен kubernetes>. (63)
21:10:40.068826 Отладка IP.43031 > 169.254.25.10.домен: 7902+ AAAA? www.ggogle.com.kube-system.svc.<домен kubernetes>. (63)
21:10:40.069778 IP 169.254.25.10.домен > отладка.43031: 7902 NXDomain*- 0/1/0 (159)
21:10:40.069891 IP 169.254.25.10.домен > отладка.43031: 24294 NXDomain*- 0/1/0 (159)
21:10:40.070007 Отладка IP.38363 > 169.254.25.10.домен: 26807+ А? www.google.com.svc.<домен kubernetes>. (51)
21:10:40.070049 Отладка IP.38363 > 169.254.25.10.домен: 39068+ AAAA? www.google.com.svc.<домен kubernetes>. (51)
21:10:40.070643 IP 169.254.25.10.домен > отладка.38363: 26807 NXDomain*- 0/1/0 (147)
21:10:40.070807 IP 169.254.25.10.домен > отладка.38363: 39068 NXDomain*- 0/1/0 (147)
21:10:40.070891 Отладка IP.38087 > 169.254.25.10.домен: 40210+ А? www.google.com.<домен kuberenetes>. (487)
21:10:40.070935 Отладка IP.38087 > 169.254.25.10.домен: 41616+ AAAA? www.google.com.<домен kubernetes>. (47)
21:10:40.071461 IP 169.254.25.10.домен > отладка.38087: 41616 NXDomain*- 0/1/0 (143)
21:10:40.071632 IP 169.254.25.10.домен > отладка.38087: 40210 NXDomain*- 0/1/0 (143)
21:10:40.071706 Отладка IP.46700 > 169.254.25.10.домен: 3263+ А? www.google.com.<поисковый домен машинного модуля, на котором работает>. (53)
21:10:40:071748 Отладка IP.46700 > 169.254.25.10.домен: 19702+ AAAA? www.google.com.<поисковый домен машинного модуля, на котором работает>. (53)
21:10:40.089999 IP 169.254.25.10.domain > debug.46700: 3263 1/0/0 A <наш публичный IP> (104)
21:10:40.093058 IP 169.254.25.10.домен > отладка.46700: 19702 0/1/0 (147)
Поэтому я не уверен, что ожидаемое поведение состоит в том, чтобы сначала добавить поисковые домены, а затем попробовать корневой домен или нет. Если этого не должно быть, то я хотел бы знать, почему это так и как это исправить.Если это ожидаемое поведение, мне нужно выяснить, почему coredns разрешает домен как мой общедоступный IP-адрес, а не правильный IP-адрес, и как это исправить.