マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

ネットワークや、サーバに繋がらなくなるケースの

  • 事例と
  • トラブルシュートの方法

についてまとめています。

前提知識

  • まず、ネットワークの基本的な知識が必要になります。
  • また、基本的にパケット・キャプチャができないと厳しいです。
    Wireshark、Microsoft Network Monitor、Fiddlerの使用方法を習得して下さい。

トラブルシュートの順書

OSI参照モデル - Wikipedia
http://ja.wikipedia.org/wiki/OSI%E5%8F%82%E7%85%A7%E3%83%A2%E3%83%87%E3%83%AB
の順番に合わせてトラブル・シュートして問題を切り分けます。

第一層(ケーブル、NW機器電源など)

第二層(イーサネット)

アドレスの解決

IPアドレス → MACアドレスを解決するARPがあります。
ARPテーブルの確認が必要になることもあります。

arp - ARPテーブルの表示/設定を行う
http://www.atmarkit.co.jp/fnetwork/netcom/arp/arp.html

NICの設定

  • 非常に良くある話に、「自動識別」と「全二重固定」の混在があります。
    • 自動識別(オート・ネゴシエーション)に対応していないネットワーク機器と
      オート・ネゴシエーション→接続しようとして失敗していることがあります。
    • オート・ネゴシエーションの失敗は、
      Windwosのイベントログに(警告か情報で)出力されるので確認可能です。
  • 次いで、「SNP(Scalable Networking Pack)」と呼ばれる
    ネットワーク最適化機能が有効になっていることで問題を起こすケースがあります。
    • ネットワーク処理が不安定になる。
    • ネットワークと無関係のアプリケーションの処理に影響を与える。

スイッチの設定

  • NICと同様に、ヒット率の高いものに、自動識別(オート・ネゴ)があります。
  • また、ユニ・キャスト、マルチ・キャスト、ブロード・キャストなど、
    スイッチを使用していても、複数のIPアドレス、MACアドレス
    へのフラッディングが必要になるケースがあります。
  • (1):http://itpro.nikkeibp.co.jp/members/NCC/NETPOINT/20010926/1/

    スイッチング・ハブやL3スイッチなどのLANスイッチを導入したスイッチ・ネットワークには、
    リピータ・ハブだけを使った簡単な構成のLANでは生じにくい様々なトラブルが潜む。

  • http://itpro.nikkeibp.co.jp/members/NCC/NETPOINT/20010926/4/

    オート・ネゴシエーション機能は、
    FLPという通信モード情報を含む信号を接続する機器間で交換することで実現。
    A社のケースでは、一部の端末は「100BASE-TXで全2重通信」という通信モードだったため、
    FLP信号の代わりにアイドル信号を利用したが、結局通信モードは不一致になってしまった。

  • (2):http://itpro.nikkeibp.co.jp/members/NCC/NETPOINT/20011004/1/

    より対線ケーブル(ツイストペア・ケーブル)を多数使った
    スイッチ・ネットワークでは、LAN配線の大幅変更時に混乱が生じやすい。
    これは、利用中のケーブルの種類を容易に判別できるようにしておくだけで対応できる

  • (3):http://itpro.nikkeibp.co.jp/members/NCC/NETPOINT/20011030/1/
    • L2スイッチLANでは、接続ミスによるトラブルを防止したり、
      バックアップ経路を確保するためにスパニング・ツリーと呼ぶ経路制御機能を使う。

      L2スイッチを多段接続していた所に誤ってケーブルを接続した結果、
      ループ状のトポロジになり、トラフィックがブロードキャスト・パケットで埋め尽くされた。

  • http://itpro.nikkeibp.co.jp/members/NCC/NETPOINT/20011030/2/

    スパニング・ツリーは、デフォルトではMACアドレスの一番小さなL2スイッチ
    がルート・ブリッジになり、ネットワーク構成を管理する。
    A社では夜間に電源を切るL2スイッチをルート・ブリッジにしてしまったため、
    電源のオフ/オンのタイミングで一時的に通信ができなくなった。

  • (4):http://itpro.nikkeibp.co.jp/members/NCC/NETPOINT/20011120/1/

    近のLANスイッチの多くは、多くの便利な機能を持つ。
    例えば、マルチキャスト関連機能やバーチャルLAN機能である。だが、これらの機能は、
    その仕組みをしっかりと把握して使わないと、意外なトラブルに遭遇することがある。

  • http://itpro.nikkeibp.co.jp/members/NCC/NETPOINT/20011120/2/
  • http://itpro.nikkeibp.co.jp/members/NCC/NETPOINT/20011120/3/

    ホット・スタンバイ機能により、定期的にL3スイッチの実働系と待機系が、
    IPマルチキャストのアドレスを使って互いの状態を確認し合っている。
    ところが、L3スイッチがホット・スタンバイのやり取りに使うMACアドレスと
    別の端末のMACアドレスが重複してしまい、さらにLANスイッチ上で
    IGMPスヌープ機能を有効にしていたため、ホット・スタンバイが働かなくなった。

  • http://itpro.nikkeibp.co.jp/members/NCC/NETPOINT/20011120/4/

    エンドユーザーにはVLAN機能は見えない。
    VLANが設定されていないポートに接続した際に、
    「DHCPが動作しないトラブルが発生している」といったクレームを主張。
    この主張に従って原因を調査してしまい、多大な時間を費やしてしまった。
    VLANが原因と判明したのはほかの原因をすべて調査した後だった。

