Most players can redeem a no deposit bonus from where they live, but some of the casinos have restricted players residing in certain countries from taking advantage of their free bonuses. Some of the countries in Eastern Europe, Africa, and the Middle East are often restricted from taking the free bonuses due to heavy bonus abuse coming from those regions. Make sure to check the terms & conditions for the no deposit bonus to see if your country is on the list of excluded countries. Some casinos are very strict when it comes to their bonuses.
Some of the online casinos are focused on only a handful of countries, and their no deposit bonuses can only be redeemed from players in those regions. Any players from outside of the targeted regions would only be able to take advantage of their deposit bonuses. Online casinos that use the Netentertainment casino platform are often targeting a select number of countries in Europe with their no deposit bonuses.
Also, you'll find that some of the land-based casinos in the United Kingdom that have online operations are only targeting UK players with their no deposit bonuses. It may not always be evident when you see the bonus promotion, but its usually mentioned in the terms and conditions.