次の方法で共有


!ndiskd.netadapter

!ndiskd.netadapter 拡張機能は、システム上でアクティブな NDIS ミニポートまたはネットワーク アダプターに関する情報を表示します。 パラメーターなしでこのコマンドを実行すると、!ndiskd はすべてのネットワーク アダプターの一覧を表示します。

     !ndiskd.netadapter [-handle <x>] [-basic] [-diag] [-state] [-bindings] 
        [-ports] [-offloads] [-filterdb] [-timers] [-rst]
        [-pm] [-ss] [-aoac] [-wol] [-protocoloffloads]
        [-rss] [-hw] [-device] [-wmi] [-customwmi]
        [-ndiswmi] [-ref] [-log] [-grovel] [-findname <any>]
        [-rcvfilter] [-nicswitch] [-rcvqueues] [-nicswitches] [-iov]
        [-vfs] [-vports] [-iftrace] [-ip]

パラメーター

-ハンドル
NDIS ミニポートのハンドル。

-基本的な
ミニポートに関する概要情報を表示します。

-diag
自動診断アラート (存在する場合) を表示します。

-状態
ミニポートの現在の状態を表示します。

-バインド
ミニポート バインドを表示します。

-ポート
NDIS ポートの一覧を表示します。

-オフロード
タスク オフロードの状態と機能を示します。

-filterdb
現在のパケット フィルターを表示します。

-タイマー
ミニポートによって割り当てられたタイマー オブジェクトを表示します。

-rst
調整状態 Receive-Side 表示します。

-午後
電源管理の状態と機能を示します。

-ss
選択的中断状態を表示します。

-aoac
AOAC (コネクト スタンバイ) の状態を表示します。

-wol
Wake-on-LAN (WoL) の構成を示します。

-protocoloffloads
アクティブな電源管理プロトコルオフロードを示します。

-rss
Receive Side Scaling パラメーターを表示します。

-ハードウェア
ハードウェア リソースを表示します。

-デバイス
基になる NT デバイス オブジェクトに関する情報を表示します。

-wmi
アダプターに登録されている WMI GUID を示します。

-customwmi
ミニポートによって登録されたカスタム WMI GUID を表示します。

-ndiswmi
NDIS が提供する WMI GUID を示します。

-ref
ミニポートの参照の内訳を表示します。

-丸太
PnP および Power イベント ログを表示します。

-grovel
メモリ内のミニポート ブロックの検索を強制します。

-findname
名前プレフィックスでミニポートをフィルター処理します。

-rcvfilter
受信フィルター機能を表示します。

-nicswitch
NIC スイッチの機能を示します。

-rcvqueues
受信キューを表示します。

-nicswitches
NIC スイッチを表示します。

-iov
SR-IOV (単一ルート I/O 仮想化) 機能を示します。

-vfs
SR-IOV VM (仮想フィルター) を表示します。

-vports
Vports (仮想ポート) を表示します。

-ifrtrace
処理中のレコーダーのトレースを表示します。

-ip
ネットワークのインターフェイス上の IP アドレスを表示します。

DLL

Ndiskd.dll

例示

パラメーターなしで !ndiskd.netadapter を実行すると、関連付けられているミニポート ドライバーと共にシステム上のすべてのネットワーク アダプターの一覧を取得できます。 この出力例では、ハンドルが ffffdf80140c71a0 である Microsoft カーネル デバッグ ネットワーク アダプターを探します。 カーネル デバッグ ネットワーク アダプターの詳細については、NDIS ブログの ネットワーク経由でのカーネル デバッグ を参照してください。

3: kd> !ndiskd.netadapter
    Driver             NetAdapter          Name                                 
    ffffdf8015a98380   ffffdf8015aa11a0    Microsoft ISATAP Adapter #2
    ffffdf801418d650   ffffdf80140c71a0    Microsoft Kernel Debug Network Adapter

ミニポート ドライバーのハンドルをクリックするか、 !ndiskd.netadapter -handle に入ると、そのデバイス上のすべての NDIS の状態を確認できます。 これは、ネットワーク ドライバーのトラブルシューティングや、問題がネットワーク スタック内のどこにあるかを把握するための出発点として非常に役立ちます。 たとえば、ドライバーの Datapath 状態を確認し、接続されているかどうかを確認できます。

このネット アダプターのレポートの下部には、保留中の OID やタスク オフロードの状態など、詳細情報を調べるためにクリックできる他の多くのリンクがあります。 これらのリンクは、 !ndiskd.netadapter の多くのパラメーターに対応しています。

3: kd> !ndiskd.netadapter ffffdf80140c71a0


MINIPORT

    Microsoft Kernel Debug Network Adapter

    Ndis handle        ffffdf80140c71a0
    Ndis API version   v6.20
    Adapter context    ffffdf80147d7230
    Driver             ffffdf801418d650 - kdnic  v4.2
    Network interface  ffffdf80139b3a20

    Media type         802.3
    Physical medium    NdisPhysicalMediumOther
    Device instance    ROOT\KDNIC\0000
    Device object      ffffdf80140c7050    More information
    MAC address        18-03-73-c1-e8-72


