Argentina visit Ecuador at high altitude in Quito in the final round of matches on Tuesday while Peru, who are hoping to go to the finals for the first time in 36 years, host Colombia in Lima.
Brazil have already qualified for Russia on 38 points, while Uruguay (28) need just a draw from their final game against Bolivia to advance. Chile are third with Colombia fourth, both on 26 points.
Argentina have struggled for goals in a poor qualifying campaign in which they have been under three coaches.
But it was not for want of trying, with Messi hitting the post, that they ended up with a third successive draw in qualifiers under Jorge Sampaoli.
Argentina had the lion's share of possession and chances although good ones were scarce.
Messi had a shot from a corner taken by Angel Di Maria deflected wide by goalkeeper Pedro Gallese early in the first half and later skimmed the outside of the post with a shot from the edge of the box.
In between, Peru might have taken the lead but Jefferson Farfan put the ball outside the near post from a low cross from the left. Argentina should have gone ahead in first half stoppage time when Messi lifted a looping cross into the box but striker Dario Benedetto headed the ball over the bar.
Lionel Messi v Peru
Image credit: Getty Images
Right from the restart, Argentina could have scored from two good chances.
Messi hit the post after picking up a rebound off Gallese and the goalkeeper soon after leapt to save a long range effort by Lucas Biglia.
Gallese also saved at point blank range from Papu Gomez and substitute Emiliano Rigoni was also wide after a run by Messi.
Boca Juniors midfielder Fernando Gago came on for Ever Banega after an hour but lasted less than 10 minutes before twisting his knee and having to be replaced by Enzo Perez in Sampaoli's last possible change.
Peru striker Paolo Guerrero almost snatched a goal at the death with a free kick that Sergio Romero tipped over his bar.