You're not passing the NodeAliasPath paramater you are creating into anything.
A normal routing is set up something like this:
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
Not sure how your controller is set up but I would imagine you would need to do something like this:
routes.MapRoute(
name: "Default",
url: "{ NodeAliasPath }",
defaults: new { controller = "universal", action = "Index", NodeAliasPath = UrlParameter.Optional }
);
This will pass the entire URL into your controller.