Icmp мониторинг с использованием Visual C # .net - PullRequest
0 голосов
/ 01 декабря 2011

Я хочу написать приложение, которое контролирует некоторые из моих удаленных веток. Я хочу контролировать 2 вещи

1) icmp drop (если я отправлю 10 пингов, а 2 или более будут сброшены, тогда оповещение) 2) если задержка пинга превышает 20 мс, тогда оповещение.

Я только что определил грубые пороги. Может ли это быть сделано в Visual C #, в основном я изучаю C #, а также делаю вещи для своего офиса, так что мое обучение в правильном направлении. Если вы, ребята, можете указать мне правильное направление, я буду благодарен. Я видел класс ping в .net (в Google я имею в виду), но я думаю, что он говорит только о том, работает ли IP или нет.

Пожалуйста, ведите меня

Ответы [ 2 ]

0 голосов
/ 01 декабря 2011

Вы можете попробовать код в этом проекте. http://www.codeproject.com/KB/dotnet/CSharpPing.aspx

0 голосов
/ 01 декабря 2011

Это довольно легко сделать.

Сначала вам нужен драйвер winpcap http://www.winpcap.org/, который у вас уже может быть, если у вас установлено что-то вроде wireshark.

Один разу вас есть драйвер winpcap, который вам либо нужен, чтобы SharpPcap библиотека .NET взаимодействовала с WinPcap:

http://www.tamirgal.com/blog/page/SharpPcap.aspx

, либо вы можете обернуть его самостоятельно, используя P / Invoke и другие неуправляемые вкусности ...

http://dranaxum.wordpress.com/2010/11/20/using-winpcap-in-c/
http://geekswithblogs.net/dotnetnomad/archive/2008/01/31/119140.aspx
...