Kohli's third century in his last four matches and 116 by opener Shubman Gill powered India to 390-5 in Thiruvananthapuram, Kerala.
Kohli, 34, smashed an unbeaten 166 to lead India to the biggest-ever ODI win by 317 runs against Sri Lanka on Sunday, his 46th ODI ton and 74th in all formats.
Virat Kohli smashed a brilliant attacking century to set up a convincing 67-run win for India in the opening one-day international against Sri Lanka on Tuesday.
Shanaka hit an unbeaten 56 off 22 balls laced with two fours and six sixes to steer Sri Lanka to 206-6. Bowlers led by Kasun Rajitha kept down India to 190-8 despite a threatening 91-run sixth-wicket stand between Suryakumar and Axar.
Kuldeep, who was the only change in the team from India's opening win, and fast bowler Mohammed Siraj took three wickets each to bowl out Sri Lanka for 215 in 39.4 overs in Kolkata.
Shivam Mavi returned figures of 4-22 to help the hosts bowl out Sri Lanka for 160 in a victory target of 163 and lead the three-match series 1-0 in Mumbai.
Several Sri Lankan players and officials have been put into isolation after batting coach Grant Flower and data analyst G. T. Niroshan tested positive for the new coronavirus soon after their return from England on Tuesday SLC said in a statement.
Riding on a stupendous batting performance by stand-in captain Shikhar Dhawan and debutant Ishan Kishan, india defeated Sri Lanka by seven wickets in their first one-day international match on Sunday.
Hasaranga returned career-best T20 figures of 4-9 with his leg-spin as India finished on a paltry 81-8, a total Sri Lanka overhauled in 14.3 overs. Dhananjaya de Silva, unbeaten on 23, and Hasaranga, 14 not out, steered the team home after Indian leg-spinner Rahul Chahar sent back Sri Lanka’s top three batsmen.
India reached 257 for six at stumps in response to England's 578 in Chennai. Washington Sundar, on 33, and Ravichandran Ashwin, on eight, were batting with an ubroken stand of 32. India need another 122 to avoid the follow-on.