diff --git a/src/core/thread/mle.cpp b/src/core/thread/mle.cpp index 038caa903..b5da6fa17 100644 --- a/src/core/thread/mle.cpp +++ b/src/core/thread/mle.cpp @@ -3491,6 +3491,8 @@ otError Mle::HandleChildUpdateResponse(const Message &aMessage, const Ip6::Messa mParent.SetState(Neighbor::kStateValid); SetStateChild(GetRloc16()); + mRetrieveNewNetworkData = true; + // fall through case OT_DEVICE_ROLE_CHILD: diff --git a/src/core/utils/slaac_address.cpp b/src/core/utils/slaac_address.cpp index d95eb7c7b..de1dbef1b 100644 --- a/src/core/utils/slaac_address.cpp +++ b/src/core/utils/slaac_address.cpp @@ -115,6 +115,7 @@ void Slaac::UpdateAddresses(otInstance * aInstance, if (otIp6PrefixMatch(&config.mPrefix.mPrefix, &address->mAddress) >= config.mPrefix.mLength && config.mPrefix.mLength == address->mPrefixLength) { + otIp6AddUnicastAddress(aInstance, address); found = true; break; }