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.

[参考译文] RTOS:NDK ARP 消息

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/597261/rtos-ndk-arp-messages

工具/软件:TI-RTOS

您好!

我想知道 如何手动发送 ARP 消息(免费 ARP)-是否有 API? 另外、我是否可以进行配置、以便 NDK 在唤醒时以及在每次 IP/MAC 更改后自动发送 GARP?

(在 TDA3XX 上使用 NDK 版本2_24_02_31)

谢谢

家伙

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

    我已将您的问题转交给 NDK 专家。

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

    Guy、

    在邮件中复制 Steve 的回复:

    是的、您可以配置 NDK 来执行此操作。  大多数内容都是通过应用程序*。cfg 脚本在 NDK 中配置的、但缺少对免费 ARP 的支持。

    请参阅以下主题、了解如何更新您的应用程序以配置免费 ARP。

     https://e2e.ti.com/support/embedded/tirtos/f/355/p/552991/2031516#2031516 

    Prasad

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    给定线程中的配置适用于处理接收到的 GARP、并确定 NDK 如何处理正在接收的 GARP、而我需要的是使 NDK 发送 GARP 消息(手动和/或每次更改 MAC/IP 地址)。

    (我还尝试为 GARP 配置添加建议的代码、它没有改变发送 GARP 的行为-即没有发送 GARP)

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

    Guy、

    发生这种情况时、您是否能够对电路板执行 Ping 操作?

    在 BindNew 函数中应出现免费的 ARP。  它的影响如下:

    1.      您的应用程序会调用

           CfgAddEntry (hCfg、CFGTAG _IPNet、 ,…);

     

    2.     调用 SPIpNet()

    a.     输入 IF 以 添加条目:

                        i.  if (Op =CFGOP_ADD)

    3.     调用 NtAddNetwork()

         4.调用 BindNew():

     

    Handle BindNew( Handle HIF、IPN IPHost、IPN IPMask )

    (笑声)

       /*以太网上的免费 ARP */

       if (IFGetType (HIF)=HTYPE_ETH && IPHost!= INADDR_ANY

                                            && IPHost!= INADDR_broadcast)

                  LLIGenArpPack( HIF,IPHost );

     

    由于您未连接到 JTAG、因此无法在此处打印消息、除非您有另一种方法、例如配置用于输出打印消息的 UART 连接(?)。

     

    Steve

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

    好的、没有 UART、因此打印不会对我们有所帮助。

    看到此问题时、您是否能够 ping 通电路板? ping 时、是否看到 ARP 数据包用于解析 Wireshark 中的 IP 地址? (即 PC ARP 请求"谁拥有192.168.xxx.yyy?" (笑声) 后跟 NDK 响应"192.168.xxx.yyy、位于 ")

    Steve
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    此外、这两种情况之间是否还有其他差异(具有 JTAG 的 RAM 与不具有 JTAG 的闪存)? 它们是相同的可执行文件还是相同的映射文件?

    Steve
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Steve、
    在我运行完全相同代码的两种情况(使用或不使用 JTAG)之间没有什么不同、只需查看 Wireshark 日志即可
    因此、CPU 会经历完全相同的代码。

    至于 ping - ping 没有问题、网络工作正常、我可以 ping 通并获取回复(也可以是 PC 发出的"谁拥有"消息和 NDK 的响应)

    不知道为什么连接 JTAG 会显示 GARP

    家伙