I do a lot of 3, and occasionally due to headwinds 4, hour legs in a 172. I've got a good IFR machine with coupled autopilot which helps a lot, but yes sometimes it gets long. You will need water (not frozen to keep cool, never had a problem with that at any realistic cruise altitude for a long leg) and you will need a good lightweight headset as they all start to get a little heavy at about the start of Hour Number 3 on the second leg of the day. I never drink coffee or gatorade on a long leg, just water. I don't use oxygen, usually cruise between 6500 and 9500, occasionally higher (or lower) as weather requires but I prefer higher as it's smoother and cooler.
Once in a while I'll stop to pee at an airport somewhere and just walk around for 5 minutes, it helps a lot to keep you alert. It has been known to happen on a deserted county road back in the day - but these days I always use flight following and they ask too many questions about "private unmarked" fields - now I just listen to some good music (that interrupts for the radio) and it's all good. Yes, on the wide-mouth gatorade bottles, I just start with them empty in the airplane. I only need them when I'm water-loaded on takeoff and drinking tea or coffee with a meal, but it does happen once in a while.
Living where I do in west TX, flying west into NM and north into OK like I usually do, one of the biggest issues I run into on long legs is weather. For afternoon flights it's not unusual to make a 50 or 75 mile excursion from great circle route for afternoon thunderstorms. If a cold front is moving through the area don't be too surprised to spend 2-3 hours on the ground waiting for a squall line to pass. It just depends on where you're at, and where you're going.
Longest leg with a passenger was 3:10 and they were hollering for relief. Longest personal leg was 5:40 solo but it was a question of which would give out first - bladder or fuel - it was a close call.