Sol Campbell signs for Newcastle
Campbell, 35, joins the newly promoted club after less than a year with Arsenal, his second spell with the Londoners in a career which has spanned four clubs before Newcastle and has seen him win 73 England caps.
"At this stage I couldn't have wished for a better move," Campbell, who will wear the No 5 shirt at St James' Park, told the club website.
"I'd like to thank (manager) Chris Hughton for putting his faith in me and aim to repay him and the supporters by giving everything I possibly can to help re-establish this great club in the top-tier of English football.
"I just want to play and can't wait to get started."
Campbell, who appeared in six consecutive major international tournaments for England between 1996 and 2006, began his career at Tottenham before moving to Arsenal and then Portsmouth.
He has won two Premier League titles, four FA Cup winner's medals and one League Cup winner's medal.