tech-net archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: ifconfig v2

>> I ran a (small but) production network with a netmask of
>> (0xffffffd8) for years.

>               newaddr = (addr & 0xffffffc7) |
>                               (addr & 0x18) << 1 |
>                               (addr & 0x20) >> 2;

> and then use those new addresses, with a netmask of,
> right ?

Only at the price of using addresses assigned to other people.  (Well,
and, it'd be 240 in the last octet of the mask, not 224.)

If I could have synchronized the renumbering with the other users, and
administrator, of the relevant /27, yes, we could have done that.  You
seem to think that would have been trivial, or at least easy; I doubt
it, and there's no way would it have been as easy as just using the
noncontiguous netmask.

>> See my list message just now in response to Ignatios.
> I did, though he asked (and thus you answered) the wrong question,
> instead of ...
>>        (0xffff00ff)
>>       (0xffff0ff0)
>> and you send a packet to ?
> the real question is what happens when someone sends to ?

Or any of the 15 other addresses which are on-net for each interface.
(My mistake in my response to Ignatios; is not one of them.)

>> "Local policy", which may mean "whatever the implementation happens
>> to give you".
> And how do I exactly configure that to work in any way that anyone
> can comprehend?

That depends on your implementation.  Perhaps you don't; such
implementations are deficient and should wither and die.

>> That's what we've always had in practice anyway on implementations
>> that support them.
> Yes, in practice, no-one ever used anything except the simple cases,
> like the one you described,

Quite likely.  Given the mailing lists I'm on and the number of times
I've mentioned on them that I'm the only person I've ever even heard of
who ran a noncontiguous netmask in production, I would expect to have
heard if anyone else did likewise.

> which is no mor ethan a minor convenience.

Spoken like someone who's never had to renumber a production network
(which, given who you are, I find rather surprising).  I'm in the
process of moving between cities, which involves moving between
connectivity providers, hence changing networks (I don't say
"renumbering" because I'm not just moving and keeping the rest of the
network design constant); I'm finding it somewhat surprising all the
places, some of them not under my direct control, that know IPs on the
old network.  I've got the next-hop host out from the old house gateway
running with two of the old network's IPs aliased onto its lo0 because
of this effect (fortunately, I control that host - one of the benefits
of working for my upstream...).

> You're not really using the true power of non-contig masks - which is
> a good thing, as that power is all destructive.

"rm -rf" has a lot of power, (almost?) all destructive, too; is it a
bad thing to have it available?  Yes, it's a bit of a strawman, but my
point is that, even admitting (arguendo) that the part after your comma
is correct, destructive power is not necessarily bad.  And I remain
unconvinced of that antecedent.  Just because NC netmasks can be used
in confusing and broken ways doesn't mean they have no nonconfusing and
nonbroken uses - I see this as a place to apply "Unix doesn't prevent
you from doing stupid things because that also prevents you from doing
clever things".

> [I]f non-contig masks had never been invented, no-one would be
> clamoring for them now, would they?

Well, no, but that's pretty much tautological; one can't really clamor
for something one doesn't have the concept of, can one?  And if enough
people had the concept to clamor, that would constitute invention,
especially in a case like this where the thing putatively being
invented is fundamentally nonphysical.

But I actually think that, as long as they're spoken of as masks, the
possibility of noncontiguous masks is obvious, or at most only barely
latent; if nothing else, someone will make a coding mistake and
generate, say, instead of somewhere.  To
avoid that, you'd really need to store them as widths instead of masks,
which is inconvenient enough to use that using real masks is an obvious
optimization.  So I think your hypothetical is a bit like saying "if
nobody had invented zero, we wouldn't have had the US banking
meltdown": the antecedent requires/implies so many counterfactuals it's
impossible to take more than wild guesses at what the resulting world
would be like.

/~\ The ASCII                             Mouse
\ / Ribbon Campaign
 X  Against HTML      
/ \ Email!           7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B

Home | Main Index | Thread Index | Old Index