第三層(IP)

ネットワーク接続のプロパティ

通信を行う双方のホストの
「ネットワーク接続のプロパティ」
に正しい設定がされている必要があります。

  • インターネット・プロトコル(TCP/IP)
    • 基本設定
      • IPアドレス
      • サブネットマスク、
      • デフォルト・ゲートウェイ
  • 名前解決
    • DNS設定(FQDN名をIP名に変更)
    • WINS設定(NetBIOS名をIP名に変更)
  • DHCPから情報を取得する設定の場合
    DHCPから配信される情報の設定は不要になる。

名前解決

  • FQDN名→IPアドレスの名前解決
    hostsファイル、DNSサービスにより名前解決されます。
  • DNS
    • DNSサーバが動作している事。
    • DNSクライアントが動作している事。
  • NetBIOS名→IPアドレスの名前解決
    lmhostsファイル、Browserサービス、WINSサービスにより名前解決されます。
  • ワーク・グループ環境
    • 同一サブネット内であれば、
      ブロードキャスト要求をBrowserサービスで名前解決します。
    • サブネットを跨ぐ場合は、WINSサービスの導入を検討します。
  • Active Directory環境
    同一ドメイン内であれば名前解決可能です。

IPのルーティング

ping、tracert、pathpingなどを使用して調査する。

必要に応じてルータのルーティング・テーブルの確認が必要になります。

第四・五層(TCP, UDPなど)

通信の状態を確認する。

TCPの通信の状態を調べるためにはnetstatコマンドが使用できます。

netstatコマンドを使いこなす - @IT
http://www.atmarkit.co.jp/fwin2k/win2ktips/234netstat/netstat.html

ファイア・ウォール

  • いちばん簡単なのは無効にする事です。
  • Windowsファイア・ウォール
    • ウィルス対策ソフトにより設定が突然変更される事があります。
    • TCP, UDPのリスニング・ポートだけでなく、
      ICMPなどもフィルタリングする設定があります。
  • サービス、ポート単位の例外の設定が可能です。
  • 上記に加えスコープの設定がありますので注意。
    • サブネット内のアドレス
    • カスタム設定
      ● ホワイト・リストの設定
      ● サブネット・マスクの設定
    • 任意のアドレス
  • Windows2008からプロファイル毎の設定が可能になりました。
    プロファイルには、パブリック、プライベート、ドメインの3つがあります。
  • 特に、突然、プロファイルがプライベートから
    パブリックに変わるなどしてハマる事があります。
    • パブリック:以下に属さない公共の場所
    • プライベート:個人の自宅やワークグループ構成のネットワーク
    • ドメイン毎:Active Directoryドメイン・ネットワーク
  • ドメイン変更方法
    • vista、2008
      [ネットワークと共有センター]→[カスタマイズ]ボタン
    • 7、2008R2
      [ネットワークと共有センター]→[ホームグループと共有に関するオプションを選択する]ボタン
  • その他、長時間接続されているデータが流れなくなった
    TCP/IP接続をフィルタする種類の動的フィルタリング設定もあるようです。
    この場合、大量バッチ処理のリクエストのレスポンスの戻りがフィルタされ、
    RSTパケットも飛ばない状態で、突然切断されたように見えます。

第六・七層(HTTPなど)

