Many variations make dogs pull:
He wants to run instead of the walk.
He wants to go and visit his friend
He wants to smell things - the food on the floor, the toy, the squirrel, etc.
But the essential part you should understand is that your dog is not trying to pull, but he gets excited.
If you understand how to communicate when your dog is excited and make him get relaxed, you will stop him from doing all this variation that we just mentioned.
What you want to focus on is "How do I stop my dog from being excited" instead of focusing on "how to stop your dog from pulling."
What happens when people focus the dog pulling, they pull back, which created a lot of work of pulling.
It would help if you remembered: Dogs need to walk or run; this is their mission, and it's in their nature. And by running a little bit faster would take the focus away from other dogs. So, they'll do it like that.
You can run with them too, or you can bring a backpack, and you don't have to run as fast as if the dog needs it.
Just add a bag for the next two weeks, and you will see a dramatic change. Your dog wants to do something in life; he/she needs a purpose. By putting a backpack on, you provide one for her/him.
Be sure you add some rice and beans, or some sand—something that is not going to bounce, something that's easy to mold.
Keep it for the next two weeks when you go for a walk with your dog, and watch the behavior happens.
And by the way, it's good exercise and mental stimulation for the dogs. So, give your dog a mission and enjoy the backpack.