India will kickstart the season against New Zealand with three Tests and five one-day internationals, the Board of Control for Cricket in India (BCCI) said.
England then arrive for five Tests and six limited-overs matches, while the Australia series is scheduled for February and March next year.
Bangladesh will also play a one-off Test during the season, their first such outing in India since they gained Test status in 2000.
Thakur eyes top spot for women
The cities of Rajkot, Visakhapatnam, Pune, Dharamsala, Ranchi and Indore will host Test matches for the first time, the BCCI said after a meeting in Mumbai.
"I welcome the new Test venues... their arrival will take Test match cricket to every corner of the country," BCCI president Anurag Thakur said in a statement.
India will play 13 Tests in total during the season, the most since the 1979-80 home season, along with eight ODIs and three T20 internationals.
Anurag Thakur becomes youngest BCCI president
The BCCI also said the domestic Duleep Trophy tournament in September will be played under lights and with a pink ball for the first time in the country.
Australia and New Zealand played the inaugural day-night Test in Adelaide last year, attracting huge crowds.
COMMENTS
Comments are moderated and generally will be posted if they are on-topic and not abusive.
For more information, please see our Comments FAQ