如何在边界路由器节点获取数据包信息?

How to get packet info at Border Router Node?

我已经通过边界路由器节点进行了 udp-server 和 udp-client 通信。它能够从客户端到服务器进行通信。

我在如何获取数据包信息方面遇到困难,例如...源 IP、边界路由器节点的目标 IP?我可以在服务器节点获取它,但如何在边界路由器节点获取同样的东西?

当路由器接收到数据包时,数据包由函数 tcpip_ipv6_output 路由到文件 tcpip.c。您可以通过将 DEBUG 宏设置为 DEBUG_PRINT.

来激活此文件的 PRINTF

在此函数中,您可以使用UIP_IP_BUF->destipaddrUIP_IP_BUF->srcipaddr获取源地址和目标地址。检查,例如,何时在路由 table :

中查找到目的地的路由
uip_ds6_route_t *route;
/* Check if we have a route to the destination address. */
route = uip_ds6_route_lookup(&UIP_IP_BUF->destipaddr);