Australia racked up 469 in their first innings and then reduced India to 151/5 to put themselves in the box seat in the World Test Championship final at The Oval on Thursday.
Having bled 327 runs on the opening day with only three wickets to show for, India staged a comeback after their seam-heavy attack bowled out Australia in Thursday's second session.
Their star-studded top order, however, let India down and Australia look on course to claim a decisive first-innings lead after dominating the first two days of the contest.
India trail by 318 runs with Ajinkya Rahane unbeaten on 29 and KS Bharat on five at the other end.
Earlier, Australia run-machine Steve Smith, resuming on 95, duly brought up his 31st Test hundred with back-to-back fours off Mohammed Siraj.
The former Australia captain also equalled Englishman Joe Root's record of nine Test hundreds against India in the process.
At the other end, overnight centurion Travis Head crossed the 150-mark before Siraj (4/108) broke his 285-run stand with Smith, the highest fourth-wicket partnership at the venue.
Head, whose 163 off 174 balls included 25 fours and a six, gloved a short ball down the leg side giving Bharat his third catch of the match.
Mohammed Shami had Cameron Green caught in the slip for six and Smith departed after dragging a delivery from Shardul Thakur on to his stumps.
Smith's patient 121, which contained 19 fours, was his third test hundred in six innings at The Oval.
Alex Carey made 48 down the order before falling to Ravindra Jadeja who is India's lone spin option in the match.
India scored nearly at a run-a-ball rate in the first four overs before Scott Boland replaced Mitchell Starc and put the pressure back on the openers.
Australia captain Pat Cummins drew first blood when he trapped his counterpart Rohit Sharma lbw for 15.
In the next over, Boland dismissed Shubman Gill (13), who did not offer a shot to an incoming ball that crashed into his off-stump.
With India reeling on 30/2, Cheteshwar Pujara's ability to bat long was exactly what his team needed the most.
The 35-year-old made 14 before falling in a fashion identical to Gill's dismissal - not offering shot to a Green delivery that pegged back his off-stump.
In contrast, Virat Kohli was done in by extra bounce.
The batter had looked assured for his 14 but could only fend a steeply rising delivery from Starc to Smith at second slip.
Rahane got a reprieve on 17 when he was adjudged lbw but he stayed on after replays confirmed Cummins had over-stepped.
Ravindra Jadeja made a counter-attacking 48 before edging Nathan Lyon to Smith in the slip in a late blow to India's hopes of staying alive in the contest.
"I think we're in a really strong position after two days," Boland told the official broadcasters.
"I think the pitch is going a little bit up and down, which we saw in the last couple of overs.
"So hopefully it's harder for India to bat tomorrow."