PHOENIX -- Free of the leg injuries that have nagged him most of the season, Jason Kubel feels comfortable at the plate. Even against a 100 mph fastball.
Kubel hit a two-run single with the bases loaded and no outs in the ninth inning off Cincinnati closer Aroldis Chapman to give Arizona a 4-3, walk-off victory at Chase Field, the sixth walk-off and 17th victory in the Diamondbacks' last at-bat this season.
"I did what I was trying to do: Hit it up the middle, hopefully in the outfield," said Kubel, who spent time on the disabled list a strained left quad that is just now getting back to normal.
"I was out there searching, cheating. It just doesn't work out. It's a comfort zone where you feel strong and balanced and get better results. I finally feel like I have both legs under me and I feel like am starting to use them now. I hope it stays that way."
Paul Goldschmidt singled off first baseman Joey Votto's glove to open the ninth inning before Chapman walked Miguel Montero and Cody Ross. Kubel lined a 1-0 pitch to right-center field for his third career game-winning hit. He has six hits in his last three games.
"It seemed like Chapman was overthrowing some today. He was wild high. It was a tough ending," Cincinnati manager Dusty Baker said.
Cincinnati took a 3-2 lead in the top of the ninth on Jay Bruce's two-run home run off Heath Bell, who has given up home runs in his last five appearances.
Bruce, who had two homers and drove in all of the Reds' runs, has five homers in his last four games and has homered in six of his last seven games. He had a 472-foot homer in the second.
"I feel good. I try not to worry a whole lot about the results as much as the work and preparation before the game," Bruce said. "It has given me more of a mental piece of mind. That has a lot to do with it."
Brad Ziegler (4-1) replaced Bell in the ninth and got the victory. Bell has three blown saves this season, same as Chapman (3-3).
Cincinnati starter Mike Leake retired the first 17 batters before D-backs left-hander Patrick Corbin sliced a double down the left-field line on the first pitch he saw with two outs in the sixth inning.
Gerardo Parra followed with his seventh homer of the season for a 2-1 lead; it was his second homer in as many games. He had a career-high eight homers in 2011.
Leake gave up four hits, walked one and struck out one. He has given up three runs or fewer in seven of his last eight starts.
"I was (aware of the perfect game) but I wasn't thinking about it to where it would affect anything as far as pitching," Leake said.
Corbin gave up three hits, struck out five and walked four. The blown save deprived him of his 10th victory on his fourth attempt. The bullpen has failed to hold three leads for him this season. His 2.19 ERA is fifth in the majors.
"Obviously, I would love to get my 10th win out of the way. I don't really look at it too much," Corbin said.
The D-backs (41-33) won their fourth straight game after losing their previous four.
Cincinnati (44-32) lost its third straight and fourth in its last five.
NOTES: D-backs RHP Ian Kennedy threw a simulated game Saturday, and manager Kirk Gibson said Kennedy will make his next start in Atlanta on June 29, the first day he is eligible to return from his 10-game suspension. ... 1B Joey Votto has played all 76 of Cincinnati's games, joining Philadelphia SS Jimmy Rollins and San Francisco RF Hunter Pence as the only NL players who have appeared in all their teams' games. D-backs 1B Goldschmidt, INF Martin Prado and OF Parra have played in 73 of 74. ... Arizona starting pitchers have not won in their last 15 games, since LHP Wade Miley beat St. Louis on June 5.