Instead of a shortcodeInstead of a shortcode, you could also write a filter which finds all links, and if they are "local", checks their status by slug, and possibly removes them.
The advantage is that the end-user doesn't have to worry about shortcodes or special redactor-buttons.