powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Traceroute на C#. Вопрос по сетевым интерфейсам!
2 сообщений из 2, страница 1 из 1
Traceroute на C#. Вопрос по сетевым интерфейсам!
    #37220703
dpsNomak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем здрасте!
Есть код (аналог тарсерта под win) :
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
 public string Traceroute(string ipAddressOrHostName)
        {
            IPAddress ipAddress = Dns.GetHostEntry(ipAddressOrHostName).AddressList[0];
            StringBuilder traceResults = new StringBuilder();
            using (Ping pingSender = new Ping())
            {
                PingOptions pingOptions = new PingOptions();
                Stopwatch stopWatch = new Stopwatch();
                byte[] bytes = new byte[32];
                pingOptions.DontFragment = true;
                pingOptions.Ttl = 1;
                int maxHops = 30;
                traceResults.AppendLine(string.Format("Tracing route to {0} over a maximum of {1} hops:", ipAddress, maxHops));

                traceResults.AppendLine();
                for (int i = 1; i < maxHops + 1; i++)
                {
                    stopWatch.Reset();
                    stopWatch.Start();
                    PingReply pingReply = pingSender.Send( ipAddress, 5000, new byte[32], pingOptions);
                    stopWatch.Stop();
                    traceResults.AppendLine(string.Format("{0}\t{1} ms\t{2}", i, stopWatch.ElapsedMilliseconds, pingReply.Address));

                    if (pingReply.Status == IPStatus.Success)
                    {
                        traceResults.AppendLine();
                        traceResults.AppendLine("Trace complete."); 
                        break;
                    }
                    pingOptions.Ttl++;
                }
            }
            return traceResults.ToString();
        }

Вопрос в следующем. Как можно задать сетевой интерфейс(или айпи интерфейса) с какого будет проводиться прокладывание трассы до заданного узла.
Тоесть, предположим у меня 2 сетевые с 2-я провайдерами. И мне нужно проводить трасерт по каждому из них (на выбор). Спасибо!
...
Рейтинг: 0 / 0
Traceroute на C#. Вопрос по сетевым интерфейсам!
    #37220707
Фотография Гордый Корень
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не исключено, что никак.

если только лезть поглубже в системные настройки... хотя дотнет програме не к чему знать через какой интерфейс идет сеть... да и вообще сетевые настройки в большинстве тож ни к чему =)
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Traceroute на C#. Вопрос по сетевым интерфейсам!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]