India opener Shikhar Dhawan smashed another hundred and KL Rahul made a record-equalling half-century before Sri Lanka hit back on day one of the third Test in Pallekele.
Dhawan put Sri Lanka's attack to the sword with a magnificent 190 in the first Test and he hit a brisk 119 as the India openers cashed in after Virat Kohli won the toss on Saturday.
Rahul (85) gave another exhibition of his class at the top of the order, becoming only the sixth man to score 50 or more in seven consecutive Test innings courtesy of a first-wicket stand of 188.
Malinda Pushpakumara (3-40), in only his second Test, sparked Sri Lanka's revival after lunch and Lakshan Sandakan (2-84) struck twice, leaving India 329-6 at stumps as they target a 3-0 series whitewash.
Wriddhiman Saha (13 not out) and Hardik Pandya (1 no) will resume in Kandy on Sunday.
The aggressive Dhawan latched on to short stuff from the recalled Lahiru Kumara with some exquisite cuts, while Rahul pulled expertly and drove with elegance as India got off to an ominous start.
Kumara was removed from the attack after only three overs and failed to redeem himself for a poor opening spell when he dropped Rahul on 28 running back from mid-on off the bowling of Dimuth Karunaratne.
That proved to be costly as Dhawan and Rahul continued to score all too easily, the left-hander setting about spinner Dilruwan Perera.
The prolific Rahul, who timed the ball superbly, etched his name in the record books with yet another half-century and Dhawan raced on to 64 as India reached lunch on 134 without loss.
Angelo Mathews had no time to react when Rahul edged a cut past him at slip off Sandakan, but he missed out on a century after dancing down the track to strike Pushpakumara to Karunaratne at mid-on.
Cheteshwar Pujara was rattled on the helmet by a short ball from Kumara before Dhawan brought up his sixth Test hundred by using his feet superbly to drive Pushpakumara wide of mid-off for four.
Dhawan's stylish 123-ball knock, which included 17 boundaries, ended when he swept Pushpakumara to a diving Dinesh Chandimal and Pujara (8) fell before tea, caught cutting Sandakan to Mathews in the slips, as the hosts' persistence finally paid off.
Pushpakumara bowled Ajinkya Rahane (17) and Sandakan claimed the scalp of Kohli, who was taken by Karunaratne at slip eight short of a half-century, in a strong Sri Lanka fightback.
Vishwa Fernando, playing his second Test a year after his debut, also snared Ravichandran Ashwin (31) caught behind at full stretch by Niroshan Dickwella to give Sri Lanka another late lift.
|Real Madrid are Champions League favourites, insists Man City coach Arteta|
|BREAKING NEWS: Stokes & Hales charged with bringing game into disrepute|
|Stephens slips to Vekic defeat in Tokyo|
|Simeone should teach Griezmann values - Ramos questions Ballon d´Or ambition|
|Arteta ready to step into Guardiola´s shoes after missing out on Arsenal job|
|Naive or scheming - Ozil´s agent slams Kroos, Neuer and Muller|
|Bolton´s Darby forced to retire after Motor Neurone Disease diagnosis|
|Root vows dressing support for Moeen over Ashes abuse claims|
|Madrid more dangerous without Ronaldo - Dani Alves|
|Federer fires ominous Djokovic warning to rivals|
|Arsenal confirm Gazidis departure to Milan|
|Man´s best friend? D´Arcy Short ruled out by dog bite|
|Salah has strong bond with ´friend´ Klopp|
|Mistakes were made in Serena´s US Open row - Federer|
|Burgess wants ´truth to come out´ over lewd video allegations|
|Injury brings premature end to Sharapova´s season|
|The next one´s mine - Griezmann underlines Champions League desire|
|A novice coach and a solar-powered stadium – who are Champions League debutants Young Boys?|
|Free-scoring Liverpool and PSG do battle, Kane eyes elite club - Champions League in Opta numbers|
|Braves fall to Cardinals, still move closer to clinching NL East|
|Mack leads Bears past Seahawks|
|Maradona makes winning start in Mexico|
|Barcelona captaincy has changed Messi, says Bartomeu|
|Lithuania qualify for FIBA World Cup after double-overtime win|
|Yelich makes history with another cycle|
|Silva: PSG, Liverpool have world´s two best attacks|
|It´s like a cow seeing a train – Pochettino uses unusual analogy to talk experience|
|Brady discusses Patriots´ trade for Gordon|
|Bills coach McDermott hasn´t spoken to Davis, says he ´didn´t feel a need´|
|Coutinho can´t explain Barcelona´s Champions League struggles|
|Henderson: Run to final can inspire Liverpool in Champions League|
|Eriksen: Everyone expects Kane to score a hat-trick every game|
|Gruden doesn´t regret decision to trade Mack|
|West Ham confirm Wilshere ankle surgery|
|Hughton hails Murray´s cool head as Brighton fight back again|
|It´s not good enough - Hojbjerg blasts Southampton|
|Patriots sign Josh Gordon from Browns|
|Southampton 2 Brighton and Hove Albion 2: Murray denies Saints after Hojbjerg howitzer|
|Wawrinka ready for Khachanov after battling past Bedene|
|Lozano: Joining Barcelona would be a dream|
|Players can fight for Messi´s shirt if they win, says Van Bommel|
|Kaymer tips Europe for Ryder Cup glory|
|Neymar to face Liverpool, confirms PSG´s Tuchel|
|Jardim backs Ronaldo to beat Griezmann in Ballon d´Or battle|
|Atletico will grow through hard work, says Simeone|
|Sorry Sri Lanka crash out of Asia Cup|
|Pochettino has no concerns over ´easy target´ Kane|
|Valverde expects PSV to attack|
|Salah ´sure´ Liverpool can win Champions League|
|Firmino misses training ahead of PSG clash|
|Joe Calzaghe´s father and trainer Enzo passes away|
|Coutinho: I have to improve a lot to earn Iniesta comparisons|
|Pochettino explains Trippier & Alderweireld absences for Inter clash|
|The quickest to 50 Premier League goals as Silva reaches milestone|
|Lampard: Derby can´t afford to sign Terry|
|Carson Wentz injury update: Eagles QB cleared to play Week 3 vs Colts|
|Verratti ban a blow for PSG - Henderson|
|Spalletti wants to have fun in ´Disneyland of football´|
|Alli, Lloris and Sissoko miss Inter-Tottenham in Champions League|
|West Ham´s Perez refutes suggestion he refused to warm up against Everton|
|Canelo-GGG drama lives up to the greats and demands third act|
|Hamilton genius triumphs over Ferrari desperation in Singapore|
|Klopp: ´Smart´ Neymar does not act|
|WATCH: Broncos punter Marquette King trolls Jon Gruden in Twitter video|
|PSG are favourites against Liverpool - Klopp|
|Morata set for Chelsea recall as Sarri seeks striker balance|
|No further action against fan involved in Tui altercation|
|I think about losing - Joshua´s focus sharpened by fear of failure|
|Muguruza comes through Bencic test|
|Nsoki signs PSG contract|