Links to other Tridion items must be "managed", i.e., they have to be identified to Tridion as an xlink object rather than just an href. If you look at how Tridion Component Links are created in a rich text field, you'll see that they're stored as:
<a xlink:href="tcm:123-132">Some text</a>
Tridion then has enough information to convert this to a dynamic link.
There are quite a few constraints about which items you can link to, the most important ones being:
- You can only link to other components (or keywords, but that's a different use case)
- You can only link to other items in the same publication
This means that if you try to store a page link using the above convention, something like this:
<a xlink:href="tcm:123-22-64">some text</a>
Tridion will not allow it, because it fails validation of constraints shown above.
The correct way to do linking in Tridion is to point to the content that you want to link to, and ignore the container (the page). Tridion will make sure the link points to a page that contains the content you're linking to.
If you really really really absolutely 100% must link to a page, then you should consider the usage of dummy components that exist only in one page and have no real output. These could be used as pointers to those pages.
But do keep in mind why linking works this way: authors should link to content, not to pages. You want to drive your visitors to go a certain piece of content, not to a specific page whose content may change regularly.
Using Component Linking will also make your editors lives incredibly simple if they need to re-arrange the site structure (which does tend to happen more regularly than people think it will).