The Ducks opened the scoring through Teemu Selanne's third goal of the season, but strikes from Ryan Garbutt, Brenden Dillon and Shawn Horcoff put Dallas in charge after the end of the first period.
Yet they came charging back with two goals from Perry levelling matters before Emerson Etem, Ryan Getzlaf and Mathieu Perreault took the Ducks to 7-1 for the season, which ties the longest winning streak in the club's history.
Carter Hutton made 37 saves to claim his first win with the Nashville Predators, who beat the Winnipeg Jets 3-1.
Eric Nystrom, Patric Hornqvist and Matt Cullen were all on-target for Nashville in the second period, with Evander Kane pulling one back in vain for the Jets in the third.
RJ Umberger and Ryan Johansen both scored in the third period as the Columbus Blue Jackets snapped a four-game losing streak with a 3-1 win over the Vancouver Canucks.
The game was finely poised heading into the final period after a powerplay goal from Henrik Sedin cancelled out Marian Gaborik's opener for the Blue Jackets, who came on strong in the closing stages.