SQL Serverがネットワーク上のシステムにインストールされているかどうかを確認するにはどうすればよいですか?IPアドレスを使用して、SQL Serverがネットワーク上のシステムにインストールされているかどうかを確認する方法はありますか。
私はIPアドレスを使用してそれを見つける必要があります。これは可能ですか? C#のコードでそれを達成するための方法
?一般的なSQL Serverで
SQL Serverがネットワーク上のシステムにインストールされているかどうかを確認するにはどうすればよいですか?IPアドレスを使用して、SQL Serverがネットワーク上のシステムにインストールされているかどうかを確認する方法はありますか。
私はIPアドレスを使用してそれを見つける必要があります。これは可能ですか? C#のコードでそれを達成するための方法
?一般的なSQL Serverで
は、ポート1433でリッスン:
http://support.microsoft.com/kb/287932
あなたは、このポートが開いていることを発見した場合ので、良い機会(ただし、特定の)があるSQL Serverがそのマシンにインストールされていることと、アクセス可能です。
あなたは、このポートがそれにソケットを開くことによって、開いていることを確認することができます。詳細については:Socketクラス(http://msdn.microsoft.com/en-us/library/system.net.sockets.socket.aspx DOC)を参照してください。
しかし、それは、このポートを介してアクセスすることはできません他の多くのモードでSQL Serverをインストールすることも可能です。また、このポートを他のプログラムからオープン(応答)することも可能です。
インターネット経由でアクセスできるサーバーをセキュリティで保護するためのベストプラクティスでは、SQL Serverが非標準ポートにあり、WMIへのアクセスがなく、(理想的には)サーバーがロックされてポートを開くだけです既知のホワイトリストに載っているクライアントのTCP/IPアドレスに割り当てます。だから一般的には:このスキャンを行う方法はありません常に仕事。 (ただ、だけでなく、あなたが考えてみれば...)
あなたは、WMIを使用することを試みることができます。ここで
は、SQL ServerがWMIを使用してインストールされているかどうかを検出する方法は次のとおりです。FAQ: Detecting SQL Server 2005 using WMI(2005年の作品、他のバージョンのために適応するのは簡単でなければなりません)。
は、WMIを使用してリモートコンピュータに接続するには、 thisをお読みください。WMIをインストールする必要があります。もちろん、アクセスなど
あなたは、サーバー上のWMIコードを実行する権限を持っていますか?レジストリを読むためのリモート権限がありますか? – gbn