キャッシュ サイズが 0 に設定されている場合、DNS フォワーダー サービスは起動に失敗します。
search cancel

キャッシュ サイズが 0 に設定されている場合、DNS フォワーダー サービスは起動に失敗します。

book

Article ID: 427970

calendar_today

Updated On:

Products

VMware NSX

Issue/Introduction

免責事項:これは英文の記事「The DNS Forwarder service fails to start when the cache size is set to 0.」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。

 

  • DNS フォワーダー サービスはエラー状態のままであり、NSX UI に DNS フォワーダー DOWN アラームが 1 つ発生します。
  • DNS フォワーダーのデータパスが機能しなくなり、その後の再起動や設定変更ではサービスが回復されません。
  • Edgeで「 docker ps -a | grep service_dns 」を実行すると、DNSフォワーダーのバックエンドデータパスコンテナのステータスが「Exited」になっていることがわかります。

    お客様への影響
    1. DNSフォワーダーサービスへのDNSクエリが失敗します。
    2. DNSフォワーダーサービスのステータスがエラー状態のままで、アラームが存在します。

edge var/log/dns/prestart.log

  4 2025-04-28 10:46:28,353 14 dns.dns_utils ERROR Failed to run cmd /opt/vmware/nsx-edge/bin/dns/dnsconf_gen.py ####c20d-####-4d5f-####-767a854b#### with error Traceback (most recent call last):
 15 2025-04-28 10:46:28,355 14 dns.dns_fdr_prestart ERROR Failed to generate dnsmasq/iptable config file with cmd: /opt/vmware/nsx-edge/bin/dns/dnsconf_gen.py ####c20d-####-4d5f-####-767a854b####
 16 2025-09-22 03:04:26,528 13 dns.dns_utils ERROR Failed to run cmd /opt/vmware/nsx-edge/bin/dns/dnsconf_gen.py ####c20d-####-4d5f-####-767a854b#### with error Traceback (most recent call last):
136 2025-09-22 03:06:23,224 13 dns.dns_utils ERROR Failed to run cmd /opt/vmware/nsx-edge/bin/dns/dnsconf_gen.py ####c20d-####-4d5f-####-767a854b#### with error Traceback (most recent call last):
145 KeyError: 'cache_size'

var/log/proton/nsxapi.log

./var/log/proton/nsxapi.4.log:2025-09-22T09:13:27.084Z INFO providerTaskExecutor-1-7 DNSForwarderProviderNsxT 77770 POLICY [nsx@6876 comp="nsx-manager" level="INFO" subcomp="manager"] set tenancy context in updateDnsForwarder() with policyDnsForwarder DnsForwarder [listenerIp=##.##.##.##, logLevel=INFO, cacheSize=0, defaultForwarderZonePath=/infra/dns-forwarder-zones/####c20d-####-4d5f-####-767a854b####, conditionalForwarderZonePath=[], enabled=true, getForwardRelationShips()=[RelationshipInfo{targetPath=/infra/dns-forwarder-zones/####c20d-####-4d5f-####-767a854b####, relationshipType=DEFAULT_DNS_FORWARDER_ZONE_RELATIONSHIP}]][policyPath=/infra/tier-0s/Provider-LR/dns-forwarder, markedForDelete=false] for dnsForwarderModel DnsForwarder [logicalRouter=LogicalRouter/####1abc-####-465a-####-cfd66e85####, srClusterId=null, cacheSize=0, listenerIp=##.##.##.##, defaultZone=DnsForwarderZone [sourceIp=null, domainNames=[], upstreamServers=[##.##.##.##]], conditionalZones=null, logLevel=INFO, enabled=true, msgTimestamp=0, serviceGroupId=null, isStandbySite=false] 

Environment

VMware NSX

Cause

  • ポリシー サービスは、キャッシュ サイズを 0 に指定した DNS フォワーダー のCREATE API 要求を受信しました。
  • これは、API 検証ロジックによって拒否されるはずの無効な値です。
  • DNS フォワーダー バックエンドは、ポリシーから無効なキャッシュ サイズを受信することを予期していなかったため、データパスがクラッシュしました。

Resolution

  • メンテナンス ウィンドウ中に次のアクションを実行します。
  • 既存の DNS フォワーダー サービスを削除し、ゼロ以外のキャッシュ サイズで再作成します。

Additional Information

この問題はバージョン9.1で修正されました。