I work with lots of people whose dogs are pulling hard on the leash during walks. They walk and walk to get the pup exhausted and struggle to get a walk that doesn't look like a warm-weather Iditarod race. What are we teaching the pup, though, when we do this? Likely we are reinforcing the idea that pulling hard gets you where you want to go. You must stop practicing leash walking when it results in pulling.
Instead, practice leash walking and engage/disengage games indoors until things are fluid and easy. Then find a more distracting location. Maybe this means going indoors somewhere else, like a family member's house, or a store that allows dogs. Then try outdoors in a place that isn't very exciting. Maybe that's a familiar yard or maybe it's a parking garage that's fairly empty or a giant parking lot at a big box store far from the shoppers and the entrance.
If that's still really tough, be sure to play fetch or tug or flirt pole or a run in a fenced yard for a bit before heading out. No fenced yard? Try Sniffspot to rent one. Give only half of your pup's breakfast before the walk to make sure your pup is keen to eat the other half in the form of rewards for nice, loose lead efforts. Last but not least, be sure those rewards compete with squirrels and dogs - try meat, low-fat cheese, or even fur toys for a quick tug game (be sure your dog can respond to "drop!" first!)