Dravid's 17th Test century helped the tourists to post 342 for four by stumps on the second day in reply to Pakistan's first innings total of 224 - giving them a first innings lead of 118 with six wickets in hand.
Dravid, nicknamed the 'Wall' for his tenacity, batted the whole day through on a wicket that became easier to play on than on the opening day, when Pakistan's batters had been skittled out for a modest total.
He came to the wicket late on Tuesday evening after the first ball dismissal of Virender Sehwag and his unbeaten seven-hour effort contained 19 boundary-finders.
Dravid put on 129 for the second wicket with Parthiv Patel (69), 131 for the fourth with Venkatsai Laxman (71) and 81 for the unbroken fifth with captain Sourav Ganguly on Wednesday.
Ganguly, unbeaten on 53, built on Patel's career-best knock and Laxman's contribution as the Pakistani bowlers wilted under the hot sun at the Rawalpindi stadium.
Paceman Shoaib Akhtar was the pick of the bowlers with 3-47 before falling on his follow through in his 22nd over and retiring hurt with a swollen left hand.
Dravid was somewhat lucky to survived after two close calls in the post-lunch session.
When on 71, Yasir Hameed put down a simple catch at point off the bowling of Mohammad Sami as Dravid tried to cut a short ball.
Six runs later, third umpire Zamir Haider of Pakistan gave Dravid the benefit of the doubt when asked to adjudicate on a close bat-pad catch off Danish Kaneria.
Patel and Dravid, who resumed at the overnight score of 23 for one, batted through the morning session to go to lunch at 119 for one.
Patel was given the task of opening the innings for only the second time in a Test match after Ganguly made a late decision to keep himself and Yuvraj Singh in the middle order.
The young man responded well, holding the fort for more than three hours to register his third Test half-century.
Pakistan hit back soon after lunch with the wickets of Patel and Sachin Tendulkar in the space of seven deliveries.
Patel's defiant knock ended when he was caught behind by wicketkeeper Kamran Akmal off seamer Fazl-e-Akbar.
In the next over, Tendulkar (one) edged a snorter from Akhtar to Akmal as India slipped from 129 for one to 130 for three.
Tendulkar, who hit an unbeaten 194 in the first Test at Multan, managed just 11 runs in his next three innings.
It was Laxman's turn to take over from Patel as he stroked fluently on both sides of the wicket before an Akhtar full toss with the second new ball swung in the air and shattered his middle stump.
India won the first Test at Multan by an innings and 52 runs and Pakistan drew level at Lahore last week with a nine-wicket triumph.