Replies: 1 comment 2 replies
-
|
The preferred approach is using DNS-SD (DNS Service Discovery) with SRP (Service Registration Protocol). If you choose to manually configure IPv6 addresses instead, it is important to use an on-mesh prefix to ensure those addresses are routable within the Thread network. 1. Preferred Approach: DNS-SD and SRPInstead of assigning static IP addresses, each sub-device can register itself as a Service using SRP. This allows other nodes to discover them dynamically by name and service type (e.g., Key Advantages:
Example: Registering a sub-device via CLI # 1. Set the host name for the node
> srp client host name my-node
# 2. Register a "sub-device" as a service (name, type, port)
> srp client service add sub-device-1 _ipps._tcp 12345
Done
# 3. Enable autostart to find the SRP server and register via unicast
> srp client autostart enableOther nodes can then discover these sub-devices using unicast DNS queries: > dns browse _ipps._tcp.default.service.arpa.2. Alternative: Manual IPv6 Configuration (using On-Mesh Prefixes)If your specific integration requires unique IP addresses for each sub-device, you should use an on-mesh prefix already advertised in the network. Using an on-mesh prefix ensures the addresses are recognized as local and are routable within the Thread network. How to find the On-Mesh Prefix: > netdata show
Prefixes:
fd00:1234:5678:abcd::/64 paos low 4000In this example, Example: Adding a static address using the on-mesh prefix # Use the prefix discovered above and add your own interface identifier (IID)
> ipaddr add fd00:1234:5678:abcd::1
Done
> ipaddr add fd00:1234:5678:abcd::2
DoneKey Considerations for Manual Addresses:
Recommendation: Use DNS-SD/SRP to leverage efficient unicast discovery and avoid the power costs of multicast. Only use multiple static IPv6 addresses if your application layer specifically requires it, and always ensure they use an on-mesh prefix. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
In my project, I need to send data to a specific device, which has many sub-devices with different addresses. For ease of conversion, I need to set multiple static addresses in the OpenThread terminal, rather than using broadcast to search at the application layer. I would like to know if OpenThread can set multiple static addresses, and whether I can directly use UDP communication or set something else to enable direct communication using CoAP.
Beta Was this translation helpful? Give feedback.
All reactions