[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: draft-cmetz-v6ops-v4mapped-api-harmful-00.txt and draft-itojun-v6ops-v4mapped-harmful-01.txt



On vrijdag, sep 12, 2003, at 11:33 Europe/Amsterdam, Mauro Tortonesi wrote:

then my credo as a developer is "ipv6 is a brand new protocol", because
AF_INET6 sockets have many options that are not applicable to ipv4
connections, and writing applications that make use of the ipv4-mapped
catch-all approach will be a great problem for developers (that will find
themselves writing __a lot__ of checks/workarounds for special cases and
will become crazy during the testing/debugging process).

So what's the alternative? Ripping mapped addresses out of current implementations doesn't make sense for many reasons. The only question is whether you should/want to use them. If you want to do stuff with IPv6 that you can't do with IPv4, you'll have to do a lot of checking regardless of how you do it.


If you feel using the IPv6 socket API for IPv6 and the IPv4 socket API for IPv4 makes more sense, then by all means, do it that way. But for simple applications I think it's a huge plus to be able to talk to the network in a unified way without having to spend time and effort on making the IPv4/IPv6 distinction. Obviously this means you can't do any IPv6-specific stuff.

moreover, i think that the ipv4-mapped catch-all approach in the
development of ipv6-enabled apps may eventually become an obstacle for
widespread adoption of production quality ipv6-enabled software (since it
makes more difficult the use of the advanced ipv6 capabilities)

I don't agree. Just tell the stack you don't want to talk IPv4.


Also, in the document I read it seems half or more of the trouble comes from mixing IPv4 and IPv6 calls. So don't do that.

I'm sure that from the vantage point of someone who writes large and complex applications things look different, but as someone who only writes simple stuff, I really appreciate having the mapping approach available.