Dedicated IP for Domain mapping

I guess to be able to use the domain mapping plugin in the best possible way, it is necessary to have a dedicated IP for the domain hosting the multisite, ie it is not good enough that your multisite setup lives on a server with a dedicated IP that is shared with other domains.

(I am just trying to confirm my reading of some other material, which seems to be written for people cleverer than me, as I am trying to set up my Pro Site)

  • aecnu
    • WP Unicorn

    Greetings John,

    Thank you for the great question.

    To properly clarify things for you we need to bring in static IP’s. I will try to simplify the concept to the best of my ability.

    The servers around the world with very few exceptions have static IP’s which is an IP that remains the same unchanging.

    It is like a street address for a house or business. This enables domain names to be sent to that “address” so that it can find the correct web site. As with unique real addresses, for the most part no two places can exist at the same place at the same time.

    When someone types in a domain name into the browser, a DNS (Domain Name Server) tells the browser etc. what the “address” of the domain name is, in this case the static IP.

    Domain names are for the benefit and convenience of humans. Whereas in reality the system does not need domain names to operate, the addresses could be addressed using just the static IP, but imagine trying to remember 123.456.789.123 instead of mydomain.com, but the system must have static IP’s to operate.

    So one can think of an IP as an unique address that only one place has and only one place can exist at a time. Domain names are routed through the internet by calling up the address (static IP) resolving the browser to the appropriate place (address)

    In the internet world an address or static IP can be shared by more then one place, that place being a space on a hard disk drive and the server itself knows, through DNS, the places on the hard disk drive which can change but in the servers internal DNS it keeps track of these places. But the internet to work really only needs to know the address (static IP) to get to the server in which the server itself resolves the domain name to the right place on the hard disk drive.

    Now on a server like real estate the hard disk drive is its real estate and an address can be shared by more then one piece real estate but the real estate remains unique to each domain.

    Now comes in dedicated IP. In the event of a dedicated IP this address is unique to the place where no other place on the hard disk drive shares the address – it is an exact place that when the IP is typed into the browser without a domain name the servers know right where to send the browser.

    So the flow goes something like this –> Domain name –> DNS srever determines IP address, sends browser to IP and correct unique server –> server looks at domain name and sends it to the correct real estate on its hard disk drive.

    In the case of shared IP the correct real estate is determined by the server using the domain name. In the case of dedicated IP there is only one piece of real estate possible regardless of the domain name used.

    In summary:

    All server IP’s are static IP or there would be absolute chaos on the internet and it would not work. Then the next thing is dedicated IP or shared IP. Shared IP represents several pieces of real estate on the hard disk drive and the determining factor of which piece is done by the server using the domain name.

    In contrast, a dedicated IP represents a certain piece of real estate on the servers hard disk drive and it does not matter what the domain name is, the same piece of real estate is represented.

    So yes to successfully map domains the end user sends his domain name using the dedicated IP to the Word Press installation and domain mapping determines which piece of real estate the domain lives at, in this case the sub domain/sub folder of the WordPress installation.

    Thank you for being a WPMU DEV Community Member!

    Cheers, Joe

  • John
    • Design Lord, Child of Thor

    Thanks Joe for a thorough explanation!

    Sorry for taking a while before replying, but I have been testing a few things, and needed to wait for some DNS propagation etc before I could post again.

    Well, in a way my original question has become redundant: my host is not keen on giving me another IP just for my multisite; IPs are not that abundant for the moment.

    So I’ll have to use my shared IP for my multisite.

    First a bit of background (all names and IPs have been changed to protect the innocent):

    * I rent a VPS

    * with 3 IPs

    * IP 1.1.1.1 is the IP for all the sites hosted, in other words it is a shared IP

    * IP 1.1.1.2 and 1.1.1.3 are used for my nameservers

    * I use WHM to manage the hosting

    * I am hosting a WP multisite, MULTISITE.COM, using ProSites and Domain Mapping plugins

    * The idea of the multisite is to allow a select group of people to host simple websites and/or blogs

    Now I will present my fictitious customers to get my head around the setup (hopefully for the benefit of some others) and to ask some questions here:

    * Ms Simple who is happy to keep using her gMail account but wants to use her own domain, SIMPLE.COM for her blog at SIMPLE.MULTISITE.COM

    Well, it was simple enough for her to setup her blog at SIMPLE.MULTISITE.COM with the help of ProSites.

    Next thing, she pointed her domain to my VPS using my nameservers.

    Then she logged in to her blog and went to Tools > Domain Mapping and added SIMPLE.COM as the custom domain.

    Then she contacted me and I added her domain SIMPLE.COM as a parked domain to the MULTISITE.COM account.

    All done: all she needs is a domain and one of my blogs, no need to have her own hosting.

    One problem I had was that her domain SIMPLE.COM kept redirecting to SIMPLE.COM/cgi-sys/defaultwebpage.cgi somehow. Finally I was able to solve that by hopping into WHM and by stepping through this process:

    Service Configuration -> Apache Configuration -> Global Configuration -> Save -> Rebuild Configuration and Restart Apache

    That was all simple enough. But then I tried to setup and test for my other fictitious customer:

    * Mr Happy who “owns” HAPPY.COM and wants an email only hosting account for his domain name and who wants to point HAPPY.COM at his blog at HAPPY.MULTISITE.COM

    Because he needs MAIL.HAPPY.COM to work, I created an account for him that only has email but no website hosting.

    I then figured he needs to create some records to point his domain HAPPY.com and W W W.HAPPY.COM to his blog HAPPY.MULTISITE.COM

    And that is where I got stuck. I thought I needed to create

    WWW IN CNAME HAPPY.MULTISITE.COM.

    so I would see Mr Happy’s blog when going to W W W.HAPPY.COM but that is not the case, all I see is the index page of Mr Happy’s account

    Also, going to HAPPY.COM all I get is HAPPY.COM/cgi-sys/defaultwebpage.cgi

    What are the correct records to get HAPPY.COM and W W W.HAPPY.COM to show his blog?

  • aecnu
    • WP Unicorn

    Greetings John,

    The big difference here is that you do not have the domain parked on your server like in the first example and that is probably what prevents it from working correctly because your server needs to be resolving the records pointing at /public_html/ (as shown in the parked domains section) to get this to work as you explained and for WordPress to do the rest of the job resolving the DNS as it sees fit.

    Cheers, Joe

  • John
    • Design Lord, Child of Thor

    Hi Joe

    So if I create a separate account for Mr Happy, it seems impossible to point the www and naked domain of Mr Happy to his blog on my multisite installation.

    So I tries to create a CNAME record like this:

    BLOG IN CNAME HAPPY.MULTISITE.COM.

    Is that the only thing Mr Happy needs to do?

    Since he has his own DNS records, I cannot park or add anything to the DNS of the multisite.

    All I get when accessing BLOG.HAPPY.COM is BLOG.HAPPY.COM/cgi-sys/defaultwebpage.cgi

    Do all your multisite customers need to use either a parked domain at the multisite OR a CNAME record or can there be customers who A records and other who use CNAME records?

  • Aaron
    • CTO

    For root domains an A record has to point to your ip. For www it’s sufficient to have a cname pointing at your root multisite domain.

    Without a dedicated ip or having your multisite domain default for your ip (this might work for you), you will have to manually “park” all domain mapped sites to your multisite vhost.

  • John
    • Design Lord, Child of Thor

    Thanks Aaron

    But I cannot park a domain on my multisite account if that other domain has its own account on my VPS, because there will already be a record for that domain on the http domain configuration?

    Can you explain a bit more what you mean with “your multisite domain default for your ip “?

  • Fullworks
    • The Bug Hunter

    @john,

    You are correct, you can not park a domain on another account that is also set up on the same WHM.

    The setup you have with 3 IP’s is if more than enough for what you want to do.

    You can do it with two IP addresses, this is how I do it

    Ip 1 – 111.111.111.111

    ip2 – 222.222.222.222

    DNS for name servers at the domain registry point each to

    ns1.blah-ns.com 111.111.111.111

    ns2.blah-ns.com 222.222.222.222

    Multi-site – dedicated IP 111.111.111.111

    Rest of shared hosting sites – 222.222.222.222

    This works fine, and then you could modify your shared sites DNS A record to point to 222.222.222.222

    So your multi-site now has a dedicated IP (that is shared with name servers but that doesn’t matter) and your problem goes away.

  • John
    • Design Lord, Child of Thor

    Thanks so much Roibot

    I never knew that I could assign one of the nameservers IPs to one of the hosted accounts. I have 3 IPs, so I now have one for all shared accounts, one for the multisite and one for the main account I use to resell.

    Until now I did not even know that the main account was on one of the nameserver IPs.

    I have now done a bit of testing and it all seems to work a treat. Both A record and CNAME setups work just fine now.

    I can also host an email only account with the mail pointing to the mail server IP and the domain to the relevant account on the multisite.

    Lovely :slight_smile:

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.