Well, you can register a .co.uk domain even if you are not UK Citizen. However to register .ca domain there are few restrictions. You must satisfy the following conditions in order to register .ca domain:-
- Canadian Citizen
- Corporation (Canada or Canadian province or territory)
- Permanent Resident of Canada
- Government or government entity in Canada
- Canadian Educational Institution
- Canadian Unincorporated Association
- Canadian Hospital
- Partnership Registered in Canada
- Trade-mark registered in Canada (by a non-Canadian owner)
- Canadian Trade Union
- Canadian Political Party
- Canadian Library, Archive or Museum
- Trust established in Canada
- Aboriginal Peoples (individuals or groups) indigenous to Canada
- Indian Band recognized by the Indian Act of Canada
- Legal Representative of a Canadian Citizen or Permanent Resident
- Official mark registered in Canada
- Her Majesty the Queen
These are known as Canadian Presence Requirements (CPR) for registrants.
Registering a domain with TLD's like .co.uk, .ca or any other will definitely help you to get the traffic from that area or nation however if you wish to get the traffic across the globe it is recommended to register domain with TLD's like .com, .net etc
