The 35-year-old, who left relegated Fulham last month, is the Australian A-League club's second major signing in a week after David Villa committed to joining on a 10-match guest stint following the World Cup.
Melbourne City coach John van't Schip said Duff would be a terrific example for younger members of the team while still performing on the pitch.
"His career speaks for itself," he said.
"He has achieved almost everything at club level and has been a great player at an international level too.
For the big stories and the banter follow us on Twitter: @tribalfootball