Carson Kelly followed Peralta with a two-run homer as the Diamondbacks opened a 14-8 lead. Arizona hung on in the bottom half to complete a three-game sweep that extended its winning streak to four.
The Reds lost their fourth straight, finishing a 2-4 homestand.
Cincinnati’s Jesse Winker had his third career two-homer game, Nick Castellanos hit his sixth home run of the season as he returned from a two-game suspension and Eugenio Suárez, Joey Votto and Jonathan India also went deep. All of the Reds’ home run came from among the top four spots in the batting order.
Peralta tied his career high with his third five-hit game. He hit a two-run homer in the fifth inning, had three singles and finished a double short of the cycle.
Lucas Sims (0-1) struck out pinch-hitter Asdrùbal Cabrera to strand the potential go-ahead run on second base in the ninth.
Josh Rojas led off the 10th with an RBI single that drove in Cabrera, who started the inning on second under pandemic rules.
Stephen Vogt’s single and Pavin Smith’s walk loaded the bases, and Cionel Perez relieved with one out, got the second out, then allowed three consecutive extra-base hits.
India hit his first career home run, in his 65th plate appearance, tying the score 8-8 in the eighth with a solo drive of Yoan López. India’s helmet came off and he raised his right arm triumphantly as he rounded the bases.
Suárez had two hits in his last 27 at bats before his his first home run since April 10, a 441-foot, two-run drive tied the score 4-4 in the sixth off Taylor Widener, who allowed four runs and five hits in 5 1/3 innings with a career-high seven strikeouts.
Arizona opened an 8-4 lead in the seventh, helped by five walks from Carson Fulmer and Sean Doolittle in an inning that included two-run homers by Winker and Votto.
Winker also homered on Winker’s second pitch of the game.
Diamondbacks: Tyler Naquin banged a sharp one-hopper off RHP Stefan Crichton’s right hand in the 10th. Crichton had to leave the game.
Diamondbacks: RHP Luke Weaver (1-1) starts Friday at Atlanta. He is 1-1 with a 4.86 ERA in three starts against the Braves.
Reds: RHP Sonny Gray (0-0) takes the mound Friday at St. Louis. He is 1-2 in five starts against the Cardinals, including 0-1 in three starts at Busch.