Subject: Re: Flagging non-ASCII in domain names

From: Dan Oscarsson <[email-masked]>
Date: Mon, 21 Aug 2000 08:33:30 +0200 (MEST)

[email-masked] said:

>   | People have been worried that getting
>   | a host name containing non-ASCII will break some applications.
> 
> It might.   If that's going to be a problem, the place to fix it is
> in the resolver interface, not in the server.  The current versions of
> BIND that do syntax checking on names coming back in the resolver before
> handing them off to clients would simply make all such names vanish.
> If someone absolutely needs this "protection" they should be doing it that
> way.

While some code today check it, I do not know how many do not. I know
that some gethostbyaddr also do not return a host name if DNS returns
one that contains non-ASCII. But this will also break some applications!
For example, some e-mail servers do not accept incoming e-mail if the sending
e-mail server cannot be reverse lookup in DNS. So by returning no name
some e-mail will no longer be possible to deliver because the receiving end
cannot identify you through DNS. It will also break programs needing to
do a reverse lookup to find out host or domain name of an IP-address.

That is one reason why several is suggesting that we have a way do encode
a normal name into an ASCII compatible encoded name to fit the old host
name syntax, just like quoted-printable/base64 is doing for e-mail.
This would allow a name to be returned in reverse lookups to old software
that do not understand non-ASCII. Also it will help protocols that have
to do a downgrading from 8-bit to 7-bit. For example when sending e-mail
to [email-masked] an 8-bit aware e-mail MTA can downgrade the
non-ascii-name into an ASCII compatible name by encoding the name and then
send it onwards (looking like: [email-masked]). As the DNS server recognises
the encoded format, it can still answer DNS lookups for the encoded form
and e-mail will still work.
 
> 
>   | If the client
>   | cannot handle non_ASCII, the DNS server can return an ASCII compatible
>   | encoded version of the name to avoid breaking the client.
> 
> That's horrible.   Having DNS servers making arbitrary changes to the
> data they have been given is about as evil as I care to contemplate.

Not arbitrary. As I describe above, it is an encoded form of the name into
ASCII. It is fully reversible. DNS can recognise both the normal and the
encoded form allowing lookups to work for both of them.
I think it is still quite horrible, but none have come up with a
better way to allow non-ASCII names to be used without disrupting a lot
of services.

If somebody can show that we can just use non-ASCII names and still have
most things to work normally whith all old software, I would be very happy.
But I think the examples I give above about e-mail and reverse lookups are
just the top of an iceberg of problems. There must be many more ways things
can break when non-ASCII occurs in a name for older software.
Does anybody have som more thoughts about this?

   Dan

to unsubscribe send a message to [email-masked] with
the word 'unsubscribe' in a single line as the message text body.

---

From: "Al Costanzo" <[email-masked]>
Date: Mon, 21 Aug 2000 08:27:07 -0400

Dan Writes:

For example, some e-mail servers do not accept incoming e-mail if the
sending
e-mail server cannot be reverse lookup in DNS. So by returning no name
some e-mail will no longer be possible to deliver because the receiving end
cannot identify you through DNS.

------

Al Replies:

Not only is this true but in many cases 'designed' into anti-spam filters.
We had to turn this
feature on, along with other to slow down the spam through our servers.

Its a shame, I remember when the Internet was like a happy family or group
working together :(

-al