R128 WIFI AP模式获取连接设备的IP地址的问题
-
R128的WIFI在AP模式下,其它设备连接这个WIFI,怎么在R128这边获取到分配给连接设备的IP地址呢?
官方的文档里没看到有提到具体方法,代码里水平有限也找不到接口 -
wifi_ap_get_config(wifi_ap_config_t * ap_config)
可以参考
wifi ‑l
的实现 -
@awwwwa wifi -l ap 这个指令我也试过了,它调用的就是wifi_ap_get_config()来获取,它返回的ap的地址是对的,但是返回的sta信息好像是mac地址,不是ip地址.
而且很奇怪,我明明只有一个设备连接,但是获取到的sta_num却有4个 -
@mxf4511 如果AP模式需要获取IP地址应该使用上层的网络协议栈来分配,例如DHCP服务
-
@awwwwa LWIP找了几天,没有找到dhcp服务端获取已分配ip的例子,可以提供一个简单的例子吗?
-
AP的数据是在 lwip 的 static struct etharp_entry arp_table[ARP_TABLE_SIZE]; 中维护
#if LWIP_XR_IMPL ip4_addr_t* etharp_get_ip_from_mac(struct eth_addr *ethaddr) { int i; ip4_addr_t* ip_ret = NULL; LWIP_ASSERT("ethaddr != NULL", ethaddr != NULL); for (i = 0; i < ARP_TABLE_SIZE; i++) { if (memcmp(ethaddr, &arp_table[i].ethaddr, sizeof(struct eth_addr)) == 0) { ip_ret = &arp_table[i].ipaddr; break; } } return ip_ret; } #endif
-
@awwwwa 好的,感谢我试试
Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号