我已经通过边界路由器节点进行了 udp-server 和 udp-client 通信。它能够从客户端到服务器进行通信。
我在如何获取数据包信息方面遇到困难,例如......边界路由器节点的源 IP、目标 IP?我可以在服务器节点获得它,但如何在边界路由器节点获得相同的东西?
当路由器接收到数据包时,该功能将数据包路由tcpip_ipv6_output
到文件tcpip.c
中。DEBUG
您可以通过将宏设置为 来激活此文件的 PRINTF DEBUG_PRINT
。
UIP_IP_BUF->destipaddr
在此函数中,您可以使用和获取源地址和目标地址UIP_IP_BUF->srcipaddr
。例如,检查在路由表中查找到目的地的路由时:
uip_ds6_route_t *route;
/* Check if we have a route to the destination address. */
route = uip_ds6_route_lookup(&UIP_IP_BUF->destipaddr);