Recommended Posts

So this is a topic that can fit under many forums be it hardware, server or technical support, etc. My question comes down to this: how do these large cloud services providers manage their back-end to automate and even segregate the services from each customer?

There are a couple examples of what I'm referring to the best of which is Microsoft's Office 365 or, more specifically, Hosted Exchange. I'm talking about everything from licensing to reverse DNS records. If I wanted to do something like this for my clients, I could have an Exchange server that accepts mail for many domains and I could create many users with specific email addresses manually assigned. This is entirely a manual process though. How do these large cloud services providers do this in an automated way? I would assume Microsoft would use a Microsoft product to accomplish this. Maybe they have created a custom system using APIs or something?

On the more technical side, if I were to have an Exchange server and do this, it would be behind one IP address and thus only one reverse DNS record could be made for a lookup back to it (right?). It's completely inefficient to have an exchange server for each person that signs up for Microsoft's Hosted Exchange. Another large setback to using one Exchange server is the originating server's responding FQDN. As far as I know, this can be only one domain and if someone were to look at the an emails message details, they could see that this person's email did not come from domainxyz.co but from another domain123.co as would all other customers on the same Exchange server.

Hopefully someone has insight on this!

As a simple answer of "it just works don't worry about it" I would add in,

At a level of Microsoft or Google's services, you are talking custom written software to run all of this.

So they can program it exactly how they want it.

Which I would expect from Rackspace (another of these cloud providers) but I was hoping that Microsoft would be using their own product/tools to do this. I can understand though that to make this readily available creates direct competition.

I know that it just works and I'm fine with that. However there are some technical aspects such as reverse DNS records and FQDN responses that are fundamental workings of email technology, I don't think a custom software can make exceptions to how these things work.

accepting mail is different than sending mail. You don't need a PTR for accepting mail.. The only time a ptr is checked is the accepting server checking the server sending it mail - if no valid PTR then its most likely some fly by night mail server, etc.. and prob spam - so sure many major domains will not accept mail from such a server.

But this is not the case with having servers that accept mail for users.. They do not need ptr to match anything.

You can have a cluster of servers accepting mail on lots of different IPs, or even behind a load balancer accepting the connection on 1 IP and then sending on to email servers behind that to handle the getting of the mail and then once accepting it routing it to the mail server the mail box sits on for that user.

Take a look at your say gmail or yahoo.com headers for email sent to you.. It more than likely routes through a few servers on gmail or yahoo side.

example

Delivered-To: [email protected]

Received: by 10.60.141.201 with SMTP id rq9csp9608oeb;

Wed, 9 May 2012 10:23:08 -0700 (PDT)

Received: by 10.182.44.74 with SMTP id c10mr1164113obm.43.1336584188741;

Wed, 09 May 2012 10:23:08 -0700 (PDT)

Return-Path: <[email protected]>

Received: from mail.adagio.com (mail.adagio.com. [67.192.109.186])

by mx.google.com with ESMTPS id fq1si187201obc.135.2012.05.09.10.23.08

see where mx.google.com got it from mail.adagio.com -- then it went through 2 private IPs in googles network before I got it.

This is routing internal to gmail system..

Same goes for the way back out -- you send email using gmail to say yahoo. You create the message on the server you connected too, its more than likely going to be routed through a few servers again before it gets to the actual sending server(s) that will send the mail to yahoo.

If you want to understand how an email message flows - just look at the headers, it will show you all the different email servers that message went through to get from where sent to your mailbox.

Basically I am researching how I can duplicate these hosted Exchange solutions for my clients.Typically for my clients who have their own mail server, headers will read that the message originated from their domain/networks because of the send connector. If I host their mail, it will come from me. Is that unavoidable? Or am I being way to concerned about what the message headers say?

In an Exchange server that is hosting mail for many domains, what is the best way segregate the customers? Different databases? Could you create different send connectors for each domain and somehow only allow certain databases to send out with a connector? This would solve the outgoing mail headers having a strange originating domain. But can you have multiple PTRs going back to the same IP?

not sure why your hung up on PTR? so you want your sending server to match up with their forward domain?

So for example you have domainA.tld, domainB.tld, domainC.tld

And all being sent from same email server at 1.2.3.4, your concerned that when someone looks up 1.2.3.4 PTR it will reflect say mx.domainZ.tld?

There there is no way to have multiple PTR records for the same IP. Sure you can have mx.domainA.tld, mx.domainB.tld both point to the same IP.

I would not worry too much about the PTR, as long as its valid. So for example mx.domainZ.tld, while that server hosts mail for domainA, domainB, domainC, etc.. you don't even have to have the mx for domainA point to something domainA, it can point to mx.domainZ.tld just fine -- does not matter what the name of the server is accepting the mail for a specific domain.. Quite often it does not match.

example neowin.net mx points to google servers. Companies host their mail on other domains all the time, the name of the server that accepts mail for your domain does not have to be in the same domain.

