In his 61 Tests, India vice-captain Rahane was neither run out himself, nor was his partner caught short of crease during a stand.
Rahane notched up his 11th Test hundred on Sunday, his first at home since scoring 188 against New Zealand in Indore in October 2016.
The Mumbai batsman got out for 115 off 192 balls, his innings laced with 17 fours and a six, while Rohit struck his maiden double century in Test cricket -- 212 off 255 balls -- as India declared at 497/9.
The pair joined hands on Day 1 when India were in a spot of bother at 39/3. It was from there on that the Mumbai batters stemmed the rot and took India to a strong position by milking South Africa bowlers around.
Before bad light brought an early end to the second day's play, South Africa were reduced to 9/2 with skipper Faf du Plessis (1 batting) and Zubayr Hamza (0 batting) at the crease.