IPv6: Improve address handling by Subnet (was 4639)

In some cases class Subnet handles converted IPv6 to IPv4 addresses in
an incorrect way: It accepts some invalid addresses and in some cases it
converts the address without adjusting the netmask.
This patch fixes these problems by adding special handling for special
addresses.

Acked-by: Tigran
Target: master
Require-book: no
Require-notes: no