0

我有一个 UDP 服务器和客户端连接。堆栈是 802.15.4、TSCH、6lowpan、IPv6。我相信 contiki 中有一个功能可以列出与服务器关联的客户端的 IP 地址。我想知道我可以使用哪个函数来访问这个列表,保存到这个列表并从这个列表中获取存储的 IP。

4

1 回答 1

1

无论您是否使用 RPL,在 contiki 服务器(在 RPL 的情况下设备接收 DIO 消息,在 NDP 的情况下接收 RS 消息)中,您都可以通过查看邻居缓存来访问客户端列表。此缓存位于ds6_neighbors表中。

我会尝试这样的事情:

#include "uip-ds6-nbr.h"
#include "nbr-table.h"

uip_ds6_nbr_t *nbr = nbr_table_head(ds6_neighbors);
while(nbr != NULL) {
    // do something with the neighbor here
    // its IP address is nbr->ipaddr
    // ...
    nbr = nbr_table_next(ds6_neighbors, nbr);
}
于 2015-04-08T07:01:57.883 回答