DSN Client Events(ID=1014)発生以降、FTPが延々失敗します

あげびだし 20 評価のポイント
2024-11-08T00:08:40.08+00:00

こんにちは。

以下のような現象があって、原因と対策を検討しています。

お知恵を拝借できればと、質問させていただきます。

環境

OS : Microsoft Windows 10 Enterprise LTSC 10.0.17763

XYZ : C# GUIアプリケーション(Visusal Studio 2019/.NET Framework 4.7.2)

現象

ある装置の状態を1分毎に監視して、その結果をウェブサーバーにFTPするGUIアプリケーションXYZがあります。

このFTPに、以下のような現象が、数日から数週間毎にあります。

① ある時点でのFTPの失敗

  1分周期で実行されるFTPが、ある時点で失敗する

② 以降の連続失敗

  一旦①が発生すると、端末再起動まで、以降FTPがずっと失敗し続ける

(XYZを再起動すれば復旧するかも知れないが、試せていない)

①②共、FTP失敗の際、Try-Catchで拾うExceptionのメッセージには、

「リモート サーバーに接続できません。」

とあります。

Windowsシステムイベントを確認すると、①が発生するより少し前のタイムスタンプで、

DSN Client Events(イベントID=1014)

「名前 xxxx の名前解決は、構成されたどの DNS サーバーからも応答がなく、タイムアウトしました。」

が必ずロギングされています。

※ xxxx は、本件で使用しているFTPサーバーとは異なります。

  また、この現象は時々発生するが、xxxx はその都度様々です。

試したこと

DSN Client Events(イベントID=1014)の原因と対策をウェブで検索し、

a) ネットワークアダプタのプロパティからIPv6を無効化(チェックを外す)

b) レジストリのTcpip6-ParametersにDisabledComponentsを値0で定義

c) ネットワークアダプタのプロパティからDNSを1.1.1.1、代替DNSを1.0.0.1に設定

d) FTPの接続先サーバーを名前でなくIPアドレスで指定

の4点をおこないましたが、状況が変わりません。

※ ipconfigすると、該当ネットワークアダプタにIPv6の表記が無いことから、IPv6は無効化されているようで、IPv6に起因しているのではないように思います。

 

補足

このXYZを、問題が発生している運用機の他に、2台の検証機に導入し、

検証機にも上記a)からd)の4点を適用して試験していますが、

検証機2台とも時々現象①は発生するものの、1分後の次のFTPは正常に送信されます。

つまり、運用機のみFTPが連続失敗します。

検証機1 : Windows 10 Enterprise LTSC 10.0.19044

検証機2 : Windows 10 Pro 10.0.19042

検証機2台は社内にありますが、運用機は客先にあり、ネットワーク環境が異なり、

・インターネットプロバイダ

・接続先FTPサーバー

・ルータ

などは別になります。

素人の私見で、何らかの原因でネットワークアダプタに問題が起こり

(3台ともこの現象が発生するのでNICカード等、機器固有の問題ではないと思いますが)、

そのため何かのアプリケーションがDNSを使用しようとした際にイベントID=1014が発生し、

そのあおりを食う形でそれに続くFTPが失敗するのかと思いましたが、

なかなか苦しい説明です。

ちなみに、イベントID=1014が発生する前に何かその原因が無いかと、

その発生時刻の前の他の種類のイベントも見てみたのですが、

そういったロギングはされていないようでした。

質問

1)

上記a)からd)までの対応をしてもなおイベントID=1014が発生しますが、どういった理由が考えられますでしょうか。

2)

イベントID=1014の発生を抑える方策はありますでしょうか。

3)

検証機と運用機の現象の発現の仕方の違いの原因について、何が考えられますでしょうか。

4)

最低でも、上記2台の検証機のように、現象①が発生しても次の周期で復旧すれば良いのですが、運用機でそのようにする方策は何かありますでしょうか。

大変困っておりまして、質問の一部でも何かヒントになるような情報があればと思っています。

例えば、最悪の話、FTPが複数回失敗した時点でXYZを再起動する、などもやむを得ないのですが、そもそも、この現象が発生した際は端末再起動が必要ではないかとも思えます。

根本対策が難しい場合の離れ業の対応でも構いませんので、お知恵拝借できますと幸いです。

よろしくお願いいたします。

Windows 10
Windows 10
パーソナル コンピューターとタブレットで実行される Microsoft オペレーティング システム。
124 件の質問
0 件のコメント コメントはありません
{count} 件の投票

4 件の回答

