Поделиться через


структура RTM_ROUTE_INFO (rtmv2.h)

Структура RTM_ROUTE_INFO используется для обмена сведениями о маршрутах с диспетчером таблиц маршрутизации. Не изменяйте сведения, доступные только для чтения.

Синтаксис

typedef struct _RTM_ROUTE_INFO {
  RTM_DEST_HANDLE    DestHandle;
  RTM_ENTITY_HANDLE  RouteOwner;
  RTM_NEXTHOP_HANDLE Neighbour;
  UCHAR              State;
  UCHAR              Flags1;
  USHORT             Flags;
  RTM_PREF_INFO      PrefInfo;
  RTM_VIEW_SET       BelongsToViews;
  PVOID              EntitySpecificInfo;
  RTM_NEXTHOP_LIST   NextHopsList;
} RTM_ROUTE_INFO, *PRTM_ROUTE_INFO;

Члены

DestHandle

Дескриптор назначения, которому принадлежит маршрут.

RouteOwner

Дескриптор для клиента, которому принадлежит этот маршрут.

Neighbour

Дескриптор к соседу, который сообщил диспетчеру таблиц маршрутизации об этом маршруте. Этот элемент имеет значение NULL для протокола состояния связи.

State

Помечает , указывая состояние этого маршрута. Используются следующие флаги.

Константа Значение
RTM_ROUTE_STATE_CREATED
Маршрут создан.
RTM_ROUTE_STATE_DELETING
Маршрут удаляется.
RTM_ROUTE_STATE_DELETED
Маршрут удален.

Flags1

Флаги, используемые для совместимости с RTMv1.

Flags

Флаги, используемые для указания сведений о маршруте. Используются следующие флаги.

Константа Значение
RTM_ROUTE_FLAGS_ANY_BCAST
Маршрут имеет один из следующих типов широковещательных трансляций: RTM_ROUTE_FLAGS_LIMITED_BC, RTM_ROUTE_FLAGS_ONES_NETBC, RTM_ROUTE_FLAGS_ONES_SUBNET_BC, RTM_ROUTE_FLAGS_ZEROS_NETBC, RTM_ROUTE_FLAGS_ZEROS_SUBNETBC
RTM_ROUTE_FLAGS_ANY_MCAST
Маршрут имеет один из следующих типов многоадресной рассылки: RTM_ROUTE_FLAGS_MCAST, RTM_ROUTE_FLAGS_LOCAL_MCAST
RTM_ROUTE_FLAGS_ANY_UNICAST
Маршрут имеет один из следующих типов одноадресной рассылки: RTM_ROUTE_FLAGS_LOCAL, RTM_ROUTE_FLAGS_REMOTE RTM_ROUTE_FLAGS_MYSELF
RTM_ROUTE_FLAGS_LIMITED_BC
Указывает, что этот маршрут является ограниченным широковещательным адресом. Пакеты в это место назначения не должны пересылаться.
RTM_ROUTE_FLAGS_LOCAL
Указывает, что место назначения находится в сети, доступной напрямую.
RTM_ROUTE_FLAGS_LOCAL_MCAST
Указывает, что этот маршрут является маршрутом к локальному адресу многоадресной рассылки.
RTM_ROUTE_FLAGS_MCAST
Указывает, что этот маршрут является маршрутом на адрес многоадресной рассылки.
RTM_ROUTE_FLAGS_MYSELF
Указывает, что назначение является одним из адресов маршрутизатора.
RTM_ROUTE_FLAGS_NET_BCAST
Группирование флагов, содержащее: RTM_ROUTE_FLAGS_ONES_NETBC, RTM_ROUTE_FLAGS_ZEROS_NETBC
RTM_ROUTE_FLAGS_ONES_NETBC
Указывает, что назначение соответствует всем широковещательным адресам интерфейса. Если широковещательная пересылка включена, необходимо получить пакеты и повторно отправить все соответствующие интерфейсы.
RTM_ROUTE_FLAGS_ONES_SUBNETBC
Указывает, что назначение соответствует всем широковещательным адресам подсети интерфейса. Если включена широковещательная пересылка подсети, следует получать пакеты и повторно передавать все соответствующие интерфейсы.
RTM_ROUTE_FLAGS_REMOTE
Указывает, что место назначения не находится в сети, доступной напрямую.
RTM_ROUTE_FLAGS_ZEROS_SUBNETBC
Указывает, что назначение соответствует адресу широковещательной трансляции подсети интерфейса со всеми нулями . Если включена широковещательная пересылка подсети, следует получать пакеты и повторно передавать все соответствующие интерфейсы.
RTM_ROUTE_FLAGS_ZEROS_NETBC
Указывает, что назначение соответствует широковещательным адресам интерфейса со всеми нулями. Если широковещательная пересылка включена, необходимо получить пакеты и повторно отправить все соответствующие интерфейсы.

PrefInfo

Указывает предпочтительный параметр и сведения о метриках для этого маршрута.

BelongsToViews

Указывает представления, в которые включен этот маршрут.

EntitySpecificInfo

Содержит сведения о клиенте, которому принадлежит этот маршрут.

NextHopsList

Указывает список следующих прыжков с равной стоимостью.

Требования

Требование Значение
Минимальная версия клиента Ни одна версия не поддерживается
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Верхняя часть rtmv2.h

См. также раздел

RTM_NEXTHOP_LIST

RTM_PREF_INFO

RtmAddRouteToDest

RtmCreateRouteEnum

RtmGetExactMatchRoute

RtmGetRouteInfo

RtmGetRoutePointer

RtmLockRoute

RtmReleaseRouteInfo