India has reported its highest number of coronavirus cases in four months amid a worrying surge that has prompted multiple states to return to some form of restrictions on public gathering.

The Health Ministry on Sunday reported 43,846 new cases in the past 24 hours, the worst single-day increase since mid-November.

The central Maharashtra state, home to India's financial capital Mumbai, accounts for more than half of the new infections. The state has imposed a lockdown in some districts until the end of the month and authorities in Mumbai city said they will roll out mandatory random coronavirus tests in crowded places.

According to the ministry, seven other states have been reporting a surge in new cases from the last week, leading some to reimpose containment measures, including focused lockdowns and restaurant and school closures.

India has so far reported more than 11.5 million cases of coronavirus infection, the world's third-highest total after the United States and Brazil. The cases had been falling steadily since a peak in late September, but experts say increased public gatherings and laxity toward public health guidance is leading to the latest surge.

The government has announced plans to inoculate 300 million people by August. But only 44 million have been vaccinated so far, 7.4 million of them partially.