There's a difference between unknown and private numbers. Usually, a number is displayed rather than a name if the caller isn't in your list of contacts. With private numbers, the caller's number is hidden (withheld) so you can't see who's calling, nor call them back. They're anonymous. Here we explain how to block private numbers on your smartphone.
How to block private numbers on iOS
The ability to block numbers on an iPhone was added in iOS 7, but it can only stop calls when there's a number displayed.
When you see 'Unknown' displayed, it's usually because the number is being withheld. If the caller chooses to hide their number in this way, there's no option in iOS to block the call. Hopefully Apple will add this in iOS 9.
The only way to stop such calls is to create a whitelist of 'allowable' callers. However, it's a slight risk to block everyone else as you might miss an important phone call or be unreachable in an emergency.
There are some apps which let you block calls from private numbers, but you'll have to jailbreak your iPhone and install them from Cydia. For everyone else, there's no good solution.
You could enable Do Not Disturb permanently and use the 'Allow Calls From' option to only let calls through from numbers in your contacts list. This will stop calls from private numbers, but it will also mean you'll get no alerts or notifications from any other app.
There are certain apps on the App Store which claim to be able to block calls. However, they are generally limited as they can only use the Do Not Disturb feature and not block calls directly.
How to block private numbers on Android
It's much easier to block numbers on Android. Samsung phones, for example, have Blocking mode which lets you easily disable notifications for certain features.
Using this you can block all calls apart from people in your contact list. Unlike in iOS, you can allow notifications and alarms at the same time.
If your phone doesn't have a menu option for call blocking, then just install a free app such as Calls Blacklist. This handy app lets you create blacklists, whitelists and can also stop calls from private numbers.
How to block private numbers on Windows Phone
In Windows Phone 8.1 there's a setting called call+SMS filter. When you first tap this option, you should see a message saying an app is available. Just tap accept to install it.
When this is done, you can create a blacklist by adding numbers to the list of Blocked numbers within the call+SMS filter app.
That's no use for private numbers of course but if you tap the advanced button, you'll find an option to 'Block withheld numbers'. With this turned on, you won't be disturbed by callers who hide their number.