I have given some thought to how to handle/display domain names that are in a right to left script such as Arabic. After some thought and experimentation I think that each label of a domain name should be bidi isolated.
Lets take a 2 level domain name: 2ndLevelD.TLD where each label is written in a Right to Left Script.
In a Left to Right paragraph/document I want the ordering to be 2ndLevelD.TLD
In a Right to Left paragraph/document I want the ordering to be TLD.2ndLevelD
Using bidi isolation this can be achieved. In the case of html5 one can use the bidi isolate tag <bdi>
So, I now write my domain name in html5 as
<bdi>2ndLevelD</bdi>.<bdi>TLD</bdi>
I then experimented with the html dir attribute and flipped the whole document between dir="ltr" and dir="rtl" and it gave me the results I wanted as above.
I need to think a bit more about the possible permutations of the local part of an email address but if it is a single word then the following works
eg
<bdi>email</bdi>@<bdi>2ndLevelD</bdi>.<bdi>TLD</bdi>
I believe that using bidi isolates leads to easier to comprehend domain names/email addresses for both Left to Right readers and Right to Left readers.
So, for example, a Left to Right reader would see a domain name 2ndLevelD.TLD and one can easily comprehend the ordering is from minor to major from Left to Right. The text in each label is though Right to Left