Castres were eliminated from the European Challenge Cup on Friday as the Dragons recorded a 31-18 victory at Rodney Parade to move to the brink of qualification for the last eight.
A first-minute try from returning Wales wing Hallam Amos set the tone for a first half dominated by the hosts, who opened up a 24-3 lead before David Smith responded on the stroke of half-time.
Christophe Samson also crossed for Castres after the interval as the French side reduced their deficit to six points, but the dismissal of replacement Alexandre Bias - for leading with his head in a tackle - enabled the Dragons to regain control.
Ashton Hewitt's late score secured a bonus point for the Dragons, who face Sale Sharks next week in a game that will decide the winner of Pool Two. The Dragons are likely to progress as one of the best runners-up even if they lose at the AJ Bell Stadium.
Sale were grateful for Johnny Leota's 79th-minute try as they left it late to claim a bonus point in a 27-3 win at Pau.
Andrei Ostrikov, Neville Edwards and Will Addison touched down in the first half for the Sharks, but a fourth score looked set to prove beyond them until Leota went over on the left wing.
The Premiership club are two points behind the Dragons ahead of their meeting.
Edinburgh took over at the top of Pool Five, for 24 hours at least, courtesy of a 23-0 home win over Agen.
Last season's runners-up finally claimed a first bonus point as they moved ahead of Grenoble and London Irish, who are in action at the Madejski Stadium on Saturday.