STATE

    Miniport           Running
    Device PnP         Started             Show state history
    Datapath           Normal
    Interface          Up
    Media              Connected
    Power              D0
    References         0n10                Show detail
    Total resets       0
    Pending OID        None
    Flags              NOT_BUS_MASTER, ALLOW_BUGCHECK_CALLBACK,
                       BUGCHECK_CALLBACK_REGISTERED, DEFAULT_PORT_ACTIVATED,
                       SUPPORTS_MEDIA_SENSE, DOES_NOT_DO_LOOPBACK,
                       MEDIA_CONNECTED
    PnP flags          VIRTUAL_DEVICE, HIDDEN, NO_HALT_ON_SUSPEND,
                       RECEIVED_START


BINDINGS

    Protocol list      Driver              Open               Context           
    MSLLDP             ffffdf80120a5c10    ffffdf8015a749c0   ffffdf8015d325e0
    TCPIP              ffffdf80131cc010    ffffdf801494a650   ffffdf801494aa50
    NDISUIO            ffffdf8015a58140    ffffdf8015a78c10   ffffdf8015a77e00
    TCPIP6             ffffdf80131c9c10    ffffdf80147875a0   ffffdf801494f010
    (RASPPPOE)         Not running
    RSPNDR             ffffdf80120a0c10    ffffdf8015a79c10   ffffdf8015a79010
    LLTDIO             ffffdf8015a5f9b0    ffffdf801406f010   ffffdf8015a786c0
    (RDMANDK)          ffffdf801406d8f0    Declined with NDIS_STATUS_NOT_RECOGNIZED

    Filter list        Driver              Module             Context           
    WFP 802.3 MAC Layer LightWeight Filter-0000
                       ffffdf80139a5a70    ffffdf801494c670   ffffdf801494a010
    QoS Packet Scheduler-0000
                       ffffdf8014039d90    ffffdf801494dc70   ffffdf80147dc2b0
    WFP Native MAC Layer LightWeight Filter-0000
                       ffffdf80139fcd70    ffffdf8014950c70   ffffdf8014950880



MORE INFORMATION

    Driver handlers                        Task offloads
    Power management                       PM protocol offloads
    Pending OIDs                           Timers
    Pending NBLs                           Receive side throttling
    Wake-on-LAN (WoL)                      Packet filter
    Receive queues                         Receive filtering
    RSS                                    NIC switch
    Hardware resources                     Selective suspend
    NDIS ports                             WMI guids
    Diagnostic log

詳細なデバッグの開始点として !ndiskd.netadapter を使用する例として、レポートの下部にある [ドライバー ハンドラー] リンクをクリックして、このネット アダプターのミニポート ドライバーに登録されているすべてのドライバー コールバック ハンドラーの一覧を表示します。 次の例では、リンクをクリックすると、!ndiskd がこのネット アダプターのミニポート ドライバーのハンドルを持つ !ndiskd.minidriver 拡張機能を実行します。 ミニポート ドライバーは kdnic 4.2 で、ハンドルは ffffdf801418d650 です。

3: kd> !ndiskd.minidriver ffffdf801418d650 -handlers


HANDLERS

    NDIS Handler                           Function pointer   Symbol (if available)
    InitializeHandlerEx                    fffff80f1fd78230  bp
    SetOptionsHandler                      fffff80f1fd72800  bp
    HaltHandlerEx                          fffff80f1fd78040  bp
    ShutdownHandlerEx                      fffff80f1fd722c0  bp

    CheckForHangHandlerEx                  fffff80f1fd72810  bp
    ResetHandlerEx                         fffff80f1fd72f70  bp

    PauseHandler                           fffff80f1fd78000  bp
    RestartHandler                         fffff80f1fd78940  bp

    OidRequestHandler                      fffff80f1fd71c90  bp
    CancelOidRequestHandler                fffff80f1fd722c0  bp
    DirectOidRequestHandler                [None]
    CancelDirectOidRequestHandler          [None]
    DevicePnPEventNotifyHandler            fffff80f1fd789a0  bp

    SendNetBufferListsHandler              fffff80f1fd71870  bp
    ReturnNetBufferListsHandler            fffff80f1fd71b50  bp
    CancelSendHandler                      fffff80f1fd722c0  bp

各ハンドラーの右側にある [bp] リンクをクリックして、特定の問題をデバッグするためにそのハンドラーにブレークポイントを設定できるようになりました。 たとえば、データパスにハングがある場合は、ドライバーの SendNetBufferListsHandler または ReturnNetBufferListsHandler を調査できます。

こちらも参照ください

ネットワーク ドライバー設計ガイド)

Windows Vista 以降のネットワーク リファレンス

ネットワーク スタックのデバッグ

NDIS 拡張機能 (Ndiskd.dll)

!ndiskd.help

ネットワーク経由のカーネル デバッグ

!ndiskd.minidriver