According to users over on Apple’s support forums there is a bug that has been around since the first generation iPhone with the 1x software.
Users that are on the 3.1.2 software are even complaining that they are also having to suffer their iPhones being without service while the phone searches for a signal.
The bug isn’t fussy and it seems it doesn’t matter which carrier you are with or whether your device is jailbroken or not or even what model you happen to be using. Apparently you can get round the bug by holding down the power button together with the home button until you have the Apple logo appear, once rebooted your service should be restored. Source – theiphoneblog.com