Message 88688 - Python tracker (original) (raw)
On Mon, Jun 1, 2009 at 4:41 PM, Clay McClure <report@bugs.python.org> wrote:
Clay McClure <clay@daemons.net> added the comment:
On Mon, Jun 1, 2009 at 5:02 PM, R. David Murray <report@bugs.python.org> wrote:
ipaddr.IPv4('192.168.1.1') == ipaddr.IPv4('192.168.1.1/32') True
As a network engineer I don't see any inherent problem with that equality. In fact I make use of that conceptual equality on a regular basis.
For an example of why 192.168.1.1 != 192.168.1.1/32, look no further than ifconfig:
ifconfig en0 192.168.1.1/32
ifconfig en0
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500 inet 192.168.1.1 netmask 0xffffffff broadcast 192.168.1.1 ...
ifconfig en0 192.168.1.1
ifconfig en0
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500 inet 192.168.1.1 netmask 0xffffff00 broadcast 192.168.1.255 ...
Can you provide an example of when 192.168.1.1 does in fact equal 192.168.1.1/32?
what this shows is that your copy of darwin defaults to a /24 prefixlen; ipaddr assumes a /32 prefixlen. I don't see anything particularly more intuitive with darwin, but in any event, it seems to provide support for assuming a prefixlen when none is supplied.
Python tracker <report@bugs.python.org> <http://bugs.python.org/issue3959>