IP_DISCARD_REASON 枚举 (fwpsk.h)

IP_DISCARD_REASON枚举定义了数据被某个网络层丢弃的可能原因。

语法

typedef enum {
  IpDiscardBadSourceAddress,
  IpDiscardNotLocallyDestined,
  IpDiscardProtocolUnreachable,
  IpDiscardPortUnreachable,
  IpDiscardBadLength,
  IpDiscardMalformedHeader,
  IpDiscardNoRoute,
  IpDiscardBeyondScope,
  IpDiscardInspectionDrop,
  IpDiscardTooManyDecapsulations,
  IpDiscardAdministrativelyProhibited,
  IpDiscardBadChecksum,
  IpDiscardFirstFragmentIncomplete,
  IpDiscardHeaderNotContiguous,
  IpDiscardHeaderNotAligned,
  IpDiscardReceivePathMax,
  IpDiscardHopLimitExceeded,
  IpDiscardAddressUnreachable,
  IpDiscardRscPacket,
  IpDiscardSourceViolation,
  IpDiscardForwardPathMax,
  IpDiscardArbitrationUnhandled,
  IpDiscardInspectionAbsorb,
  IpDiscardDontFragmentMtuExceeded,
  IpDiscardBufferLengthExceeded,
  IpDiscardAddressResolutionTimeout,
  IpDiscardAddressResolutionFailure,
  IpDiscardIpsecFailure,
  IpDiscardExtensionHeadersFailure,
  IpDiscardAllocationFailure,
  IpDiscardIpsnpiClientDrop,
  IpDiscardUnsupportedOffload,
  IpDiscardRoutingFailure,
  IpDiscardAncillaryDataFailure,
  IpDiscardRawDataFailure,
  IpDiscardSessionStateFailure,
  IpDiscardIpsnpiAllocationFailure,
  IpDiscardIpsnpiModifiedButNotForwarded,
  IpDiscardIpsnpiNoNextHop,
  IpDiscardIpsnpiNoCompartment,
  IpDiscardIpsnpiNoInterface,
  IpDiscardIpsnpiNoSubInterface,
  IpDiscardIpsnpiInterfaceDisabled,
  IpDiscardIpsnpiSegmentationFailed,
  IpDiscardIpsnpiNoEthernetHeader,
  IpDiscardIpsnpiUnexpectedFragment,
  IpDiscardIpsnpiUnsupportedInterfaceType,
  IpDiscardIpsnpiInvalidLsoInfo,
  IpDiscardIpsnpiInvalidUsoInfo,
  IpDiscardInternalError,
  IpDiscardAdministrativelyConfigured,
  IpDiscardBadOption,
  IpDiscardLoopbackDisallowed,
  IpDiscardSmallerScope,
  IpDiscardQueueFull,
  IpDiscardInterfaceDisabled,
  IpDiscardNlClientDiscard,
  IpDiscardIpsnpiUroSegmentSizeExceedsMtu,
  IpDiscardSwUsoFailure,
  IpDiscardMax
} IP_DISCARD_REASON, *PIP_DISCARD_REASON;

