If you use a single control to add link reference it would not be so hard. You have to loop through pages collection ( CmsManager.GetPages()) and then controls collection searching for a control of a certain type. Then you have to cast the control to ICmsWebControl and call LoadControl(). Afterwords you can access a public property that is used for setting the link and check whether this page exists or not.
If you do not use a certain control you have to use the same procedure as above, but loop through all controls and all properties.
Both the ways will kill your performance and this should be some scheduled service that is executed once a day. The service will send you report with all broken links that you should fix.
Another option is to implement this on control level and upon saving /editing to check for broken links, but this will consume time, before you need to make a check inside some content or for a given property.
All the best,
the Telerik team
Do you want to have your say when we set our development plans?
Do you want to know when a feature you care about is added or when a bug fixed?
Telerik Public Issue Tracking
system and vote to affect the priority of the items