PHOENIX -- The Milwaukee Brewers started out scoreless in San Diego and headed home on an Arizona high.
Chris Narveson gave up three hits pitching into the sixth inning and drove in a run, three Milwaukee players homered and the Brewers beat the Diamondbacks 6-1 on Sunday to complete a three-game sweep.
The Brewers, who routed Arizona 17-3 on Saturday night, got homers from Prince Fielder, Casey McGehee and Gregg Zaun to win for the fifth time in six games after losing three of four in San Diego, all by shutouts.
"What a turnaround on the road," manager Ken Macha said, "to come home 6-4 on the road trip."
Narveson (3-0), a left-hander in his third start since replacing Jeff Suppan in the rotation, allowed a run on three hits. He struck out eight, walked two and singled to bring in Milwaukee's second run. Two of the hits he gave up were infield singles by Justin Upton and Stephen Drew. The other was Adam LaRoche's two-out RBI single in the sixth that ended his day.
"His changeup was outstanding today," the catcher Zaun said, "the best I've seen it. His fastball was good, the cutter was good, the curve ball was good. Everything was good. I think he only missed his spot with one pitch."
The Brewers broke it open with McGehee's three-run opposite-field homer and Zaun's solo shot off reliever Esmerling Vasquez in the eighth, after Arizona botched a chance to tie the game in the seventh.
They were the first consecutive homers for Milwaukee this season. The Diamondbacks' battered bullpen has allowed 14 runs in seven innings.
Vasquez had been the exception, working four straight scoreless innings and not allowing a run in six of seven appearances overall.
"To go with the hot guy and have it backfire is frustrating," Arizona manager A.J. Hinch said. "It's officially hit just about everybody down there in that bullpen, the struggles have."
Ian Kennedy (2-2) failed in his bid for a third straight victory despite giving up only two runs on six hits in seven innings. He fanned five and his only walk was intentional.
Fielder hit his fourth home run of the season to lead off the second. The Brewers made it 2-0 in the sixth when Corey Hart tripled off the overhang in left center, then scored on Narveson's line single to right.
The Diamondbacks blew their chance to at least tie it 2-2 in the seventh. Chris Young singled, then Drew drove one over the right fielder's head. Young, probably the fastest player on the team, rounded third and was headed to the plate when third base coach Bo Porter put up the stop sign. Young put on the brakes, then Porter told him to go, but it was too late. Young eventually got back to third and Drew was caught in a rundown between second and third.
"When I was going around second I saw C.Y. start taking off," Drew said. "From my standpoint, I wanted him to throw it to third and let C.Y. score. It was kind of unfortunate they kind of held up C.Y. and we get in a rundown."
Hinch said he needed to see the play again to assess how it happened.
"Needless to say, it was a bad play," he said.
After Chris Snyder walked, pinch hitter Rusty Ryal popped out to first. Left-hander Mitch Stetter, just called up from Triple-A Nashville, came on to get Kelly Johnson to fly out to the boos of the crowd.
Milwaukee loaded the bases with one out in the sixth and failed to score. Macha gave Zaun the green light on 3-0 and the batter fouled out to the catcher, then Jody Gerut grounded out.
"I tried to do too much with it," Zaun said. "It's one of those pitches if I get it 10 more times I don't miss it. Always learn from your mistakes."
The next time up he homered.
Milwaukee swept the Diamondbacks in Arizona last season, too. ... Arizona is the runaway leader in the majors for most HRs allowed with 50 ... The Diamondbacks struck out 29 times in the series and fell behind Los Angeles into last place in the NL West. The Dodgers begin a three-game series in Arizona on Monday night. ... After hitting for the cycle Saturday night, Gerut was 0 for 3.