Keep in mind that the sending server is not always the same name as the sending domain either. Just look through the headers of the email in your inbox

not sure why your hung up on PTR? so you want your sending server to match up with their forward domain?

So for example you have domainA.tld, domainB.tld, domainC.tld

And all being sent from same email server at 1.2.3.4, your concerned that when someone looks up 1.2.3.4 PTR it will reflect say mx.domainZ.tld?

That is exactly my concern. I would like it to be as seemingly segregated as possible. Do you think this is impossible when using one Exchange server? I think you answered that here:

There there is no way to have multiple PTR records for the same IP. Sure you can have mx.domainA.tld, mx.domainB.tld both point to the same IP.

This is only one technicality that I'm hung up on. I am still curious how Exchange is best configured to manage multiple domains.

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • lots of people us facebook for stuff, threads though no
    • Can you read? I've said I'm willing to pay more for a notchless (no notch) 3:2 screen.
    • Not even an OLED display on the laptops. Also it seems that the laptop design isn't the same as the Surface Ultra model. Looks like bargain bin at high prices.
    • make your own notch - it's not that hard
    • VirtualBox 7.2.10 by Razvan Serea VirtualBox is a powerful x86 and AMD64/Intel64 virtualization product for enterprise as well as home use. Targeted at server, desktop and embedded use, it is now the only professional-quality virtualization solution that is also Open Source Software. Presently, VirtualBox runs on Windows, Linux, macOS, and Solaris hosts and supports a large number of guest operating systems including but not limited to Windows (NT 4.0, 2000, XP, Server 2003, Vista, 7, 8, Windows 10 and Windows 11), DOS/Windows 3.x, Linux (2.4, 2.6, 3.x, 4.x, 5.x and 6.x), Solaris and OpenSolaris, OS/2, OpenBSD, NetBSD and FreeBSD. Some of the features of VirtualBox are: Modularity. VirtualBox has an extremely modular design with well-defined internal programming interfaces and a client/server design. This makes it easy to control it from several interfaces at once: for example, you can start a virtual machine in a typical virtual machine GUI and then control that machine from the command line, or possibly remotely. VirtualBox also comes with a full Software Development Kit: even though it is Open Source Software, you don't have to hack the source to write a new interface for VirtualBox. Virtual machine descriptions in XML. The configuration settings of virtual machines are stored entirely in XML and are independent of the local machines. Virtual machine definitions can therefore easily be ported to other computers. VirtualBox 7.2.10 changelog: VMM: Fixed issue when CentOS 10 VM was not booting due to the message "Fatal glibc error: CPU does not support x86-64-v3" (​github:gh-642) Devices/EFI: Fixed booting issue when ARM VM had less than 1024 MiB of RAM assigned (​github:gh-679) USB: Fixed issue when it was not possible to attach USB device to headless VM on Apple Silicon/macOS 26.4.1 (​github:gh-631) Storage: Fixed issue when VIRTIO-SCSI device was not recognized as SSD device by guest system (​github:gh-634) Network: Fixed issue in E1000 emulation code which triggered debug log creation (​github:gh-645) Network: Fixed issue in E1000 emulation code which prevented OS/2 guest from booting (​github:gh-683) Linux Host: Fixed issue when VMs could not be started due to kernel oops (​github:gh-639) Linux Host and Guest: Fixed issue when kernel modules were failing to build with openSUSE 16.0 kernel Linux Host and Guest: Added initial support for kernel 7.1 Linux Host and Guest: Added extra fixes for RHEL 9.8 kernel (​github:gh-676) Linux Host and Guest: Added possibility to build source code using NASM instead of YASM as the assembler (​github:gh-520) Linux Guest Additions: Added initial support for Extended Data Control Protocol for clipboard sharing with Plasma on Wayland guests (​github:gh-33) Linux Guest Additions: Added extra fixes for preventing vboxvideo kernel module build with kernel version 7.0 and newer (​github:gh-655) OS/2 Guest Additions: Fixed issue when Shared Folders automount and clipboard sharing stopped working (​github:gh-551) Download: VirtualBox 7.2.10 | 170.0 MB (Open Source) Download: VirtualBox 7.2.10 Extension Pack | 19.1 MB View: VirtualBox Home Page | Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
  • Recent Achievements

    • Week One Done
      suprememobiles48 earned a badge
      Week One Done
    • One Month Later
      Windows Guy earned a badge
      One Month Later
    • One Month Later
      Prasann earned a badge
      One Month Later
    • Week One Done
      Prasann earned a badge
      Week One Done
    • First Post
      Dys Topia earned a badge
      First Post
  • Popular Contributors

    1. 1
      +primortal
      510
    2. 2
      +Edouard
      174
    3. 3
      PsYcHoKiLLa
      100
    4. 4
      Steven P.
      87
    5. 5
      ATLien_0
      70
  • Tell a friend

    Love Neowin? Tell a friend!