Hi all, Triggered by a post about IPv6 at the James user list and the fact that I've been playing with IPv6 at home I started looking into the IPv6 support of James. Having an IPv6 network at home but no mail server to support it is so uncool ;-) And since this is open-source I'll try to code it instead of just talking about it, but I'd like to have some feedback. (Don't expect any miracles, I don't have that much spare time...)
So far I've found that SMTP and POP over IPv6 connections seem to work perfectly, wich is to be expected since the JRE will bind to an IPv6 interface in just the same way as an IPv4 interface. But as Noel pointed out allready, the authorized addresses configuration does not accept IPv6 addresses. I've started adding IPv6 support in there and this seems to work, although i did not test it that well (yet). There are issues with this as well, since someip.dom/64 could be a valid IPv6 network but when it resolves to both IPv4 and IPv6 it's not alway simple to guess what was intended. And /64 on an IPv4 address will create an open relay, so perhaps it's a good idea to add a separete AuthorizedAddressesV6 configuration? (As a side note, is using DNS names in AuthorizedAddresses a smart thing to do? I *might* be vunarable to DNS poisoning and could cause problems when DNS entry's are changed.) Most other IPv6 stuff will fail, since James never resolves AAAA records, but only looks for A records. Getting DNSServer to resolve AAAA records and deal with IPv6 literals seems to be the big step. For as far i can see, most InetAddresses originate from DNSServer anyway (or am I missing something?), and they can be used transparently. There will be a need for some configuration, trying to resolve AAAA records on a server wich does not have IPv6 connectivity is rather useless. The same applies when there is IPv6 connectivity but no IPv4 connectivity. This may be rare for now, but is likely to happen more and more in the future. So, for now, my guess is we need to be able to configure wich IP versions are available and perhaps also wich one is prefered. I might be possible to get some sensible information about this by simply walking through the available network interfaces. At least for IPv6 it is possible to see the difference between local and global connectivity by looking at the local addresses (that is, until people start doing NAT on IPv6, wich is kinda dumb and therefore likely to happen</flamebait>) As for dealing with address wich have both IPv4 and IPv6 addresses, whould it be right to assume that this should be treated the same way as a server with 2 IPv4 addresses? I think the DNS stuff should be fairly straight forward, but I'd like to get some pointers about the best way to deal with the configuration issues. Another issue might be what happens to existing mailets, they might not expect to see IPv6 addresses and e.g. assume that InetAddress.getAddres will allways return 4 bytes. I know i'd do that if i wrote the code 2 years ago... I guess there will be other issues as well, such as wanting to use different relay hosts for IPv4 and IPv6 addresses, but I think it's best to get the basic up and running first. One last question, do you want me to create (one or separate) Jira issues for this? Arjan Veenstra (off the get some sleep now) --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]