On 05/31/2016 02:37 AM, Haribabu Kommi wrote:
The following is the content of IPV6 representation from RFC 4007

The following addresses

              fe80::1234 (on the 1st link of the node)
              ff02::5678 (on the 5th link of the node)
              ff08::9abc (on the 10th organization of the node)

    would be represented as follows:

              fe80::1234%1
              ff02::5678%5
              ff08::9abc%10

    (Here we assume a natural translation from a zone index to the
    <zone_id> part, where the Nth zone of any scope is translated into
    "N".)

    If we use interface names as <zone_id>, those addresses could also be
    represented as follows:

             fe80::1234%ne0
             ff02::5678%pvc1.3
             ff08::9abc%interface10

The digit and string both are considered as proper format.

Since we cannot tell if %1 is the same interface as %ne0, isn't the best thing we can do to just store them as raw strings and treat them as different addresses from PostgreSQL's point of view? I do not see any problem with doing so.

The % delimiter character is not only used at the end of the IPV6 address,
from the RFC document, it is possible as follows also.

fe80::%2/64

we need to handle both the scenarios,  it may not be a straight
forward to store the zone id data.

This case needs to be handled by the parser for at least the cidr type, but I do not think it would make parsing any trickier.

Andreas


--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to