On Sun, Oct 06, 2013 at 02:19:11PM -0500, Derek Martin wrote: > On Sun, Oct 06, 2013 at 12:01:05PM -0700, > Alexander Gattin wrote: > > You have several hostnames or A records or > > domain names or whatever. Then you have > > `hostname`, which is configured in kernel, at > > least in Linux (cat > > /proc/sys/kernel/hostname), which may match > > some A record, or not. Or match partially. > > Your method does not even do that. > > You're still making assumptions here that the > host is using DNS,
Nope, there's magic word "whatever" in my > The hostname need not match any A records. When kernel's notion of `hostname` doesn't match any address on an of the host's interfaces, isn't it invalid by your own definition (of double resolvability)? cf: > For my patch to work, all that matters is that > the configured host resolution mechanism can > turn the hostname into an IP, and that resolving > that IP gets you a domain name. That's > guaranteed to work, because if it doesn't your > machine is broken. > > > Just imagine that there was no such thing as > > `hostname` in kernel. > > I'm not going to imagine that because it's a > requirement of TCP/IP. All machines have a > hostname. In my opinion `hostname` in the kernel is just a hint. You could always get a hostname for a given purpose in runtime (via usual ip/whatever route rules), there's no need for artificial one. For example, when you connect to SMTP server in order to send an e-mail, the server sees the [IP] address that you are connecting from. You can resolve this [IP] address into some hostname using name resolution scheme you like (dns, files, nis/yp or whatever) and use it for Message-ID. If you don't want to connect (or don't want to go online at all but still want to be able to generate Message-ID), then my point about /etc/resolv.conf is valid and your one isn't. If you want real/resolvable/routable/publicly visible (use your own definition of "real honest" here) address for Message-ID, then it's easy to see that kernel's `hostname` is a kludge and the real address/name must be determined by kernel's routing tables (plus iptables' mangle/nat tables) instead. -- With best regards, xrgtn
signature.asc
Description: Digital signature