2009-09-04 6 views
2

.NETを使用して特定のネットワークインターフェイスを無効にするか、(システム全体からの)既存のTCP接続をすべて破棄してさらに作成を禁止することができますか?NICを無効にするか、すべてのTCP接続をブロックする

システムを監視し、全体の速度がしきい値を下回った場合に一定の時間ネットワーク(または少なくともTCP接続)をブロックする小さなC#ユーティリティを作成したいので、これを頼んでいます。 それから一定の時間が経過した後に接続を復元したいと思います。

.NET内からのNICスループットの監視がわかりやすいからです。 しかし、NICまたはTCP接続全体をブロックすることが可能かどうかはわかりません。

おそらくP/InvokeとWMIを使用していますか?

答えて

1

私はこれを見つけました:How to kill any network connection。ネットワーク接続を切断するために、男が書いたクラス全体があります。それはIP Helper(MSDNリンク)APIからのコードでこれらの2つの輸入品を中心に展開:

[DllImport("iphlpapi.dll")] 
public static extern int GetTcpTable(...); 

[DllImport("iphlpapi.dll")] 
public static extern int SetTcpEntry(...); 

を見てください、それは正しい方向にあなたの問題か、少なくともポイントあなたを解決する必要がありますどちらか。

+0

ありがとう、私は直接WIN32 APIを使用して私が望むことを達成するために行く方法だと思います。 私は以前にそれをやったことはありませんが、それほど難しくはありません。 幸い、MSDNには良いリファレンスがあります。 – RobSullivan

関連する問題