Прочитать на английском

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


Флаги маршрута

Состояние констант маршрута

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

 

Флаги обновления маршрутов

Константа Значение Описание
RTM_ROUTE_CHANGE_FIRST 0x01 Указывает, что диспетчер таблиц маршрутизации не должен проверка элемент "Сосед"структуры RTM_ROUTE_INFO при определении равенства двух маршрутов.
RTM_ROUTE_CHANGE_NEW 0x02 Возвращается диспетчером таблиц маршрутизации, чтобы указать, что был создан новый маршрут.
RTM_ROUTE_CHANGE_BEST 0x00010000 Возвращается диспетчером таблиц маршрутизации, чтобы указать, что добавленный или обновленный маршрут является лучшим маршрутом или что из-за изменения новый маршрут стал лучшим маршрутом.

 

Флаги одноадресной рассылки

Константа Значение Описание
RTM_ROUTE_FLAGS_LOCAL 0x0010 Указывает, что место назначения находится в сети, доступной напрямую.
RTM_ROUTE_FLAGS_REMOTE 0x0020 Указывает, что место назначения не находится в сети, доступной напрямую.
RTM_ROUTE_FLAGS_MYSELF 0x0040 Указывает, что назначение является одним из адресов маршрутизатора.

 

Флаги широковещательной и многоадресной рассылки

Константа Значение Описание
RTM_ROUTE_FLAGS_MCAST 0x0100 Указывает, что этот маршрут является маршрутом на адрес многоадресной рассылки.
RTM_ROUTE_FLAGS_LOCAL_MCAST 0x0200 Указывает, что этот маршрут является маршрутом к локальному адресу многоадресной рассылки.
RTM_ROUTE_FLAGS_LIMITED_BC 0x0400 Указывает, что этот маршрут является ограниченным широковещательным адресом. Пакеты в это место назначения не должны пересылаться.
RTM_ROUTE_FLAGS_ZEROS_NETBC 0x1000 Указывает, что назначение соответствует широковещательным адресам интерфейса со всеми нулями. Если широковещательная пересылка включена, необходимо получить пакеты и повторно отправить все соответствующие интерфейсы.
RTM_ROUTE_FLAGS_ZEROS_SUBNETBC 0x2000 Указывает, что назначение соответствует адресу широковещательной трансляции подсети интерфейса со всеми нулями. Если включена широковещательная пересылка подсети, следует получать пакеты и повторно передавать все соответствующие интерфейсы.
RTM_ROUTE_FLAGS_ONES_NETBC 0x4000 Указывает, что назначение соответствует всем широковещательным адресам интерфейса. Если широковещательная пересылка включена, необходимо получить пакеты и повторно отправить все соответствующие интерфейсы.
RTM_ROUTE_FLAGS_ONES_SUBNETBC 0x8000 Указывает, что назначение соответствует всем широковещательным адресам подсети интерфейса. Если включена широковещательная пересылка подсети, следует получать пакеты и повторно передавать все соответствующие интерфейсы.

 

Группирование флагов

Группа Элементы Описание
RTM_ROUTE_FLAGS_FORWARDING RTM_ROUTE_FLAGS_MARTIAN, RTM_ROUTE_FLAGS_BLACKHOLE, RTM_ROUTE_FLAGS_DISCARD, RTM_ROUTE_FLAGS_INACTIVE Указывает все флаги пересылки.
RTM_ROUTE_FLAGS_ANY_UNICAST RTM_ROUTE_FLAGS_LOCAL, RTM_ROUTE_FLAGS_REMOTE, RTM_ROUTE_FLAGS_MYSELF Указывает все флаги одноадресной рассылки.
RTM_ROUTE_FLAGS_ANY_MCAST RTM_ROUTE_FLAGS_MCAST, RTM_ROUTE_FLAGS_LOCAL_MCAST Указывает все флаги одноадресной рассылки.
RTM_ROUTE_FLAGS_SUBNET_BCAST RTM_ROUTE_FLAGS_ONES_SUBNET_BC, RTM_ROUTE_FLAGS_ZEROS_SUBNETBC Указывает все флаги широковещательной подсети.
RTM_ROUTE_FLAGS_NET_BCAST RTM_ROUTE_FLAGS_ONES_NETBC, RTM_ROUTE_FLAGS_ZEROS_NETBC Указывает все флаги широковещательного вещания на уровне сети.
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 Указывает любой из флагов подсети или широковещательных сетей.