I think this may not be possible because of the way the TCP/IP protocol defines packets, but I figured I'd ask.
Some sites, such as those on shared servers, use the same IP and the server delivers the site based on the hostname/URL requested. In this situation, doing a DNS lookup of the site IP and going to the IP directly will usually deliver some other content that is not the site with the given hostname.
Is there a way to have it both ways and request a site using the IP address but have the request still show the hostname/url so that the server on the other still handles the request as though you provided the URL and it was resolved via DNS?
The specific use case for me is a private DNS server being down so my browser can only access via the raw IP (which I have backed up) but the site needing the URL to deliver the correct content. However I think just knowing this is possible is interesting on its own and the technique worth knowing in general.