並べ替え方法: 最も役に立つ
  1. Hebikuzure aka Murachi Akira 15,256 評価のポイント MVP
    2024-11-08T07:02:25.67+00:00

    DNS 名前解決が失敗し続ける理由はよく分かりませんが、DNS Client のイベント 1014 については、以下のような情報があります。

    Event ID 1014: Microsoft Windows DNS Client

    まずは受信側スケーリング (RSS) 、受信ウインドウ自動チューニング、TCP オフロードを無効にしてみると良いようです。


  2. Jing Zhou 7,760 評価のポイント Microsoft 外部スタッフ
    2024-11-11T07:41:49.01+00:00

    こんにちは、

     

    Q&Aフォーラムに投稿いただき、ありがとうございます。

    この問題はネットワーク接続または遅延したDNSサーバーの応答による可能性があります。

    この問題をさらにトラブルシューティングするために、以下の手順をお試しください:

    1. 別のDNSサーバー(たとえば8.8.8.8)に変更して、問題が軽減されるかどうかを確認してください。
    2. ネットワーク接続を確認してください:ネットワーク接続が安定していることを確認し、必要に応じてネットワークトレースを取得してください。
    3. ルーターをリセットし、DNSキャッシュをクリアして中間デバイスの影響を避けてください。
    4. 同時に、DNSの問題を回避するためにFTPサーバーのドメイン名の代わりにIPアドレスを指定できます。

     

    上記の情報がお役に立てば幸いです。

    ご質問やご不明点があれば、お知らせいただければ幸いです。

     

    よろしくお願いいたします,

    ジル・チョウ

     


    回答がお役に立てば、「回答を受け入れる」をクリックしてアップボートしてください。

     


  3. チャブーン 2,121 評価のポイント MVP
    2024-11-14T07:57:58.7666667+00:00

    チャブーンです。

    この件ですが、難航してらっしゃるようですが、DNSまわりということでアタリをつけてらっしゃる、ということでいいでしょうか?

    その前提で考えると、名前解決がIPv6優先になってしまっているので、適切に解決されない、という可能性はあるにはあります。IPv6を無効化することでの効果は期待できますが、残念ながら設定が誤っていると思います。IPv6を無効にするには、以下のレジストリ設定を行う必要があります。チェックボックスの変更はサポートされず、不要となります。(Linuxのように「表示されないことが正」ではまったくないので注意してください)

    場所: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters\

    名前: DisabledComponents

    種類: REG_DWORD

    値: 0xFF (IPv6 が無効)

    https://learn.microsoft.com/ja-jp/troubleshoot/windows-server/networking/configure-ipv6-in-windows

    ですが、もっと簡単な切り分け方法(簡易的な対応方法)があります。それはHOSTSファイルにIPv4の名前解決情報を直接書く、ということです。対象のFTPサーバーを含め、通信上重大なサーバー類のIPアドレスを書いて、ipconfig /flushdnsコマンドを実行すると、内容が反映されるでしょう。HOSTSに書かれた名前解決情報は、DNSクエリに優先するので、DNSの影響は受けない(書いてあるものだけですが)と思います。

    あと、現場でしか起こっていない問題とはっきりわかってますので、現場で実際に調査されることをお奨めします。かなりの原因要素から「事前に絞り込む」のは一般に困難ですので、問題が起こっても再起動しなくていいよう代替機をお渡しして、調査ができる体制にすることが大事かと思います。

    ちなみに1014イベントに書かれた、実際のサーバー名は何でしょうか?.microsoft.comのFQDNでしょうか?


  4. あげびだし 20 評価のポイント
    2024-11-25T02:18:39.2233333+00:00

    「試したこと」に加え、こちらでいただいた情報(Event ID 1014: Microsoft Windows DNS Client のMeathod one, two)の適用やDisabledComponents を 0xFF するなどしましたが、検証機1 と 検証機2 共、対象名は clientwns.windows.com で1014 が生じました。

    時系列的には、

    (検証機1)

    12:51:00 のFTPが接続エラー(タイムアウト)

    12:53:46 イベントログに1014

    (検証機2)

    12:38:06 イベントログに1014

    12:38:40 のFTPが接続エラー(タイムアウト)

    のようになっています。

    検証機1ではFTP接続エラーの後に1014が発生しますが、すこし間隔があります。

    検証機1, 2は同一ネットワーク、同一FTPサーバーだからか、1014の発生日時が比較的近いです。

    どちらも1分毎にFTPするのですが、一旦失敗すると失敗が数回繰り返され、その後復帰して正常終了します。

    客先の方では一旦終了するとそれ以降のFTPが失敗し続けますが、どうやら現在1014は発生していないようです。


お客様の回答

回答は、質問作成者が [承諾された回答] としてマークできます。これは、ユーザーが回答が作成者の問題を解決したことを知るのに役立ちます。