Get the most out of your Centmin Mod LEMP stack
Become a Member

Domains DNS Cloudflare Cloudflare Domain Registrar Transfers Reduced My Costs By 37% !

Discussion in 'Domains, DNS, Email & SSL Certificates' started by eva2000, Nov 17, 2018.

Thread Status:
Not open for further replies.
  1. eva2000

    eva2000 Administrator Staff Member

    37,230
    8,134
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +12,523
    Local Time:
    6:36 PM
    Nginx 1.15.x
    MariaDB 5.5/10.x
    Privacy and security focused Cloudflare Domain Registrar with cost based pricing was announced during Cloudflare's 8th birthday week list of announcements and is currently in early access testing phase. I currently have 6x XYZ domain extensions up for renewal next month at Namecheap, so thought I'd test out Cloudflare Domain Registrar's domain transfer process and see how much I can save at cost based domain pricing for XYZ domains.

    For Cloudflare Domain Registrar documentation and FAQ outline check out the official docs here.

    Cloudflare Add New Sites



    For this domain registrar transfer process, I signed up a separate and new Cloudflare account. You don't need to sign up a new Cloudflare account, you can use your existing account if you want. I just prefer Cloudflare free Universal SSL certificates listed domains to be grouped by specific Cloudflare account's associated nameservers.

    To meet Cloudflare Domain Registrar requirements, need to first have the intended domains being transferred running using Cloudflare's own DNS nameservers before initiating the domain registrar transfer process. I used Cloudflare's API to bulk add the intended domains to my newly signed up Cloudflare account's global API key. You could of course just do manual add site process for Cloudflare account too but it would be more time consuming if you have dozens or hundreds of domains to add compared to using Cloudflare API to bulk add all domains.

    To do this I'd need access to SSH terminal of a server or local computer and first export Cloudflare API key and user variables and install jq package. This was done on CentOS 7 server
    Code (Text):
    yum -y install jq
    export [email protected]
    export CF_API_KEY=abc123def456ghi789
    

    Then setup domains.txt file with one domain per line for domains you intend to setup initially for Cloudflare account
    Code (Text):
    touch domains.txt
    

    add to domains.txt file one per line, the intended domains you want to transfer to Cloudflare Domain Registrar
    Code (Text):
    domain1.xyz
    domain2.xyz
    domain3.xyz
    domain4.xyz
    domain5.xyz
    domain6.xyz
    

    Add domains in domain.txt to your Cloudflare account via CF API and populate json output into result.txt text file
    Code (Text):
    for domain in $(cat domains.txt); do \
      curl -X POST -H "X-Auth-Key: $CF_API_KEY" -H "X-Auth-Email: $CF_API_EMAIL" \
      -H "Content-Type: application/json" \
      "https://api.cloudflare.com/client/v4/zones" \
      --data '{"name":"'$domain'","jump_start":true}' | tee -a result.txt; done
    

    You will be able to see pretty json output for populated result.txt file using command
    Code (Text):
    cat result.txt | jq
    

    You will be able to inspect and extract the Cloudflare DNS nameservers via the result.txt file contents. The outputted DNS nameservers are the ones you need to update with their existing domain registrars for each intended domain you want to transfer to Cloudflare Domain Registrar for this Cloudflare account.
    Code (Text):
    cat result.txt | jq -r ".result.name_servers[]" | head -n2
    

    Example output for the above command
    Code (Text):
    cat result.txt | jq -r ".result.name_servers[]" | head -n2
    arch.ns.cloudflare.com
    nelly.ns.cloudflare.com
    

    You will also be able to use the result.txt info to extract the Cloudflare zoneid and domain name if for your records if you intend to further use the Cloudflare API to work with specific domains as you need the zoneid
    Code (Text):
    cat result.txt | jq -r '.result | "\(.id) \(.name)"'
    

    so something like this will be outputted
    Code (Text):
    cat result.txt | jq -r '.result | "\(.id) \(.name)"'
    yourzoneid1 domain1.xyz
    yourzoneid2 domain2.xyz
    yourzoneid3 domain3.xyz
    yourzoneid4 domain4.xyz
    yourzoneid5 domain5.xyz
    yourzoneid6 domain6.xyz
    


    Cloudflare Domain Registrar Transfer Process



    Now wait for each domain's listing in your Cloudflare account to go from nameserver pending to Active status - you may need to wait up to 24hrs for Cloudflare to detect the DNS nameserver changes for each domain you intend to transfer over. Once updated, you will see the listed domains marked as = Active

    cf-account-listed-domains-01.png

    If you have been granted early access to Cloudflare Domain Registrar, you will see on Cloudflare Account Home page a top navigation link to the far right for = Domain Registration. This is where you initiate your domain transfer request process.

    The usual process for domain transfers is that you unlock your intended domains from existing domain registrar and obtain an EPP authorisation code first. You can see specific instructions for common domain registrars at Transfer Instructions - Cloudflare Registrar.

    For my particular case of transferring domains from NameCheap to Cloudflare Domain Registrar, I followed instructions outlined at Namecheap - Cloudflare Registrar.

    For my 6x XYZ domains, cost based pricing is US$8.00 per domain with US$0.18 ICAAN fee per domain, so total cost is US$8.18x6 = US$49.08. Remember to add a payment method to be able to proceed.

    Note, the page mentions you can turn off auto-renew on the Overview page - but it seems to be missing for me right now. Cloudflare says this feature is currently in staging slated for release next week :)

    cf-domains-registrar-transfer-01.png

    Next is to confirm the domains and go to next step to enter EPP authorisation codes you obtained from your existing domain registrar.

    cf-domains-registrar-transfer-02.png
    cf-domains-registrar-transfer-03.png

    Then after confirming the authorization codes, you will need to enter in contact information to confirm and finalize the domain transfers to Cloudflare Domain Registrar. Note you can't leave Organization field blank as the confirm and finalize button is greyed out until that field is populated. For that I just added my first and last name.

    cf-domains-registrar-transfer-04.png

    Once you click confirm and finalize transfer you will get to the completion page

    cf-domains-registrar-transfer-05.png

    and then receive separate emails for each domain you're transferring confirming the domain transfer request and the domain transfer initiated processes

    cf-domain-transfer-requested-email-01.png

    cf-domain-transfer-initiated-email-01.png

    Now to wait for the form of authorization emails to come in via your domain's existing domain registrar contact email address for you to approve the initiated domain transfer to Cloudflare Domain Registrar.

    On the Domain Registration page it will show status of transfer but confusing text is for
    When in fact we're waiting on this form of authorization emails and clicking the approval links.

    cf-domain-transfer-status-01-pub.png

    Cloudflare Domain Registrar Transfer Process Completion



    I approved all 6x form of authorization email's approval links and already domains are starting to receive the Domain Transfer Complete emails :)

    cf-domain-transfer-complete-01.png

    Cloudflare domain overview page has a Domain Registrar status and shows the registrar, expiration date

    cf-domain-transfer-complete-domain-overview-01.png

    Some transferred domains' Overview page lists expiration date as invalid - apparently there can be delays in updating that for display. But you can check actual whois record for the domain to confirm the expiration date.

    cf-invalid-date.png

    You can verify if your transferred domains' whois info is redacted by Cloudflare via whois command in SSH terminal. If you used the Cloudflare API steps above to add domains listed in domains.txt file via curl command, you can also easily use that domains.txt file to run whois checks against whois.cloudflare.com nameservers.
    Code (Text):
    cat domains.txt | while read d; do whois -h whois.cloudflare.com $d; done
    

    This will run whois query against each domain listed in domains.txt file - example output
    Code (Text):
    [Querying whois.cloudflare.com]
    [whois.cloudflare.com]
    Domain Name: DOMAIN1.XYZ
    Registry Domain ID:
    Registrar WHOIS Server: whois.cloudflare.com
    Registrar URL: https://www.cloudflare.com
    Updated Date: 2018-11-17T06:00:23Z
    Creation Date: 2018-11-17T03:38:44Z
    Registrar Abuse Contact Email: [email protected]
    Registrar Abuse Contact Phone: +1.4153197517
    Registrar Registration Expiration Date:
    Registrar: Cloudflare, Inc.
    Registrar IANA ID: 1910
    Registry Registrant ID:
    Registrant Name: DATA REDACTED
    Registrant Organization: DATA REDACTED
    Registrant Street: DATA REDACTED
    Registrant City: DATA REDACTED
    Registrant State/Province: DATA REDACTED
    Registrant Postal Code: DATA REDACTED
    Registrant Country: DATA REDACTED
    Registrant Phone: DATA REDACTED
    Registrant Phone Ext: DATA REDACTED
    Registrant Fax: DATA REDACTED
    Registrant Fax Ext: DATA REDACTED
    Registrant Email: DATA REDACTED
    Registry Admin ID:
    Admin Name: DATA REDACTED
    Admin Organization: DATA REDACTED
    Admin Street: DATA REDACTED
    Admin City: DATA REDACTED
    Admin State/Province: DATA REDACTED
    Admin Postal Code: DATA REDACTED
    Admin Country: DATA REDACTED
    Admin Phone: DATA REDACTED
    Admin Phone Ext: DATA REDACTED
    Admin Fax: DATA REDACTED
    Admin Fax Ext: DATA REDACTED
    Admin Email: DATA REDACTED
    Registry Tech ID:
    Tech Name: DATA REDACTED
    Tech Organization: DATA REDACTED
    Tech Street: DATA REDACTED
    Tech City: DATA REDACTED
    Tech State/Province: DATA REDACTED
    Tech Postal Code: DATA REDACTED
    Tech Country: DATA REDACTED
    Tech Phone: DATA REDACTED
    Tech Phone Ext: DATA REDACTED
    Tech Fax: DATA REDACTED
    Tech Fax Ext: DATA REDACTED
    Tech Email: DATA REDACTED
    Registry Billing ID:
    Billing Name: DATA REDACTED
    Billing Organization: DATA REDACTED
    Billing Street: DATA REDACTED
    Billing City: DATA REDACTED
    Billing State/Province: DATA REDACTED
    Billing Postal Code: DATA REDACTED
    Billing Country: DATA REDACTED
    Billing Phone: DATA REDACTED
    Billing Phone Ext: DATA REDACTED
    Billing Fax: DATA REDACTED
    Billing Fax Ext: DATA REDACTED
    Billing Email: DATA REDACTED
    
    URL of the ICANN WHOIS Data Problem Reporting System: http://wdprs.internic.net
    
    For more information on Whois status codes, please visit https://icann.org/epp
    
    Cloudflare provides more than 10 million domains with the tools to give their global users a faster, more secure, and more reliable internet experience.
    
    NOTICE:
    
    Data in the CloudFlare Registrar WHOIS database is provided to you by CloudFlare
    under the terms and conditions at https://www.cloudflare.com/domain-registration-agreement/
    
    By submitting this query, you agree to abide by these terms.
    
    Register your domain name at https://www.cloudflare.com/registrar/
    


    Cloudflare Domain Registrar Costs versus Namecheap Costs



    How does this pricing compared to renewal at NameCheap ? XYZ domain renewal pricing is US$12.88 + US$0.18 = US$13.06 per domain x 6 = US$78.36. So Cloudflare Domain Registrar's XYZ domain cost pricing reduces my domain renewal costs by US$29.28 per year for those 6x XYZ domains. That's a savings of just over 37% !

    namecheap-renew-costs-01.png

    Notes
    • Cloudflare Registrar does not currently support email forwarding. If you require email forwarding from your registrar, you will need to use a third-party forwarding service and configure your MX record in the Cloudflare DNS setting for the domain.
    • FYI, full disclosure though, I am now a Cloudflare MVP one of the first group of people to be invited into the new MVP program that Cloudflare is developing so I get special perks and access to new and upcoming Cloudflare products and some input into features/requests and alpha/beta testing :) However, all domain transfer costs above are paid by me fully.
     
    Last edited: Nov 17, 2018
    • Informative Informative x 2
..
Thread Status:
Not open for further replies.