[PLUG] Complex Search-and-Replace
Vram
lamsokvr at xprt.net
Thu Nov 10 23:43:17 UTC 2005
On Thu, 2005-11-10 at 11:05 -0800, John Purser wrote:
> On 11/10/05, Rich Shepard <rshepard at appl-ecosys.com> wrote:
> > I have a file of IP addresses, in dotted quad notation. Addresses can have
> > 2, 3, or 4 of the quads, and I want to convert each address to CIDR. For
> > example, if I have 123.456 I'd like to convert that to 123.256.0.0/16; if
> > it's 123.456.789, then I'd like to convert that to 123.456.789.0/24.
> >
> > I know there are multiple tools to do this; I suspect that sed would be the
> > simplest. Am I better off searching for each group separately (e.g., all /16
> > separate from all /24 and all /32)? Suggestions appreciated.
> >
> > Rich
> >
> > --
> > Richard B. Shepard, Ph.D. | Author of "Quantifying Environmental
> > Applied Ecosystem Services, Inc. (TM) | Impact Assessments Using Fuzzy Logic"
> > <http://www.appl-ecosys.com> Voice: 503-667-4517 Fax: 503-667-8863
> > _______________________________________________
> > PLUG mailing list
> > PLUG at lists.pdxlinux.org
> > http://lists.pdxlinux.org/mailman/listinfo/plug
> >
> Rich,
>
> Just a couple of quick thoughts:
> Remember that the CIDR notation isn't nailed to the dotted quad format
> so just getting the quads won't do it. It's either going to take a
> heck of an if statement or you might want to convert the dotted quad
> to a 32 bit number, then convert that to binary, then convert THAT to
> a string. Then count zeros from the right. For that kind of
> crunching I'd rather use python or even (if forced) perl. Certainly a
> shell script could do it. I'd just rather have the flexibility of a
> full scripting language.
>
> I don't know how you got the data but remember that addess 123.456.789
> might be from domain 123.456. Therefore the CIDR would be 123.456/16,
> not 123.456.789/24.
Someone correct if I am wrong
But, classful Class A is 0 to 127 With 0 and 127 abstaining.
Therefore with classful notation you could say 123.456.789.0/8
But, given 123.456.789.0
I have NO idea what is happening till you give me THE MASK..
My story and I am sticking with it...
Vram
More information about the PLUG
mailing list