Docker 容器中的 dnsmasq 經常收不到回复

Docker 容器中的 dnsmasq 經常收不到回复

我在 Docker 容器中運行 dnsmasq(Mac 上的 Docker Desktop)

docker-compose.yaml

version: '3'
services:
  dns:
    restart: unless-stopped
    image: strm/dnsmasq
    container_name: dnsmasq
    volumes:
      - $PWD/etc/dnsmasq.conf:/etc/dnsmasq.conf
      - $PWD/etc/myHosts:/etc/myHosts
      - $PWD/logs/dnsmasq:/logs/dnsmasq
    ports:
     - "53:53/udp"
    cap_add:
      - NET_ADMIN
    entrypoint:
      tail
    command:
      -F anything

對於此測試設置,我然後在容器中啟動一個終端並運行類似的命令

dnsmasq -d -q --log-queries=extra 2>> /logs/dnsmasq/2023-07-05_log2.txt

/etc/dnsmasq.conf

#Define Port
port=53
domain-needed
bogus-priv

#dont use hosts nameservers
no-resolv

# Use the default nameservers
server=1.1.1.1

# domain to keep local
local=/rubik/

addn-hosts=/etc/myHosts

/etc/myHosts定義了一些本機IP位址

它總體上有效,但請求不斷得不到答案並超時,而且我無法辨別任何模式。對於「現實生活」網頁瀏覽流量以及dig對知名網站的查詢都是如此。找到域名並不需要很長時間,但不能立即得到答复,最終會超時

我面前有一天的日誌,舉d.dropbox.com個例子

402 個query[A]條目、9 個query[type=65]條目、411 個forwarded條目(到目前為止已檢查)

74reply筆記錄, 0 筆cached記錄

由於有時會收到答复,我不知道從哪裡開始調查。可能是什麼問題?還是我看到的是正常行為?這是我第一次涉足 DNS 世界

相關內容