「マイクロソフト系技術情報 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アドレス
へのフラッディングが必要になるケースがあります。
第三層(IP) †
ネットワーク接続のプロパティ †
通信を行う双方のホストの
「ネットワーク接続のプロパティ」
に正しい設定がされている必要があります。
- インターネット・プロトコル(TCP/IP)
- 基本設定
- IPアドレス
- サブネットマスク、
- デフォルト・ゲートウェイ
- 名前解決
- DNS設定(FQDN名をIP名に変更)
- WINS設定(NetBIOS名をIP名に変更)
- DHCPから情報を取得する設定の場合
DHCPから配信される情報の設定は不要になる。
- FQDN名→IPアドレスの名前解決
hostsファイル、DNSサービスにより名前解決されます。
- NetBIOS名→IPアドレスの名前解決
lmhostsファイル、Browserサービス、WINSサービスにより名前解決されます。
- ワーク・グループ環境
- 同一サブネット内であれば、
ブロードキャスト要求をBrowserサービスで名前解決します。
- サブネットを跨ぐ場合は、WINSサービスの導入を検討します。
- Active Directory環境
同一ドメイン内であれば名前解決可能です。
IPのルーティング †
ping、tracert、pathpingなどを使用して調査する。
必要に応じてルータのルーティング・テーブルの確認が必要になります。
通信の状態を確認する。 †
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を使用して名前解決されます。
- プロキシ認証に対応していないアプリケーション
プロキシ自動設定ファイルに対応していないアプリケーション
上記に対応する方法としては、(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になっている。
セキュリティ設定 †
リモート・アクセスのセキュリティ設定もあるようです。
ODBC接続 †
ODBCのドライバ選択を間違うと接続できないことがあるようです。
- SQL Server
- SQL Server Native Client
2005の場合 †
特に2005では、
などが必要のようです。
SQL Server Express †
こちら(↓)がまとまっています。
参考情報 †
- Microsoft SQL Server Japan Support Team Blog - Site Home - MSDN Blogs
- Troubleshooting Connectivity
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: :あるある, :障害対応, :デバッグ