-
Notifications
You must be signed in to change notification settings - Fork 235
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Thread Network is unreachable - OTBR running in docker container #1789
Comments
Hi Just a recap:
I reproduce the problem and I can confirm that with your command the router advertisement packets doesn't pass the docker container. But I found a way to make it working, the idea is to force docker to use the host networking.
note 1: Replace
I don't know if it's the best option but like this the router advertisements are now crossing the local network when using otbr docker image. |
Here are some RA packets from otbr docker:
My setup:
icmp-ra are correctly received from the computer. |
@caipiblack Thanks!
|
Hi there, thanks for bringing this up. The doc you referenced (https://openthread.io/guides/border-router/docker/run) is actually open-sourced here: https://github.com/openthread/ot-docs/blob/main/site/en/guides/border-router/docker/run.md If that needs to be updated, @saramonteiro would you be able to update it so that it works based on your findings? Once updated there we'll import the changes to openthread.io. |
@saramonteiro : The warnings that you show are not very important: The matter stack send mDNS request on each interfaces. The warnings are just to notify about a failure to transmit the packet on some interfaces. (It can be for multiple reasons, failure to transmit multicast, ipv6 etc) in your case you don’t care about a failure on docker0 interface. Yes my logs comes from wireshark. |
@Vyrastas done at openthread/ot-docs#113! |
Describe the bug A clear and concise description of what the bug is.
I followed the instructions from https://openthread.io/guides/border-router/docker/run
to build an OTBR in a docker container using Raspberry Pi 4 running Raspberry OS Lite 64 bits.
My RCP is a NXP Dongle based on K32061 MCU.
I used the following command to create the container:
docker run --sysctl "net.ipv6.conf.all.disable_ipv6=0 net.ipv4.conf.all.forwarding=1 net.ipv6.conf.all.forwarding=1" -p 8080:80 --dns=127.0.0.1 -it --volume /dev/ttyACM0:/dev/ttyACM0 --privileged openthread/otbr --radio-url spinel+hdlc+uart:///dev/ttyACM0
(only did the necessary changes for my USB port and baudrate)
After creating the container and setting up the Thread Network (forming and starting it)
I have the Advertising logs as you can see in the next snippet:
Here is a snippet of the logs from the docker container running OTBR (It looks like the advertisement is ok)
But I can't ping from host machine (Raspberry) to OMR IP address from Thread Network.
Actually I suspected there was something wrong with my OTBR because I had issues when trying to
commission using chip-tool (from Matter), it was raising the Thread Network is unreachable error,
and then when I tried to ping I realized the IPv6 network from Thread was unreachable.
To Reproduce Information to reproduce the behavior, including:
Just follow the standard tutorial using the setup described above.
Expected behavior A clear and concise description of what you expected to happen.
I expected to be able to ping from host machine to the OMR address of the Thread Network (wpan) inside the docker Container.
Console/log output If applicable, add console/log output to help explain your problem.
Here is the route table from OTBR
Here is the route table from the host (Raspberry Running the docker container and chip-tool)
Here is the ot-ctl network details from OTBR
Additional context Add any other context about the problem here.
One thing that I noticed later on the logs from OTBR when initializing it and I am not sure if it has some influence
:Questions that I have for now
(How to check if the RAs are arriving properly in the docker interface? How to check if Raspberry is receiving it or potentially ignoring or blocking it?)
The text was updated successfully, but these errors were encountered: