Angola’s slim hopes of reaching the knockout phase were shattered as Iran came from behind to share the points in Leipzig.
The African side led briefly in the second half through Amado Flavio’s header, but Sohrab Bakhtiarizadeh ended their hopes by nodding in an equaliser 16 minutes from time.
Angola started the match knowing a 2-0 win, coupled with a similar result for Portugal against Mexico, would see them through to the next stage.
Although things were looking good for Angola early on when news filtered through of Portugal taking an early two-goal lead against Mexico, it was Iran who looked more likely to score in the first half.
Veteran striker Ali Daei, possibly playing his last match in national colours, had a marvellous chance to give the Iranians the lead, but somehow he headed over with the goal at his mercy.
Vahid Hashemian also went close for Iran when his header was cleared off the line by Mendonca, while Andranik Taymoorian forced a smart stop from Joao Ricardo.
Angola also had their chances, with Fabrice Akwa twice volleying over and Ebrahim Mirzapour was at full stretch to deny Arsenio Love’s venomous drive.
The stalemate was finally broken on the hour when substitute Flavio headed past Mirzapour to give Angola a whiff of an unlikely upset. At this stage, Mexico were trailing 2-1 to Portugal so a goal in either game could have sent the African side through.
Mendoncacame came close on a couple of occasions, but it was Iran who were to score the next goal when Bakhtiarizadeh rose unmarked at a corner to head them level and earn a point.
Iran: Mirzapour, Bakhtiarizadeh, Rezaei, Kaabi, Nosrati, Mahdavikia, Zandi, Teymourian, Madanchi, Hashemian, Daei.
Subs used: Shojaei 13 (for Nosrati), Khatibi 39 (for Hashemian), Borhani 67 (for Kaabi).
Bookings: Madanchi 37, Teymourian 55, Zandi 90.
Angola: Joao Ricardo, Jamba, Kali, Loco, Delgado, Miloy, Figueiredo, Mateus, Mendonca, Ze Kalanga, Akwa.
Subs used: Love 23 (for Mateus), Rui Marques 72 (for Figueiredo)
Bookings: Loco 21, Mendonca 45, Ze Kalanga 67.
Referee: Mark Shield (Australia)
Angola: Flavio 60
Iran: Bakhtiarizadeh 76