2011-08-18 4 views
4

Есть ли Windows или cygwin C/C++ API для сбора информации, предоставленной командой маршрута в Windows? Меня особенно интересуют показатели маршрута. Вот пример того, какие выходные маршруты, IP-адреса были изменены для защиты невинных.Есть ли API-интерфейс C/C++ для информации о маршруте в Windows?

$ route PRINT -4 
=========================================================================== 
Interface List 
11...64 31 50 3b ba 96 ......Broadcom NetXtreme Gigabit Ethernet 
17...00 50 56 c0 00 01 ......VMware Virtual Ethernet Adapter for VMnet1 
18...00 50 56 c0 00 08 ......VMware Virtual Ethernet Adapter for VMnet8 
    1...........................Software Loopback Interface 1 
12...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter 
10...00 00 00 00 00 00 00 e0 Microsoft Teredo Tunneling Adapter 
13...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #2 
14...00 00 00 00 00 00 00 e0 Microsoft 6to4 Adapter 
15...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #3 
=========================================================================== 

IPv4 Route Table 
=========================================================================== 
Active Routes: 
Network Destination  Netmask   Gateway  Interface Metric 
      0.0.0.0   0.0.0.0  99.10.168.1  99.10.170.11  10 
     99.10.168.0 255.255.248.0   On-link  99.10.170.11 266 
    99.10.170.11 255.255.255.255   On-link  99.10.170.11 266 
    99.10.175.255 255.255.255.255   On-link  99.10.170.11 266 
     127.0.0.0  255.0.0.0   On-link   127.0.0.1 306 
     127.0.0.1 255.255.255.255   On-link   127.0.0.1 306 
    127.255.255.255 255.255.255.255   On-link   127.0.0.1 306 

ответ

8

Вы должны использовать GetIpForwardTable, поскольку API-интерфейс диспетчера маршрутизации работает только для серверных выпусков Windows.

3

Вы хотите Routing Table Manager API.

+0

Спасибо, Джо! Мы не можем интегрировать это в программу cygwin. – mfisch

+2

«Протоколы маршрутизации - это серверная технология. Все функциональные возможности протоколов маршрутизации включены в Windows Server 2008, Windows Server 2003 и Windows 2000 Server. Приложения для маршрутизации не могут выполняться в клиентских операционных системах, таких как Windows XP или Windows Vista. более конкретная информация о том, какие операционные системы поддерживают определенную функцию, см. в разделах «Требования» в документации ». Итак, как я могу перечислить таблицу маршрутизации на клиентской ОС? – Joakim