India now lead the five-match series 2-0.
After scoring 252 losing all wickets in stipulated 50 overs, India, aided by fine bowling of Kuldeep and Bhuvneshwar Kumar bowled out Australia to 202 runs in 43.1 overs.
Kuldeep became the third Indian to earn a hattrick inone-day internationals after Chetan Sharma and Kapil Dev.
India won the first rain affected ODI at Chennai by 26 runs in Duckworth Lewis system.
Hero of the match, Kuldeep, dismissed three Australians- Mathew Wade (2), Aston Agar (0) and Pat Cumins (0) on his eighth over. While Mathew Wade was bowled out, Agar was held leg before wicket and Cumins was held by MS Dhoni.
Kuldeep has the best bowling figure for India with 3/54. He was followed by B Kumar 2/9, Hardik Pandya 2/56 and Yuzvendra Chahal 2/34.
Earlier, Kohli's 92 runs innings helped India to score 252 runs in 50 overs.
Though the Indian captain was in great touch but fell short of eight runs to register the 31st ton in ODIs.
The entire crowd at Eden Gardens was stunned to silence when Kohli's drive edged inside the bat and hit the wicket from Nathan Coulter-Nile delivery. This was the sixth time the 28-year-old Delhi batsman got out in 90s.
Earlier Kohli led a 102-run 2nd wicekt partnership in 111-ball between him and opener Ajinkya Rahane ( 64-ball-55-run with 7 fours).
After Rohit Sharma's early exit at seven runs, Virat-Rahane duo began to pick up runs in tandem.
Earlier, Rohit Sharma, who scored 28 runs in 44-ball in first ODI in Chennai, was first to go here at 7 runs in 14 balls when his straight drive bowler Coulter-Nile himself on a follow through held in his second attempt in a Juggling act silencing the half-full stadium.
Eden is favourite hunting ground for Mumbaikar, who had many runs including a double century (264 against Sri Lanka in 2014 in ODI), but today his luck ran out quickly for his batting in hot and humid condition.
In the second wicket partnership, intially Ajinkya was on a bit billigerrent mood and hitting some boundaries and then he allowed his captain to score along with him.
Both then reached their half century almost at the same time. Kohli made his fifty from 60-ball with 5 bounsdaries .Ajinkya's 50 came in 62-ball with six 4s. It was Ajinkya's 20th half-ton in ODIs.
As partnership was going strong, Ajinkya fell short of his running between the wicket and got run out on 55 off 64-balls with 7 fours after Aussie wicket-keeper uprooted the stumps.
India were then 121 for loss of two wickets.
Manish Pandey, for whom Eden is home ground as he played for Kolkata Knight Riders in IPL, was out at 3 after spinner Aston Agar dismantled his stumps. Aston got induction in place of Adam Zampa.
Then Kedar Jadhav, who contributed 40 in Chennai, was also on a hitting mood scoring 24 runs in as many balls, before being caught by Glenn Maxwell at gully off Coulter Nile, whose figure was 3 for 51 in 10 overs.
Speedstar Coulter took 3/44 in first ODI in Chennai. His victims of the day were Rohit Sharma, Kedar Jadhav and Virat Kohli.
Kane Richardson took 3 wickets in 55 runs. Incidentally only one six came for India at Eden today with Kedar Jadhav shot in whole 50 overs.
Manish Pandey (3) and MS Dhoni (5) were also quickly departed as India's score at one time was projected to reach plus 280. Only 45 runs came in 10 overs.
Speed star Bhubaneswar Kumar contributed 20 from 33 balls and Hardik Pandya made 20 from 26-ball and Kuldeep Yadav was outy on no socre. Play was also held up for ten minutes for light drizzle which, however, did not affect the match.
Coming on to the field, India struck hard and deadly with speed star Bhuvneshwar Kumar's deliveries, which rocked Australia's top batting order early.
Opener Hilton Cartwright was bowled at 1 before he could test the pitch in flood lights, and his partner David Warner also followed his path and was caught at slip by Ajinkya Rahane, also at 1, when the visitors were on a single digit score of 9 runs.
The lethal delivery from Kumar was continued but his fielder at close let him feel dejected. Rohit Sharma, who made only 7 runs, was to be blamed as he dropped a catch at first slip when Travis Head was only 15.
Surviving an easy chance made the visitors a bit cautious against the tight bowling of pace duo - Kumar and Jasprit Bumrah - and spinners Yuzvendra Chahal and Kuldeep Yadav.
Coming into pitch captain Steven Smith made Australia's batting a bit steady for some time when the third wicket partnership between Smith and Travis Head fetched 74 runs before the latter departed at 39.
A waist-line full toss from Chahal forced Travis Head to hit hard but unfortunately to the Australian ball came into the safe hands of Manish Pandey at mid-wicket.
Head was in sparkling form but that ended on 39 from as many balls. He hit five boundaries.
Chahal's next victim was hard hitter Glenn Maxwell, who hit two consecutive sixes off Kuldeep Yadav. Maxwell in a mood of hit and run missed a straight
delivery from Chahal and experienced MS Dhoni behind the wicket did the rest, stumping out Maxwell at 14.
Visiting team captain Steven Smith playing his 100th ODI tried his best to steer his side. But substitute fielder Ravinder Jadeja made his presence felt on field when he from nowhere was found running for a high catch and held brilliantly ending Steven Smith's innings at 59 off Hardik Pandya.
It was Smith's 19th half-century in ODI. Smith's 59 runs came from 76 balls with eight boundaries.
Ravindra Jadeja was fielding in place of Kedar Jadhav, who twisted his leg during fielding.
Marcus Stoinis remained not out at 62.
(Reporting by Manik Banerjee)
Support Our Journalism
We cannot do without you.. your contribution supports unbiased journalism
IBNS is not driven by any ism- not wokeism, not racism, not skewed secularism, not hyper right-wing or left liberal ideals, nor by any hardline religious beliefs or hyper nationalism. We want to serve you good old objective news, as they are. We do not judge or preach. We let people decide for themselves. We only try to present factual and well-sourced news.