http://qs1969.pair.com?node_id=304634


in reply to ip range for config files

I tend to prefer Net::Netmask myself. You can achieve similar code to your test code above using Netmask's enumerate() method.

Replies are listed 'Best First'.
Re: Re: ip range for config files
by smackdab (Pilgrim) on Nov 05, 2003 at 06:04 UTC
    Thanks, after looking at Net::Netmask, it doesn't appear that it will accept an IP range:
    192.168.0.1 - 192.168.0.100 and have 100 IP address returned...am I right? I also don't think NetAddr::IP will also. I think the formats are not compatible...

      The thing about 192.168.0.1 - 192.168.0.100 is that it is impossible to represent that exact range in one net block. You have to use several netblocks of varying sizes to do it. So no, Net::Netmask will not let you do it all in one block because its impossible.

      It does, however, give you the range2cidrlist method that will break that range into a series of valid netblocks for you.

        You know, I'll bet everyone using these modules wants the CIDR format...actually I don't. I want an array of individual IP addresses back from a CIDR format (or a IP-Range format)

        I want to give the user an option to specify a range of IP addresses in their favorite format and then get the array back...

        I am very likely very CONFUSED...

        Say I have a config file of hosts/devices to ping...

        # Ping me list
        host1; 192.168.0.1-192.168.0.10; 10.0.0.0/8; host2

        I am looking for a proper format to allow. right now, you have to list 1 IP or hostname on EACH line ;-(