The 190-pound catchweight contest will be held June 23 in Belo Horizonte, Brazil.
Silva (34-11-1, with one no contest) was originally scheduled to meet Vitor Belfort at 185 pounds in the card's headliner, but a hand injury forced Belfort out of the bout.
Silva and Belfort are coaches on "The Ultimate Fighter: Brasil."
The two met Oct. 16, 1998, in a light heavyweight fight. Silva was knocked out by Belfort in the first round.
A former Pride 205-pound champion, Silva has not fought in that weight class since Dec. 27, 2008, when he suffered a first-round knockout loss to Quinton Jackson.
Silva is 2-1 as a middleweight. He meets Franklin for the second time in a catchweight fight.
They did battle in a 195-pound catchweight bout on June 13, 2009, at UFC 99. Franklin beat Silva by unanimous decision in a bout that earned Fight of the Night honors.
A former UFC middleweight titleholder, Franklin has not fought at the 185-pound limit since his second-round TKO of Travis Lutter in April 2008.
The fight with Silva will be Franklin's third catchweight bout since leaving the middleweight division. His most recent catchweight fights were held at 195 pounds.
Franklin has a professional mixed martial arts record of 28-6 with one no contest.