硬汉嵌入式论坛

 找回密码
 立即注册
查看: 270|回复: 3
收起左侧

[NetX] NetX 多网卡应用之NAT

[复制链接]

9

主题

59

回帖

101

积分

初级会员

积分
101
发表于 2025-3-25 23:40:34 | 显示全部楼层 |阅读模式
我的板子上有一个WIFI芯片AP6181和一个PHY芯片LAN8720。

如果我想像路由器一样把ETH有线网络共享给WIFI,就需要开启NAT服务。

NetX对于NAT的要求是:
1. 至少两个网卡,分别连接两个网络。例如ETH和WIFI。
2. 主网卡,用于在外网和内网之间转发数据(类似路由器的WAN口)。
3. 第二网卡,用于维护内部网络(类似路由器的WIFI芯片)。

所以我使用NetX的NAT基本流程是:
1. 创建一个IP Instance,传入ETH驱动作为网卡0
2. 网卡0(ETH)可以设置一个静态外网IP,也开启DHCP客户端去动态获取外网IP。
3. 绑定WIFI作为网卡1,启用WIFI芯片AP模式。因为要给接入的设备分配IP,所以需要开启DHCP服务器。
4. 等待网卡0和网卡1的IP准备就绪
5.使用nx_nat_create创建NAT,传入主网卡号0和NAT缓存,调用nx_nat_enable开启NAT。NAT就自动开始工作了。

测试,用手机连接wifi,可以访问互联网,只是速度有些慢。

在默认配置,发现NAT缓存很快就会消耗完毕,缓存回收得特别慢,基本上意味着罢工了。
如果你想长时间体验NAT,可以尝试下面的操作:
1. NAT缓存需要大一些。10KB才对应大概300个cache。很快就用完了。
2. 打开NX_NAT_ENABLE_REPLACEMENT,它会在cache用完时替换最老的cache
3. 缩短TCP UDP等cache的超时时间,默认分别是24小时和4分钟,我都给改成几十秒。


其他:
1. 记得使用nx_dhcp_set_interface_network_parameters给接入的设备分配网关、DNS等。
2. 可以调用nx_nat_cache_notify_set注册NAT cache消耗完全的回调


提供了测试过的网络转换案例:
1. ETH转WIFI eth2wifi
    ETH 作为主网卡,开启DHCP 客户端(或静态IP)
    WIFI 作为第二网卡,使用AP模式,开启DHCP服务器

2. WIFI转ETH wifi2eth
    WIFI作为主网卡,使用STA模式,开启DHCP客户端
    ETH作为第二网卡,静态IP (实际测试了开启DHCP服务器后抓包,有dhcp响应但是电脑不知为何没处理)

4G、USB与ETH WIFI互转等还没调稳定,暂不提供。

H743_NETX_NAT_ETHtoWIFI.rar

18.19 MB, 阅读权限: 100, 下载次数: 9

回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115434
QQ
发表于 2025-3-26 09:53:34 | 显示全部楼层
你这个NETX已经研究的相当溜了。

这个AP6181速度可以做到多少,可以到1MB/S不
回复

使用道具 举报

9

主题

59

回帖

101

积分

初级会员

积分
101
 楼主| 发表于 2025-3-26 10:35:56 | 显示全部楼层
eric2013 发表于 2025-3-26 09:53
你这个NETX已经研究的相当溜了。

这个AP6181速度可以做到多少,可以到1MB/S不

速率短板在与SDIO吧,连路由器收发2MB没问题的。我这个wifi使用了eth共享的网络 测速也有1.xMB
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115434
QQ
发表于 2025-3-27 10:32:09 | 显示全部楼层
egoistaw 发表于 2025-3-26 10:35
速率短板在与SDIO吧,连路由器收发2MB没问题的。我这个wifi使用了eth共享的网络 测速也有1.xMB

这速度相当可以。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-4-25 22:05 , Processed in 0.218535 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表