From: | George Shuklin <george(dot)shuklin(at)gmail(dot)com> |
---|---|
To: | pgsql-general(at)postgresql(dot)org |
Subject: | inet/cidr ipv6 operations |
Date: | 2013-01-29 10:34:28 |
Message-ID: | 5107A5B4.5080902@gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Good day.
We trying to implement IPv6 address space management with postgres
support, but I found few strange problems.
One of them - problems with math. In IPv4 we can be sure, that
inet'0.0.0.1' + N allows to get any address you want, because N < 2^64,
and IPv4 is just 32-bit size.
But IPv6 is differ. Let's assume we wants to get 'next' /64 range.
Current range is inet'2a00:ab00:0:1/64'. We want next.
Postgres do not allow adding inet + inet, so we need to add natural
number. But 'next' /64 is 'just' 2^64. And postgres rejecting that
operations because N is too large. ... And under some conditions we can
use even /56 or /48 - which is really large numbers.
If postgres allows to do something like that: inet'2a00:ab00:0:1/64' +
inet'0:0:0:1/64' it should make life much easy.
Or may be I miss something?
Thanks.
From | Date | Subject | |
---|---|---|---|
Next Message | Bartosz Dmytrak | 2013-01-29 11:50:50 | Fwd: Functions not visible in pg_stat_user_functions view |
Previous Message | Alexander Law | 2013-01-29 06:00:12 | Re: BUG #7493: Postmaster messages unreadable in a Windows console |