Webサーバ

  • ポート番号の指定
    「HTTP://FQDN名:ポート番号/xxx」でポート番号を指定します。
    既定値の80番ポート以外を使用するHTTPサービスは注意が必要です。
  • 認証が必要でないか?
  • 匿名アクセス
    • APサーバの匿名アカウントでの実行には、
      (匿名アカウントでの)偽装設定が必要になります。
  • 認証されたユーザアカウントでのアクセス(参考

プロキシ・サーバ

  • プロキシ設定
    • インターネット接続はプロキシ経由である必要はないか?
    • イントラネット接続はプロキシ経由が不要ではないか?
    • プロキシ認証は必要でないか?
  • プロキシ自動設定ファイル(proxy.pac)
    • proxy.pacで、FQDN名(IPアドレス)毎にプロキシの振り分けなどが可能です。
    • proxy.pacの作成方法についてはproxy.pacでグーグル検索してみて下さい。
  • IE設定等から自動的に設定を取り込む
    以下は古い形式で推奨されませんが、HttpWebRequest?の派生クラスは
    既定でIE設定等から自動的に設定を取り込むようです(.NET)。
    • GlobalProxySelection?.Select
    • WebProxy?.GetDefaultProxy?
  • 名前解決 プロキシ・サーバ上でインターネット上のDNSを使用して名前解決されます。
  • その他
    • プロキシ設定に対応していないアプリケーション
      全くお勧めでは無いですが以下の様なものもあるようです。
      蛭子屋そっくす [2004年1月22日版]
      http://yebisuya.dip.jp/Software/YebiSocks/
  • プロキシ認証に対応していないアプリケーション
    プロキシ自動設定ファイルに対応していないアプリケーション
    上記に対応する方法としては、(Proxomitronなどの)
    ローカル・プロキシと呼ばれるプロキシを使用する事で
    プロキシ認証・自動設定に対応させる事ができます。

WWWブラウザ設定

  • プロキシ・サーバ
    プロキシ・サーバの設定(上記)
  • ゾーン設定とセキュリティ・レベル
    IEではゾーン設定とセキュリティ・レベルの関係で
    (接続できないというより)動作しないことがあります。
  • ゾーンには以下のものがあります。
    ↓に行くほどセキュリティ制限が緩和されます。
    • 制限付きサイト
    • インターネット
    • イントラネット
    • 信頼済みサイト
  • 閲覧の履歴 - 設定 - インターネット一時ファイル
    デフォルトの「自動的に確認」では、
    ファジーな動作でキャッシュを参照しに行くことがあり、
    デバッグ中、不規則な動作に悩ませられることがある。

HTTPS関連

  • 自己署名の証明書では接続できないことがあります(WWWブラウザによる)。
  • 失効確認チェックがプロキシ・サーバ経由でインターネットに
    抜けられないことで、HTTPS接続ができないことがあります。

認証周り全般

こちらを参考にして下さい。

ケルベロス認証

ゾーンの設定

IEからケルベロス認証を行う場合、接続先サイトをイントラネット・ゾーン以下の
セキュリティ・レベルが適用されるように設定しないとケルベロス認証されません。

時間がズレている。

時間がズレているとケルベロス認証が必要となる
サービスへ繋がらなくなる事があるようです。

ケルベロス認証が利用されているが、ケルベロス認証では
サーバとクライアント間の時刻が一致している必要があるので、
そのために時刻同期が必須の機能となったからだ。

#止まっていたVMを起動した場合等に良くハマるようです。
RDP接続もできるし、pingも通るけどなんで!?と言う感じで・・・。

データベース接続

SQL Server

接続文字列

Windows ファイアウォール

  • 先ず、Windows ファイアウォールOFFで問題を切り分け、
  • Windows ファイアウォールOFFが問題の場合は、
    地道にWindows ファイアウォールの例外を追加する。
  • なお、通常、プロトコルは、
  • TCP 1433、UDP 1434のハズだが、
  • 任意 1433、任意 1434としないと、

通らないことがあった。

SQL Server 構成マネージャー

接続に必要なプロトコルを有効に設定する。
特にExpressでは既定で共有メモリ以外のプロトコルがOFFになっている。

  • SQL Server 構成マネージャー を起動する
    (SQL Server Configuration Manager) - BEACHSIDE BLOG
    http://beachside.hatenablog.com/entry/2016/08/04/150100

    SQL Server 構成マネージャーって、
    かなり前からですがメニューに表示されなくなりましたよね。
    ちょいちょい忘れるので、起動方法をメモしておこうと...。

セキュリティ設定

リモート・アクセスのセキュリティ設定もあるようです。

ODBC接続

ODBCのドライバ選択を間違うと接続できないことがあるようです。

  • SQL Server
  • SQL Server Native Client

2005の場合

特に2005では、

  • セキュリティ構成
  • Browserサービス有効

などが必要のようです。

SQL Server Express

こちら(↓)がまとまっています。

参考情報

Oracle

Oracle Client

Oracle Clientと互換性が無いケースが多いようです。

  • 接続先のOracleデーターベースのバージョン不整合
  • インストール先のOSとのバージョン不整合
    (不整合でもインストールできてしまうとのこと)
  • 例えば、OSがWindows7/Server2008R2の場合
    • 11g及び10.2.0.5のみをサポート(サーバ・クライアント両方)
    • 10gの他のバージョン(10.2.0.1~4)は動作保障していない

ODP.NET

UPから参照設定しているのOracle.DataAccess?.dllと、
ローカルにインストールしているOracle Clientに互換性が無いケースが多いです。

SI Object Browser

ORACLE_HOME が複数ある場合、ORACLE_HOMEの設定が必要になります。
ODP.NETのインストール後、ORACLE_HOMEが複数ある状態になるので注意が必要です。

32bit、64bit


Tags: :あるある, :障害対応, :デバッグ


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2020-10-12 (月) 19:50:38 (1285d)