In the case of Falcon 9 / Orbcomm OG2 launch from SLC-40, Cape Canaveral Air Force Station, FL that's now scheduled for Dec. 20th at 8:29 p.m. EST (01:29 a.m. UTC), according to Spaceflight Now:
Sources said only an instantaneous launch opportunity is available
Sunday due to restrictions imposed by the Federal Aviation
Administration, which may be hesitant to re-route holiday week air
traffic around the Cape Canaveral launch base for several hours in
case of launch delays.
So in this case it's range imposed restrictions. On top of other answers in this thread, here are some others that are related:
So to recap, and adding a few points to what has already been previously discussed, possible restrictions could be:
- Range: Launch times have to be coordinated with other local and sometimes international air and maritime authorities to redirect traffic along the route that a launch vehicle would take, and safety exclusion zone has to be cordoned off for debris and returning stages along its ground track. This requires a lot of coordination and scrambling of hardware that has to happen prior to launch and for the duration of its launch window and then some until the range is cleared after the last launch opportunity.
- Tracking: Time of onsite and downrange tracking facilities needs to be allocated, and temporary permissions to use frequencies used for telemetry and other broadcasts need to be acquired. Since these are shared resources, operators and authorities might only allocate short time slots to support the needs of your operation. This might also depend on availability and accessibility of orbital facilities, like TDRS.
- Target: Oftentimes a launched spacecraft will either chase another vehicle in orbit for rendezvous and both vehicles' orbital phases have to align over the launch site, or the vehicle will target a specific local time-dependent orbit like SSO or specific orbital plane on interplanetary trajectory as the Earth rotates on its axis. Suborbital launches might also target specific phenomena like auroras as they occur.
- Weather: Some launch sites (and especially Florida) have predictable weather cycles and specific times of the day or night could be targeted for launch to maximize the chance that weather cooperates and meets launch criteria. Depending on the time of the year, there might also be only a limited period of time when environmental constraints (like temperature, humidity) stay within safety threshold.
- Payload: Some payloads (e.g. small live cargo) can only be supported on the pad for limited periods of time, especially those that in any way rely on limited life support provisions or internal power and for whichever reason can't be connected with umbilicals externally for power and supplies, or the fairing sufficiently ventilated to prevent hazard of bled off propellants, and similar.
- Launch hardware: Some facilities and the launch vehicle itself might only be capable of continuous support on the pad and once fueled for a very limited period of time, like e.g. high pressure pumps, cryogenic storage, ability to purge bled off propellants, ice condensing on cryogenic surfaces, and so on.
- Collision avoidance: Launched object will intersect air and orbital space of other aircraft, satellites and orbital debris, so conjunction assessment (CA), collision avoidance (COLA), and likely launch collision avoidance (LCOLA) procedures will have to be done to avoid that. Since that requires awareness of flight paths, activities and orbits of classified objects, it is done (in US) on request through Joint Space Operations Center, part of Joint Functional Component Command for Space of US Strategic Command. See AFI91-217 (PDF) for more info. These analyses may give recommendations and limits with regard to launch window and assumed trajectory, but they won't specify reasons for them, so you might not know why your launch window might be instantaneous even if you'd otherwise be ready to launch during a longer launch window.
- Other: Eventually, people will want to go home and return to their families, and sitting in constant readiness for hours on end isn't easy. It might be more prudent to split launch opportunities into smaller chunks of up to some number of hours per day, than to increase risk of human factor affecting safety. Theirs and the launch vehicle's.
Additionally, in our specific case and if I'm allowed a bit of conjecture, SpaceX is with Orbcomm OG2 launch both returning to flight after a RUD (rapid unscheduled disassembly) event during the CRS-7 launch, and they're doing this with an upgraded launch vehicle (Falcon 9 v1.2) that uses higher propellant density and deep cryogenic liquid oxygen (which, according to Elon Musk himself, is a bit of a challenge). They might have estimated that if they'll have to hold the launch for whichever reason, there's a good chance they would have to scrub it for the day and have only requested a very short opportunity to launch. If they're working with some quota (by any authority or service, from FAA, FCC, USCG, MARAD, AST, JSpOC, Space wing, TDRS, Bermuda downrange tracking station,...), and their customer isn't pushing for launch as soon as possible, it makes sense not to upset the deities with unreasonable demands that might not be met, or indeed needed.
Just for reference, here are the safety zones (Launch Hazard Area and Airspace Closure Area, respectively) and their schedule for Dec. 20th launch attempt, announced by 45th Space Wing, Patrick Air Force Base:

Interestingly, issued documents list launch window of 26 minutes for 20th:
- 20 Dec 2015 8:29pm - 8:55pm
- 21 Dec 2015 0129Z – 0155Z
That's the same launch window, just in local EST (Eastern Standard Time) time zone followed by "Zulu" time (today, just a military way of saying UTC really). Just announced launch webcast is also an hour long, ending 31 minutes after the instantaneous launch on 8:29 p.m. EST (1:29 UTC), which would be unusually long for SpaceX hosted webcasts if they really stayed on-air for that long after liftoff. Unless it was a CRS launch to ISS for NASA, they would usually wrap up minutes after second stage separation. I'm not exactly sure what to make of this, but all that talk of instantaneous launch might have been for naught. I couldn't find any official word on it, not from SpaceX and neither from Elon Musk that tweeted all the updates.
26 minutes long launch window would permit for up to two countdown clock recycles of 13 minutes that were usual during previous SpaceX Falcon 9 launches with vehicle's terminal countdown of 10 minutes, so possibly up to three attempts to launch on that same day, assuming no issues are worked on that extend the hold (like issues with the vehicle or a boat breaching the safety exclusion zone which did happen before and even resulted in a parody Twitter account).
Just another quick update that an announcement of tomorrow's launch now appeared also on SpaceX pages and it reads (emphasis mine):
SpaceX is currently aiming for a December 20th launch of the Falcon 9
rocket, carrying 11 satellites for ORBCOMM. The launch is part of
ORBCOMM's second and final OG2 Mission and will lift off from SpaceX's
launch pad at Cape Canaveral Air Force Station in Florida. This
mission also marks the first time SpaceX will attempt to land the
first stage of the Falcon 9 rocket on land. The landing of the first
stage is a secondary test objective.
The launch webcast is targeted to begin at 5:05pm PT with liftoff at
5:29pm PT. The launch webcast can be viewed at spacex.com/webcast.
For updates, visit www.spacex.com and www.orbcomm.com.
So here's another explanation, that the launch might still be instantaneous and those 26 minutes are now allocated for both launch of Falcon 9R from SLC-40 and landing of its first stage at Landing Complex 1. How cool is that?