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.

[参考译文] CC3235MODSF:获取 IPv6地址超时过期

Guru**** 2537090 points
Other Parts Discussed in Thread: CC3235SF

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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/957383/cc3235modsf-timeout-expired-to-acquire-ipv6-address

器件型号:CC3235MODSF
主题中讨论的其他器件:CC3235SF

尊敬的香榭丽舍

当我们测试"network_terminal"(network_terminal_CC3235SF_LAUNCHXL_tirtos_ccs)时、我在 wlanconnect 命令上遇到此警告消息。

无论任何 WLAN AP 站如何、我们始终无法获取 IPv6地址。

这是否意味着 CC3235无法使用所有 IPv6功能? 或 network_terminal 示例中的任何错误?

如果您有任何建议、请随时告诉我。

非常感谢。

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

    Janet、您好!

    为了使 IPv6正常工作、需要对网络终端示例进行一些修改。

    首先、您需要使用以下代码启用 IPv6:

    _u32 IfBitmap = 0;_i16状态;IfBitmap = sl_netcfg_if_ipv6_sta_local | sl_netcfg_if_ipv6_sta_global;
    状态= sl_NetCfgSet (sl_netcfg_if、sl_netcfg_if_State、sizeof (IfBitmap)、IfBitmap); 


    然后,您必须选择支持的 IPv6配置模式之一并启用它。 例如、如果要使用 AP 的 STATEFUL (DHCP)配置、则需要调用以下配置函数:

    状态= sl_NetCfgSet (sl_netcfg_IPv6_ADDR_Local、sl_netcfg_ADDR_STATEFUL、0); 

    您可以在 RetVal = DisplayAppBanner (application_name、application_version)之后立即放置这两组函数调用;在 network_terminal.c 的 mainThread()中的行

    对于这些函数调用、应启用 IPv6。 IPv6采集时间可能比应用程序中更简单的 wlanconnect 命令的超时长、因此我建议您使用 addprofile 命令将 AP 信息作为配置文件添加到器件中:

    有关更多信息、请参阅 NWP 用户指南的第5.3.2节: http://www.ti.com/lit/swru455

    如果您需要更多澄清或对在 CC3235上启用 IPv6有进一步的疑问、请告诉我。

    此致、

    Michael

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

    尊敬的 Michael:

    我是否可以询问需要在哪里添加启用 IPv6的代码?  

    我尝试在 network_terminal.c 的 SimpleLinkNetAppEventHandler 和 wlan_cmd.c 的 cmdWlanConnectCallback 中添加此内容

    但始终无法获取 IPv6地址。

    请您分享修改后的代码或告诉代码行吗?

    如果您有任何建议、请随时告诉我。

    非常感谢。

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

    Janet、您好!

    您只需在 network_terminal.c 中的 DisplayAppBanner()之后添加该代码即可

    请参阅随附的修改后的 network_terminal.c 文件。 如果您用我提供的副本替换 network_terminal.c、您是否能够使 IPv6连接数据显示在测试设置中?

    /cfs-file/__key/communityserver-discussions-components-files/968/8726.network_5F00_terminal.c

    由于 IPv6 IP 采集过程可能需要一段时间、我建议您使用 addprofile 命令或通过其他方式将 wlan_cmd.c 中的 wlan_event_tout 定义调整为更大的值。 在我的测试中、看起来像30到60秒、似乎是典型的 IPv6采集时间。

    此致、
    Michael

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

    尊敬的 Michael:

    感谢您的解释。

    是的、 我使用了 addprofile 命令并减小了 wlan_event_tout 的值、然后得到了 IPv6地址。  

    有一点问题、 为什么 IPv6采集时间需要 大约60秒? 我可以缩短此时间吗?  

    非常感谢。

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

    Janet、您好!

    IPv6采集需要60秒的原因是 CC3235在状态模式下运行时用于从 DHCPv6服务器获取 IPv6的超时。

    如果 AP 没有配置为分配 IPv6地址的 DHCP 服务器、则在超时结束后、CC3235将以无状态模式自动配置 IPv6地址作为回退。

    此致、

    Michael