Bodin was in the final year of his current deal but has agreed new terms to take him through to the summer of 2021.
The 27-year-old had been in negotiations for a while with North End and was pleased to get the contract tied up.
Bodin said: "It is something that me, my family and the club have been trying to get sorted for a while, so to get it done is great.
"On the pitch it is going fantastically well. The lads have been doing great this season and I can’t wait to try and get back in the team and focus on the league.
"I think I have only shown glimpses of what he can do and have picked up a few niggles this season, so now I want to try and show the fans what I can do and be as consistent as I can, either creating or scoring goals."
Bodin, who has won one Wales cap, was a £500,000 buy from Bristol Rovers in January 2018.
He made 19 appearances for PNE in the second-half of the 2017/18 campaign but then suffered a ruptured cruciate ligament in training in July 2018 and missed all of last season.
After an impressive pre-season this year Bodin has played eight games this campaign, scoring twice.
For last Saturday's 3-2 win over Blackburn Rovers he returned to the squad on the bench after being absent with a calf strain.