Re: IP address, subnet query behaves wrong for /32 - Mailing list pgsql-sql

From Adrian Klaver
Subject Re: IP address, subnet query behaves wrong for /32
Date
Msg-id 55C39320.4010905@aklaver.com
Whole thread Raw
In response to IP address, subnet query behaves wrong for /32  ("Richard RK. Klingler" <richard@klingler.net>)
Responses Re: IP address, subnet query behaves wrong for /32  ("David G. Johnston" <david.g.johnston@gmail.com>)
List pgsql-sql
On 08/06/2015 09:47 AM, Richard RK. Klingler wrote:
> Evenin'
>
> What I discovered just lately is a nice feature from pgsql that I can test
> if a specific IP address falls within a supplied subnet:
>
> myserver=# select inet '192.168.0.1' << '192.168.0.0/24'::inet as ip;
>
>   ip
>
> ----
>
>   t
>
> (1 row)
>
>
>
> But what I don't understand is why pgsql doesn't behave correctly when
> testing for a /32 subnet:
> (it works for /31 correctly though)
>
> myserver=# select inet '192.168.0.1' << '192.168.0.1/32'::inet as ip;
>
>   ip
>
> ----
>
>   f
>
>
>  From a network engineering point of view this should also return "true"
> and not false.

http://www.postgresql.org/docs/9.2/interactive/functions-net.html

"The operators <<, <<=, >>, and >>= test for subnet inclusion."

http://www.postgresql.org/docs/9.2/interactive/datatype-net-types.html#DATATYPE-INET

" If the netmask is 32 and the address is IPv4, then the value does not 
indicate a subnet, only a single host."

So it is behaving as documented.

>
> Has this been fixed in recent versions? I'm using 9.2.8 right now….
>
>
>
> thanks in advance
> richard
>
>


-- 
Adrian Klaver
adrian.klaver@aklaver.com



pgsql-sql by date:

Previous
From: "David G. Johnston"
Date:
Subject: Re: IP address, subnet query behaves wrong for /32
Next
From: "David G. Johnston"
Date:
Subject: Re: IP address, subnet query behaves wrong for /32