How to make an object without Rigidbody move at the same speed as an object with Rigidbody?

Object A moves freely in all coordinates:

rb.AddRelativeForce(0, 0,
impulseForce);

Object B moves only on waypoints:

Vector3.MoveTowards(transform.position,
waypointsScript.waypoints[current].transform.position,
Time.deltaTime * speed);

The player controls object A. Object B must always be above object A, unless the player runs far away. Object B should move only by points.

How to make object B move at the same speed as object A?

alt text

Hello.

You can create some kind of Waypoints.

Object A stores its position every X seconds, and Object B moves from one Waypont to the nextone.