WFP 驱动程序提供 0.0.0.0 作为连接的本地 IP 地址

WFP driver giving 0.0.0.0 as local ip address for connection

我正在为执行连接重定向的 WFP 驱动程序实施标注例程。我已经在FWPS_LAYER_ALE_CONNECT_REDIRECT_V4层注册了。一切正常。 当我尝试获取连接的本地 IP 地址时,我总是将其设为 0。这是预期的吗?我正在将连接重定向到本地服务。

local_ip = RtlUlongByteSwap(inFixedValues->incomingValue
              [FWPS_FIELD_ALE_CONNECT_REDIRECT_V4_IP_LOCAL_ADDRESS]) 

IN const FWPS_INCOMING_VALUES *inFixedValues 作为标注例程的参数接收。

用户sid也是如此。它总是像 s-1-0-0 这样基本上是无效的 sid

我正在获取用户的 sid blob 作为

inFixedValues->incomingValue[FWPS_FIELD_ALE_CONNECT_REDIRECT_V6_ALE_PACKAGE_ID].value.sid

需要帮助来理解这是预期的行为还是我在这里遗漏的东西!

感谢

据我所知,这不是记录在案的行为,但我已经看到此标注为 UDP 连接调用了两次:第一次是本地地址和端口的零值,第二次是实际的值。据报道 here and here。我通过检查零值的地址和端口字段并在这种情况下忽略标注来解决它。