Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

What would be the easiest way (and least "visible" to end-users) to make an arbitrary url route to an internally hosted page.

Example: Users opens browser of choice and types "orders" in the url bar, excluding quotes. How would I make that route to a webserver on the same network (all behind a single router)?

Would this involve making a local DNS server?

Thanks!

share|improve this question

migrated from stackoverflow.com Oct 4 '11 at 15:27

This question came from our site for professional and enthusiast programmers.

1 Answer 1

up vote 0 down vote accepted

DHCP already supplies computers with your local domain, which is already automatically used for domain name queries by your network stack.

For example if you connect to the foo.edu network, and there is a server named example, then typing example in the URL bar would go to example.foo.edu. This should already work on for all computers.

Thus you'd need to ask the web administrator of foo.edu (in this example) to create the appropriate domain name (CNAME) record via whatever interface he or she uses to add a new server to the network, and point it at your server.

This seems like a bad idea though, since it would require changing your network geography whenever you want to implement (or change the name of) what is nothing more than a webpage! This is what URLs are for (though clicking on a link on the page would take you to orders/mylink). If you already have various servers under appropriately-named second-level domain names, then I might consider this. However if you are thinking of making many of these things, you just want a simple website.

original poster comment: I'm not an expert by any means. I'm setting up a simple internal form for the company I work with (I'm the guy that knows a little bit about computers, therefore I must know all, of course). The form is just to record orders we place with online merchants - Amazon, Newegg, etc - so that our accounting is easier. The guy in charge didn't want to use google docs (my suggestion), so I'm stuck trying to figure out how to make the url/ip memorable so that people will actually use it.

I described how to do so assuming there was a sysadmin in charge. (I would recommend your company hire a sysadmin if the boss feels they've moved beyond the level of Google Docs.)

Anyway, below is how I would do it with minimal experience and insufficient research; if my job or people's information was on the line I'd want to make sure it's reasonable and secure; don't blame me if there's an issue =).

Method #1:

  • Edit the settings of your router (the thing which does DHCP), and make internal.company.com point to 192.168.....; it may not have this feature.

Method #2:

  • Edit the settings of your router (the thing which does DHCP), and add a customer nameserver as nameserver #1. You will need a secure computer or virtual machine to be running this service, and to set up a barebones system from scratch. This may be a lot of work.

Method #3:

  • Modify each computer on the network using bind (or the equivalent Windows GUI machinations) so that every computer on the network knows that internal.mycompany.com points to 192.168.... New computers will not know this address exists until it is done, and is hackish and requires maintenance.
  • (Security consideration: like all other methods, you can still access the web server with http://192.168....)

Method #4:

  • Perhaps the registrar you are using (think "GoDaddy" and the like) will allow you to point internal.mycompany.com to [192.168...]. WARNING: This seems hackish and I have no idea if this will work, or the implications of it.
  • (Security consideration: If hackers control a server owned by an ISP, they will know that internal.mycompany.com exists and the internal network address you use to refer to it. This may or may not be relevant depending on whether you feel security by obscurity is a valid tactic.)

Security considerations for all of these:

  • Don't serve your internal company documents to the outside world; the ways to reduce an accident happening include requiring authentication, and maybe a firewall rule (actually the latter isn't that necessary because by default people can't see inside your network, and isn't good because someday something might happen to the firewall).
  • There are a whole slew of other security considerations.
share|improve this answer
    
Okay. So I thought that would help, but it isn't working yet. For example, say I have a webserver running at 192.168.1.110 (all on the 192.168.1.xxx part) that I normally get to by typing 192.168.1.110/index.html. Is there anyway to get index.html to just route to that ip without having to update the hosts file? –  James Oct 4 '11 at 12:12
    
No offense but that's a terrible idea; servers exists for a reason, and no one will remember arbitrary URLs they must manually type. In fact, web browsers will refuse to do what you are proposing because it goes against every single HTTP specification since the internet was invented. If you really want to do this, you should create your own browser which assumes that whatever someone types into the URL begins with 192.168.1.110. Even then, no one would want to use the software; you do not want to do this. You also do not want to be using numerical IP addresses. What are you trying to do. –  ninjagecko Oct 4 '11 at 18:51
    
No offense taken, I'm not an expert by any means. I'm setting up a simple internal form for the company I work with (I'm the guy that knows a little bit about computers, therefore I must know all, of course). The form is just to record orders we place with online merchants - Amazon, Newegg, etc - so that our accounting is easier. The guy in charge didn't want to use google docs (my suggestion), so I'm stuck trying to figure out how to make the url/ip memorable so that people will actually use it. –  James Oct 10 '11 at 13:22
    
@James: "Is there any way to get index.html to just route to that IP without having to update the hosts file?" While it is unreasonable to get index.html to route to that IP (it's not even well-defined), it's perfectly reasonable to get "orders" to route to that IP. I recommend that you instead set all homepages to an internal company webpage that is only visible in the local network (which has good security safeguards in place to prevent information leak of sensitive data from a virus in the network, i.e. only shows the information to the people who need it). [continued] –  ninjagecko Oct 11 '11 at 17:05
    
I'm actually going to modify the answer. –  ninjagecko Oct 11 '11 at 17:19

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.