常量

 
IpDiscardBadSourceAddress
传出数据包的源地址是多播地址、广播地址或包含嵌入式 IPv4 环回或未指定地址的 IPv6 地址。
IpDiscardNotLocallyDestined
接收的数据包的目标地址在系统上不存在,并且不存在适当的转发接口。
IpDiscardProtocolUnreachable
接收的数据包没有传输协议处理程序,或者传输协议处理程序拒绝处理数据包。
IpDiscardPortUnreachable
没有应用程序在接收的数据包的目标端口上接收数据包。
IpDiscardBadLength
在收到的数据包中指定的 length 字段与数据包的长度不一致。
IpDiscardMalformedHeader
接收的数据包包含已识别的扩展标头或选项,其内容无效。
IpDiscardNoRoute
无法将接收的数据包转发到其目标地址,因为系统的路由表不包含到该目标的路由。
IpDiscardBeyondScope
无法转发收到的数据包,因为数据包的传入和传出网络接口针对数据包的区域级别具有不同的区域索引。
IpDiscardInspectionDrop
由于安全检查失败或协议符合性问题,在检查期间丢弃了数据包。
IpDiscardTooManyDecapsulations
无法将接收的数据包转发到其目标地址,因为解封太多。
IpDiscardAdministrativelyProhibited
由于管理策略禁止其传输或接收,数据包被丢弃。
IpDiscardBadChecksum
数据包被丢弃,因为其校验和不正确,表明可能存在数据损坏。
IpDiscardFirstFragmentIncomplete
数据包的第一个片段不完整,导致放弃整个数据包。
IpDiscardHeaderNotContiguous
数据包的标头在内存中不是连续的,导致它被丢弃。
IpDiscardHeaderNotAligned
数据包标头未正确对齐,导致由于格式问题而放弃。
IpDiscardReceivePathMax
数据包已丢弃,因为它超出了接收路径上允许的最大长度。
IpDiscardHopLimitExceeded
已超出接收数据包的跃点限制或生存时间限制。
IpDiscardAddressUnreachable
无法将传出数据包发送到数据包的目标地址,因为目标不存在,或者不允许将数据包发送到该目标。
IpDiscardRscPacket
无法发送传出数据包,因为它是接收端合并 (RSC) 数据包。
IpDiscardSourceViolation
数据包被丢弃,因为它违反了源地址验证检查。
IpDiscardForwardPathMax
数据包超出了转发的最大路径长度,被丢弃。
IpDiscardArbitrationUnhandled
数据包被丢弃,因为它需要仲裁,但未处理。
IpDiscardInspectionAbsorb
无法发送传出数据包,因为 WFP 拥有数据包的所有权。
IpDiscardDontFragmentMtuExceeded
数据包被丢弃,因为它超出了 MTU 大小,并且设置了“请勿片段”位。
IpDiscardBufferLengthExceeded
数据包被丢弃,因为它超出了缓冲区长度限制。
IpDiscardAddressResolutionTimeout
由于地址解析超时,数据包被丢弃。
IpDiscardAddressResolutionFailure
由于地址解析失败,数据包被丢弃。
IpDiscardIpsecFailure
由于 IPsec 处理失败,数据包被丢弃。
IpDiscardExtensionHeadersFailure
由于与处理 IPv6 扩展标头相关的故障,数据包被丢弃。
IpDiscardAllocationFailure
由于分配必要资源失败,数据包被丢弃。
IpDiscardIpsnpiClientDrop
由于未指定的原因,数据包被 IPSNPI 客户端丢弃。
IpDiscardUnsupportedOffload
数据包被丢弃,因为它需要不受支持的卸载操作。
IpDiscardRoutingFailure
由于路由失败,数据包被丢弃。
IpDiscardAncillaryDataFailure
由于与辅助数据处理相关的故障,数据包被丢弃。
IpDiscardRawDataFailure
由于处理原始数据失败,数据包被丢弃。
IpDiscardSessionStateFailure
由于与会话状态管理相关的故障,数据包被丢弃。
IpDiscardIpsnpiAllocationFailure
由于 IPSNPI 子系统中的分配失败,数据包被丢弃。
IpDiscardIpsnpiModifiedButNotForwarded
数据包已由 IPSNPI 修改,但未转发,导致丢弃。
IpDiscardIpsnpiNoNextHop
数据包被丢弃,因为 IPSNPI 子系统中无法确定下一跃点。
IpDiscardIpsnpiNoCompartment
由于 IPSNPI 子系统中缺少一个隔离舱,数据包被丢弃。
IpDiscardIpsnpiNoInterface
数据包被丢弃,因为在 IPSNPI 子系统中找不到接口。
IpDiscardIpsnpiNoSubInterface
由于 IPSNPI 子系统中缺少子接口,数据包被丢弃。
IpDiscardIpsnpiInterfaceDisabled
数据包被丢弃,因为 IPSNPI 子系统中的接口已禁用。
IpDiscardIpsnpiSegmentationFailed
由于 IPSNPI 子系统中的分段失败,数据包被丢弃。
IpDiscardIpsnpiNoEthernetHeader
数据包被丢弃,因为它在 IPSNPI 子系统中缺少以太网标头。
IpDiscardIpsnpiUnexpectedFragment
数据包被丢弃,因为它是 IPSNPI 子系统中的意外片段。
IpDiscardIpsnpiUnsupportedInterfaceType
由于 IPSNPI 子系统中的接口类型不受支持,数据包被丢弃。
IpDiscardIpsnpiInvalidLsoInfo
由于 IPSNPI 子系统中的信息 (LSO) 信息无效,因此丢弃了数据包。
IpDiscardIpsnpiInvalidUsoInfo
由于 IPSNPI 子系统中的 USO) 信息 (UDP 分段卸载无效,数据包被丢弃。
IpDiscardInternalError
由于系统内部错误,数据包被丢弃。
IpDiscardAdministrativelyConfigured
由于管理配置阻止了数据包的处理,数据包被丢弃。
IpDiscardBadOption
数据包被丢弃,因为它包含错误选项或无法处理的选项。
IpDiscardLoopbackDisallowed
数据包被丢弃,因为其类型或目标不允许环回。
IpDiscardSmallerScope
数据包被丢弃,因为它的范围小于成功传递所需的范围。
IpDiscardQueueFull
数据包被丢弃,因为处理队列已满。
IpDiscardInterfaceDisabled
数据包被丢弃,因为它到达的接口被禁用。
IpDiscardNlClientDiscard
由于未指定的原因,Netlink 客户端丢弃了数据包。
IpDiscardIpsnpiUroSegmentSizeExceedsMtu
数据包被丢弃,因为 UDP RSC 卸载 (URO) 的段大小超过了 IPSNPI 子系统中的 MTU。
IpDiscardSwUsoFailure
由于 UDP 分段卸载 (USO) 失败,数据包被丢弃。
IpDiscardMax
枚举的最大值。

要求

要求
最低受支持的客户端 Windows 11,版本 24H2
标头 fwpsk.h