如何实现NAT使用WFP? [英] How to implement NAT use WFP?

查看:232
本文介绍了如何实现NAT使用WFP?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,所有

我在Win7上开发NAT,从论坛上,我可以使用WFP框架。

I development NAT on Win7, and from the forum, I can use WFP framwork.

使用  FWPM_LAYER_IPFORWARD_V4将内网数据包转发到互联网

use FWPM_LAYER_IPFORWARD_V4 to forward intranet packets to internet

使用  FWPM_LAYER_INBOUND_IPPACKET_V4将互联网数据包转发到内联网

use FWPM_LAYER_INBOUND_IPPACKET_V4 to forward internet packets to intranet

我引用了WFPSamples,但我遇到了一些问题:

I reference the WFPSamples, but I met some issues:

我无法在IPFORWARD层收到数据包?

I cannot receive the packet in IPFORWARD layer?

我们的测试环境:

一个用于连接互联网的无线卡,另一个用于AP(网关)的无线卡(802.11 / a)。

one wireless card to connect internet, another wireless card(802.11/a) use for AP(gateway).

谢谢!

Kandom

推荐答案

FORWARD只会在数据包被调用时被调用并非注定要收到的界面。 此外,这意味着必须为TCP / IP启用转发

HKEY_LOCAL_MACHINE \SYSTEM\CurrentControlSet \ Services \ Tcpip \Parameters

  Value名称:IPEnableRouter

 价值类型:REG_DWORD

 价值数据:1

如果数据包的目的地是接收接口的地址:


  • 数据包转到INBOUND_IPPACKET(本地堆栈处理它)。 

如果数据包的目的地是通过不同的接口到达的地址:


  • 如果未启用IP转发:

    • 数据包已被丢弃

           

           

    • 如果数据包的目的地是本地机器上的接口地址

      • 如果松散的源映射未启用  

        • 数据包被丢弃
        • If the packet is destined for an address of an interface on local machine
          • If loose source mapping is not enabled  
            • The packet is discarded

            • 数据包转到IPFORWARD,然后转到INBOUND_IPPACKET(本地堆栈进程 )  
            • The packet goes to IPFORWARD, and then to INBOUND_IPPACKET (local stack processes it)  

            • 数据包转到IPFORWARD

            请注意,为了调用任何标注,流量必须与标注的过滤器匹配。

            希望这有帮助,


            这篇关于如何实现NAT使用WFP?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