diff --git a/src/core/net/srp_server.cpp b/src/core/net/srp_server.cpp index bb090043f..a67bd36e2 100644 --- a/src/core/net/srp_server.cpp +++ b/src/core/net/srp_server.cpp @@ -325,7 +325,8 @@ bool Server::NetDataContainsOtherSrpServers(void) const while (Get().GetNextDnsSrpUnicastInfo( iterator, NetworkData::Service::kAddrInServerData, unicastInfo) == kErrorNone) { - if (!Get().HasRloc16(unicastInfo.mRloc16)) + if (!Get().HasRloc16(unicastInfo.mRloc16) && + Get().GetMeshLocalEid() != unicastInfo.mSockAddr.GetAddress()) { contains = true; ExitNow();