Pull the big connector off at the control module (located behind passenger kick panel), I've seen a number of them that get corrosion on one terminal... one of the corner ones. You can try cleaning it up and applying some dielectric grease, that usually makes them work for a while... probably until you need the 4x4
Also, check that the vacuum hose gets vacuum to it after the solenoid (located on firewall, or if the clip is broken, hanging somewhere near it). If not, check that the solenoid gets power to it when 4x4 is commanded on.
I also saw one that had a sticking actuator in the differential, so if you get vacuum to the servo, make sure that it pulls the cable and make sure the cable isn't broken.