tech-net archive

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

Re: CVS commit: src/sys/net



    Date:        Tue, 29 Sep 2020 22:18:16 +0200
    From:        Olaf Seibert <rhialto%NetBSD.org@localhost>
    Message-ID:  <20200929201816.GB5512%falu.nl@localhost>

  | However as soon as you do this on Linux, the ethernet interface
  | immediately loses its connectivity. You're supposed to move over the IP
  | address to the bridge, and use the bridge in all configurations where
  | you used the ethernet before.

I wouldn't want that either, anything connected to the bridge, and the
bridge itself, should be able to hold an address, and they should all
work (and addresses on links should work the same as they do now, going
deprecated when the link they're assigned to goes down).

That is, to extend your example, if I have two (IPv4 for this example)
/25 networks, say

	192.168.1.1/25 and 192.168.1.129/25

I should be able to bridge them together, change the netmasks to /24
and now have two interfaces that are 192.168.1.1/24 and 192.168.1.129/24
connected to the same bridged network.   I want both addresses as those
have been published (and are used) as addresses for my host.   If I decide
to, I should also be able to add 192.168.1.250 to the bridge itself, so I
have a stable address for my host that will always work, even if one of the
two physical interfaces goes down.

Please don't assume I want to copy Linux, that's almost never going to be true.

Using a tap connected to a bridge, when there is something using the
tap for passing packets is just fine - that's why the interface type exists.
Requiring one (or a vether in recent HEAD) to be added, when nothing is using
it, just to proivide a stable point on which to hang an address, is dumb.

  | That is of course totally impractical and wrong. Besides, bridges should
  | not have addresses anyway, they are just virtual wires soldered
  | together, at most as complicated as switches (which don't have addresses
  | either).

The bridge doesn't have the address, the host connected to it does.

The question is whether we should require an extra interface to be
added (more ifconfig -a output) for no reason other than to show that
the host is connected to the bridge.   We would be just calling the host's
interface to the bridge bridgeN instead of tapN - which do you believe
to be clearer?

If you want a bridge, without the host it is running on being connected,
then simply don't configure any addresses, for any L3 protocols, on any
of the connected interfaces.

kre



Home | Main Index | Thread Index | Old Index