Are the links clickable from your application or in a text field on another page, or do visitors need to type them in manually?
Because the easiest way around it is to urlencode that portion of the query string and link to that. That way you could put any kind of character in the url without it braking anything.
Just when there is both a . and : it throws a 404.
Would it be possible to use web server config to handle the URL? URLs containing an IP address and port are a very essential part of this project. I don't expect users to type %3A.