2015年11月20日金曜日

WindowsでTelnetを使わずにポート番号を指定して接続確認を実施する方法

最近のWindowsではTelnetクライアントは標準ではインストールされなくなった。普段はTelnetを使う用途はないので問題にはならないが、クライアントからサーバへ特定のポートで接続できるか確認する際に困ることがある。

Windowsでできる別の方法

というわけで、今まではいちいちTelnetクライアントを追加インストールしていたが、意外なコマンドで手軽に実施する方法があった。FTPコマンドを使うのだ。

使い方は以下の通り。

   ftp
   open <HOST名 or IPアドレス> <ポート番号>
   
    →接続OK:「www.google.com に接続しました。」が表示
    →接続NG:何も表示されない

実行例を示す。www.google.comに対して、80番ポートで接続可能か確認しており、接続OKのパターンとなる。なお、接続してからプロンプトが戻るまでは時間を要するが、「Ctrl+C」にて接続を閉じることができる。

   C:\>ftp
   ftp> open www.google.com 80
   www.google.com に接続しました。
   接続がリモート ホストによって閉じられました。
   ftp>

以下は接続NGのパターン。何も表示されずしばらく経過したのち、タイムアウトの出力がされる。タイムアウトまでは「Ctrl+C」などを押してもキャンセルできないため、待たねばならなくなる。Windows 10のPCで時間測定したところ、105秒(1分45秒)でタイムアウトするようだ(ただし、タイミングによっては21秒となる場合があり、法則がよくわからなかった)。

C:\>ftp
   ftp> open www.google.com 81
   > ftp: connect :接続がタイムアウトしました
   ftp>

2015年11月15日日曜日

Windows Updateが「現在サービスが実行されていない」というエラーが発生して実行できなくなった件

エラー事象について

ある日Windows 7 SP1のPCのコントロールパネルからWindows Updateを確認すると×印が表示されていた。


さらに、「更新プログラムの確認」ボタンを押すと以下エラーのポップアップが表示された。


<エラーメッセージ>
"現在サービスが実行されていないため、Windows Update で更新プログラムを確認できません。このコンピューターの再起動が必要な可能性があります。"

しかし、サービスを確認するとWindows Updateはしっかり起動している。ということで、微妙に試行錯誤したので解決までの顛末を記載する。

マイクロソフトのKBのFix itを試す

このメッセージで調べると以下KBがヒットした。

"Windows Update で更新プログラムを確認できません" エラー メッセージが更新プログラムをインストールしようとすると表示される
https://support.microsoft.com/ja-jp/kb/2730071

Fix itが用意されていたのでダウンロードして実行してみた。なにやら問題が見つかって解決済みと表示されたので、問題は修復されたのかと期待したが、結果的にエラーは解消されなかった。


別の技術情報の回避策を試す

原因不明で困っていると、「Windows Update サポート チーム (日本)」のブログに情報を見つけることができた。

[C8000247] 「現在サービスが実行されていないため ~」 のエラーについて
http://blogs.technet.com/b/wuj/archive/2013/07/26/c8000247.aspx

この中に以下記載がある。
多くの場合、この状態は HDD を交換したコンピューターで発生しています。これは Windows Update 自体に直接的な原因があるわけではなく、HDD の適切なドライバーが適用できていないことが要因です。

要因となっているのは  Advanced Format Disk と呼ばれる新しい HDD のフォーマットです。このフォーマットに対応した HDD を使っている場合、適切なドライバーが適用されていないと一部のデータに正常にアクセスできないことがあります。この場合、適切なドライバーを入手してインストールしてください
Windows UpdateにHDDのドライバーが関係するとはなかなか思いつかず、この情報は目から鱗でった。そして、このPCは先日SSDに換装したばかりだったので、このブログに記載の以下回避手順を試してみることにした。
多くの場合 Intel Rapid Storage Technology をインストールすることでも回避できるようです。このあたりはご利用環境にもよるので参考としてご認識ください。

https://downloadcenter.intel.com/Detail_Desc.aspx?agr=Y&ProdId=3409&DwnldID=22036&lang=jpn
- ファイル名: iata_cd.exe
- バージョン: 11.6.0.1030
- 言語: マルチ・ランゲージ
該当のドライバをインストールして、正常にドライバがインストールされた。再起動してWindows Updateを実施すると、エラーは解消されていた。


まとめ

結局、問題はHDDのドライバー問題で、「Advanced Format Disk 」という比較的新しいディスクフォーマットに対応したドライバーが必要だったということだった。後で調べて見つけた以下KBにも詳しく記載がされていた。

Windows 7 および Windows Server 2008 R2 と Advanced Format Disk の互換性を向上させる更新プログラムを入手できます
https://support.microsoft.com/ja-jp/kb/982018