George North opened the scoring for Ospreys on his return from injury on Saturday, but a dramatic finish saw Dragons come out on top in their Pro14 derby clash.

Wales wing North had been out of action since rupturing his hamstring in the Rugby World Cup semi-final defeat to South Africa in October.

He was fit to start and play 79 minutes for struggling Ospreys, yet his eventual departure came amid a thrilling stretch in which Dragons claimed a 25-18 victory.

North dotted down after 19 minutes following Scott Williams' kick and, although Leon Brown responded in style, Ospreys were in control again as Tiaan Thomas-Wheeler scored in the second half.

They remained in front until the 74th minute, but Rio Dyer's try brought Dragons back into the match, and Adam Warren went over with two minutes remaining to settle it.

Defeat leaves Ospreys still bottom of Conference A with just one win in 10 matches.

Fellow strugglers Zebre found some form at home to Cheetahs.

Charlie Walker scored a pair of tries in a 41-13 success, just Zebre's second of the campaign.

At the other end of the table, Leinster equalled their best ever start to a season with a 10th straight win, defeating Connacht 54-7.

Max Deegan and Garry Ringrose each scored twice, with the table-topping Irish province crossing eight times in all in another dominant victory.

Elsewhere, George Horne went over twice and brother Pete also got on the scoresheet as Glasgow Warriors ran in six tries to claim a 38-19 bonus-point win at Benetton.

Meanwhile, Edinburgh took full advantage of Pieter Scholtz's early dismissal to rout Southern Kings 61-13.

Scholtz saw red for contact to the neck in the 13th minute, and Edinburgh, who trailed at that point, scored the first of their nine tries a minute later in a handsome victory.