What you need to do is to create a wildcard URL route
var route = routes.MapRoute(
name: "NodeAliasPath",
url: "{*url}",
defaults: new { culture = defaultCulture.Name },
constraints: new { url = new PageFoundConstraint() }
);
And in the PageFoundConstraint you need to find your page by the url. You can look at the implementation of dynamic routing modules I mentioned above, it should give you a good start.