This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC3120MOD:如何在接受连接之前获取客户端 IP 地址

Guru**** 2392905 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/899349/cc3120mod-how-to-get-client-ip-address-before-accepting-its-connection

器件型号:CC3120MOD

您好!

如何在接受客户端连接之前获取客户端的 IP 地址?

表示在调用 sl_Accept()之前如何获取连接的目标 IP 地址/客户端 IP 地址。

有人能支持我吗?

我尝试过以下代码、但在'client_IP'中、我将始终获得0值:-

//此任务将永远等待传入的数据
sl_socket_fd_zero (&rxSet);
sl_socket_fd_set (connHandlr->SD、&rxSet);

//使用相关参数调用选择功能
状态= sl_Select ((connHandlr->SD + 1)、&rxSet、NULL、NULL、&timeVal);

if (status == true)

 tmpCounter++;

其他

 TmpCounter = 0;

/*will call sl_task() to
获取事件(触发器/计时器)*/
SL_Task (空);

/*如果触发事件到达(或者数据正在等待但没有事件)
*转到接收数据*/
if ((g_triggerModeEventArrived == true)||(tmpCounter >=10))

 //清除事件指示
 G_triggerModeEventArrived = false;
 TmpCounter = 0;
 client_ip = connHandlr->clientAdd.sin addr.s_addr.s_addr;//更新当前客户端 IP 地址
 返回值= m_AcceptConnection (connHandlr);

返回返回值;

当我接受连接时、我将获得其 IP 地址、但我需要它、然后我将接受连接:-

//套接字被标记,调用接受
connHandlr->NewSd = sl_accept (connHandlr->SD、(SockAddr_t*)&Addr1、(Sockklen_t*)&AddrSize);
client_IP = Addr1.sin addr.s_addr;//更新当前客户端 IP 地址

 

此致、

Mahendra Rana

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Mahendra Rana、

    您是否处于 AP 模式? 是否可以获取已连接站点的 IP 地址?

    此致、

    Sarah

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Sarah、

    否。我处于工作站模式、而在网络中、在 AP 上连接了多个客户端。

    因此、在我接受服务器上的任何客户端套接字连接之前、我想检查其 IP 地址。

    此致、

    Mahendra Rana

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    CC31xx/CC32xx 器件确实使用 BSD 套接字-请阅读 文档。

    1月