Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Windows ネットワークを再確認する

Windows ネットワークを再確認する

2026 年 2 月 28 日開催「.NETラボ 勉強会 2026年2月」での登壇セッション「Windows ネットワークを再確認する」の投影スライドです。
Windows のネットワーク機能は、レガシーな機能との互換性を保ちつつ、現在の IT 環境で求められるセキュリティーとパフォーマンスの水準に合致するよう、構成されています。そのような Windows のネットワーク機能について、Windows 環境の管理者やユーザーが全体の構成や動作原理を再確認するためのセッションを行いました。

Avatar for Murachi Akira

Murachi Akira PRO

February 28, 2026
Tweet

More Decks by Murachi Akira

Other Decks in Technology

Transcript

  1. About me • Murachi Akira aka hebikuzure ( 村地 彰

    ) • 株式会社エクシードワン 技術フェロー • 株式会社シーピーエス 技術教育スペシャリスト • 専門学校東京テクニカルカレッジ非常勤講師 • Microsoft MVP (Most Valuable Professional) • Since Apr. 2011 ( 15 Years! ) • Award Category: Windows and Devices - Windows Cloud and Datacenter Management – Windows Server • Expertise • Windows client / user management and security • Microsoft 365, Active Directory, Microsoft Endpoint Manager https://www.linkedin.com/in/akiramurachi/ https://www.facebook.com/amurachi/ https://x.com/hebikuzure 2026/02/28 2 Murachi Akira aka Hebikuzure
  2. ネットワーク スタックの階層 5 User-Mode Applications Wininet, WinHTTP, Winsock API, etc

    4 System Drivers afd.sys, http.sys, 3 Protocol Stack tcpip.sys 2 NDIS NDIS IF Services, NDIS IF provider interface, NDIS proxy interface provider, Interface provider 1 Network Interface Network driver 2026/02/28 Murachi Akira aka Hebikuzure 5 1~4 までカーネルモード、5はユーザーモードでの動作
  3. Network Interface • ネットワーク インターフェースのハードウェアと直接通信するネットワーク ド ライバー • NDIS ミニポート

    ドライバーによって管理される • OSI 参照モデルではデータリンク層 (L2) の下部のサブレイヤーに相当 2026/02/28 Murachi Akira aka Hebikuzure 6
  4. NDIS • Network Driver Interface Specification • オペレーティングシステムに対してネットワーク インターフェースを抽象化す るレイヤー

    • OSI 参照モデルではデータリンク層 (L2) の上部のサブレイヤー (論理 リンク制御) に相当 2026/02/28 Murachi Akira aka Hebikuzure 7
  5. NDIS のアーキテクチャ • NDIS IF サービス インターフェイス プロバイダーとインターフェイスの登録を処理し、OID ク エリを実装し、インターフェイス

    プロバイダーのサービスを設定し、他の NDISIF サービスを提供する NDIS コンポーネント。 • NDIS IF プロバイダー インターフェイス NDIS IF Services コンポーネントが提供するインターフェイス。NDIS ドライバーがインターフェイス プロバイダーを実装できるようにする。 • NDIS プロキシ インターフェイス プロバイダー NDIS ミニポート ドライバーの代わりに NDISIF プロバイダー サービス を実装する NDIS コンポーネント (各ミニポート アダプター) とフィル ター ドライバー (各フィルター モジュール用)。 • インターフェイス プロバイダー NDIS プロキシ インターフェイス プロバイダー コンポーネントが提供でき ないインターフェイスの NDISIF プロバイダー サービスを提供する NDIS ドライバー。 2026/02/28 Murachi Akira aka Hebikuzure 8 https://learn.microsoft.com/ja-jp/windows-hardware/drivers/network/ndis-network-interface-architecture から引用
  6. NDIS でサポートされるドライバー • ミニポート ドライバー • NIC ハードウェアを管理し、上位のドライバーへのインターフェースとなる • プロトコル

    ドライバー • 上位レイヤーのプロトコルの最下層処理 • フィルター ドライバー • プロトコル ドライバーとミニポート ドライバーの間の通信の監視、変更が可能 • 中間ドライバー • ミニポート ドライバーとプロトコル ドライバーの中間に挿入される 2026/02/28 Murachi Akira aka Hebikuzure 9
  7. フィルター ドライバーと中間ドライバー • フィルター ドライバー • 中間 ドライバー 2026/02/28 Murachi

    Akira aka Hebikuzure 10 Miniport Adapter Filter Module (n) Filter Module (1) Protocol Binding Miniport Adapter Filter Module (n) Filter Module (1) Protocol Binding 中間ドライバー プロトコ ル エッジ 仮想 ミニ ポート
  8. Protocol Stack • 主に、TCP/IP プロトコルを処理する tcpip.sys • IPv6/IPv4、TCP/UDP のすべてに1つのモジュールで対応 •

    OSI 参照モデルのネットワーク層 (L3)・トランスポート層 (L4) に相当 • NDIS プロトコル ドライバーのプライベート インターフェースを通じてロー レベルの処理を行う 2026/02/28 Murachi Akira aka Hebikuzure 13
  9. System Drivers • afd.sys, http.sys などのカーネル モードのドライバー • afd.sys •

    Ancillary Function Driver(補助関数ドライバー) • http.sys • HTTP プロトコルの処理 2026/02/28 Murachi Akira aka Hebikuzure 14
  10. User-Mode Applications • Win32 アプリケーション用に Winsock の API が公開されている •

    WinInet や WinHTTP も Winsock を利用する • Winsock はカーネルモードの WSK(実体は afd.sys)を呼び出す 2026/02/28 Murachi Akira aka Hebikuzure 16
  11. Winsock のプロトコル • 実際には TCP/IP 以外のプロトコルもサポートされている • NBT(NetBIOS over TCP/IP)はそろそろ廃止の方向

    • Windows XP / Windows Server 2003 までは NetBEUI、 IPX/SPX、AppleTalk もサポートされていた • ATM アダプタをインストールすれば、 Windows XP / Windows Server 2003 までは ATM もサポートされたいた • 詳細は「 Windows での Winsock ネットワーク プロトコルのサポート - Win32 apps | Microsoft Learn」参照 2026/02/28 Murachi Akira aka Hebikuzure 19
  12. WFP • Windows Filtering Platform • ネットワーク フィルタリング アプリケーションを作成するためのプラットフォー ムを提供する一連の

    API およびシステム サービス • ネットワーク スタック内の複数のレイヤーで行われるパケット処理にアクセ スし、ネットワーク データをフィルター処理し、宛先に到達する前に変更 することも可能 • ファイアウォール、IDS/IPS、ウイルス対策、ネットワーク監視、Webフィ ルタリングなどを実装可能 2026/02/28 Murachi Akira aka Hebikuzure 21
  13. WFP のアーキテクチャ • ユーザーモードのコンポーネントとカーネルモードのコンポーネントの複合 • ユーザー モード コンポーネントは、RPC と IPsec

    のフィルター処理を実行 • カーネル モード コンポーネントは、TCP/IP スタックでフィルター処理を実行 • BFE (Base Filtering Engine) • ユーザーモードで動作する WFP コンポーネントの調整サービス • システムのフィルターの追加と削除、フィルター構成の格納、WFP 構成セキュリ ティの適用などを行う • コールアウト ドライバー • 実際のフィルター機能を提供するドライバー 2026/02/28 Murachi Akira aka Hebikuzure 22
  14. TDI • Transport Driver Interface • すべてのトランスポート プロトコル スタックの上端で公開されるカーネル モード

    のネットワーク インターフェイスを定義しているインターフェース • トランスポート層のプロトコルを抽象化して、アプリケーションからの互換 性を確保できる 2026/02/28 Murachi Akira aka Hebikuzure 24
  15. ブラウジングと名前解決 – NetBEUI • LAN Manager 時代は NetBEUI(NetBIOS の MS

    実装) • 以下の機序で動作 1. 各ホストが NetBIOS 名をブロードキャスト 2. マスターブラウザーが受信した情報(ホスト名と物理アドレスの対応)を登録 3. クライアントはマスターブラウザーの情報を元にホストを発見・名前解決 • NetBIOS 名は ASCII 文字16字 • ただし Microsoft 実装では 16字目は NetBIOSのサフィックスとして 予約=Windows のコンピュータ名が15字までなのはこれに由来 2026/02/28 Murachi Akira aka Hebikuzure 28
  16. ブラウジングと名前解決 – NBT • Windows NT 3.5/98 以降は NBT (NetBIOS

    over TCP/IP) に移行 • 名前解決は NBT-NS(NetBIOS over TCP/IP Name Service) • トランスポートが変わるだけで、ブラウジングと名前解決の仕組みは同じ • 名前解決は IP アドレスへの解決 2026/02/28 Murachi Akira aka Hebikuzure 29
  17. ブラウジング – 少し前の Windows • Windows Vista で LLTD が利用されるようになった

    • LLTD:Link Layer Topology Discovery ※標準化されていない、Microsoft のプロプライエタリ仕様 • 以下の機序で動作する 1. マッパー(ホスト)が探索フレームをブロードキャスト 2. レスポンダーが探索フレームに応答 3. 応答を受け取ったマッパーがネットワーク マップを作成 2026/02/28 Murachi Akira aka Hebikuzure 30
  18. ブラウジング – 現在の Windows 11 • ネットワーク探索 • 複数のプロトコルを組み合わせてネットワーク上のデバイス(Windows だけで

    なく、ネットワークデバイスやマルチメディアデバイスも含めて)をブラウジングする • 使われるプロトコル • WSD(Web Services Discovery) 主に Windows ホストの探索 • SSDP(Simple Service Discovery Protocol) ネットワーク機器やメディアデバイスの探索 • UPnP(Universal Plug and Play) ネットワーク機器やメディアデバイスの探索 2026/02/28 Murachi Akira aka Hebikuzure 31
  19. 名前解決 – 現在の Windows 11 • 以下の順でホスト名の名前解決を試みる 1. DNS ローカル

    キャッシュ 2. hosts ファイル 3. DNS(単一ホスト名の場合は DNS サフィックスを追加) 4. mDNS(.local サフィックスの仕様) 5. LLMNR 6. (有効となっている場合)NetBIOS(NBT-NS / WINS) 2026/02/28 Murachi Akira aka Hebikuzure 32
  20. mDNS • Multicast DNS(RFC 6762) • 以下の機序で動作 1. 解決するホスト名を自分の持っている mDSN

    キャッシュに問い合わせ 2. キャッシュに無ければ名前解決のクエリをマルチキャストで送信 3. 該当するホスト名のデバイスが Answer をマルチキャスト 4. Answer を受け取ったデバイスは mDNS キャッシュに登録 • .local TLD で終わるホスト名のみを解決 • UDPポート 5353 を利用 2026/02/28 Murachi Akira aka Hebikuzure 33
  21. LLMNR • Link-Local Multicast Name Resolution • 動作機序は mDNS とほぼ同じ

    • UDPポート 5355 を利用 • RFC は公開されたが、標準化されなかった 2026/02/28 Murachi Akira aka Hebikuzure 34
  22. WINS • Windows Internet Name Service • NBT の名前解決を(マスターブラウザーではなく)サーバーで一元管 理する仕組み

    • Windows Server の役割として提供されている • サポートされるのは Windows Server 2025 まで • 次期バージョン(vNEXT)では廃止が決定している • WINS の削除: 最新の名前解決を使用して前進する - Microsoft サポート 2026/02/28 Murachi Akira aka Hebikuzure 35
  23. Windows のネットワークスタック 2026/02/28 Murachi Akira aka Hebikuzure 38 5 User-Mode

    Applications Wininet, WinHTTP, Winsock API, etc 4 System Drivers afd.sys, http.sys, 3 Protocol Stack tcpip.sys 2 NDIS NDIS IF Services, NDIS IF provider interface, NDIS proxy interface provider, Interface provider 1 Network Interface Network driver
  24. ブラウジング/名前解決 NetBEUI NBT LLTD ネットワーク 探索 2026/02/28 Murachi Akira aka

    Hebikuzure 40 TCP/IP じゃない 設計が古い プロプライエタリ 標準化技術の 組み合わせ