Re: Bug in IPFW+Bridge?

From: Bernd Walter <ticso(at)cicely9.cicely.de>
Date: Sat, 3 May 2003 12:51:13 +0200

On Sat, May 03, 2003 at 12:42:13AM +0200, Ulrich Spoerlein wrote:
> On Fri, 02.05.2003 at 22:54:48 +0200, Bernd Walter wrote:
> > > Nein, 1500 und 1600 treffen nur auf Pakete zu, die im SRC/DST
> > > 172.16.23.2 stehen haben. Alle anderen Pakete die ueber die Bridge gehen
> >
> > Das steht in deinem Regelwerk aber anders - dort steht me - und das
> > betrifft alle lokalen IPs.
>
> Der Rechner hat aber nur die IP 172.16.23.2, die Pakete die gebridged
> werden haben alle Adressen aus dem Bereich 172.16.16/21, und _die_ will
> ich messen.

Dann schreibe doch auch die IP da hin.

> > Wenn du explizit eine bestimmte IP haben willst, dann solltest du die
> > auch hinschreiben.
>
> Eigentlich wollte ich erstmal nur die Auslastung der 10MBit Leitung
> erfassen. Leider geht das wohl nicht so einfach mit ipfw ("IP
> FlickWerk?)

Natürlich geht das mit ipfw - und auch einfach.
Das Problem mit dem Bridging ist nur, das Filtern mit IPFW erst dann
verständlich wird, wenn man sich bewußt macht wie die Interaktion
abläuft.

> 01500 285 24316 allow ip from me to any out xmit xl1
> 01600 396 24192 allow ip from any to me in recv xl1
> 02100 24390 34441902 count ip from any to 172.16.16.0/21 in recv xl0
> 02200 0 0 count ip from 172.16.16.0/21 to any out xmit xl0
> 02300 18709 897806 count ip from 172.16.16.0/21 to any in recv xl1
> 02400 0 0 count ip from any to 172.16.16.0/21 out xmit xl1
>
> :(
>
> Lasse ich in/out weg, so fangen die Regeln gerade mal ein paar
> Broadcasts auf.

Hast du eigendlich net.link.ether.ipfw und net.link.ether.bridge_ipfw
auf 1 gesetzt?

> 02100 30434 42906704 count ip from any to 172.16.16.0/21 via xl0
> 02200 3 984 count ip from 172.16.16.0/21 to any via xl0
> 02300 23483 1123678 count ip from 172.16.16.0/21 to any via xl1
> 02400 143 21011 count ip from any to 172.16.16.0/21 via xl1
>
>
> > > sollten trotzdem bei 2100 und 2300 aufschlagen.
> > >
> > > Ein Fehler ist trotzdem drin. Wenn ich 1500 und 1600 rausnehme, dann
> > > geht Regel 2300 mitnichten! Das einzige was ueber diese Regel laeuft ist
> > > der ssh-traffic, den ich zu der IP 172.16.23.2 mache. Ge-bridgte Pakete
> > > werden nich von der out-Regel erfasst (warum?!?)
> >
> > Weil bridging Packete anders vom Regelwerk erfasst werden.
> > Du hast keine in/out Unterscheidung.
> > Bridging ist mehr oder weniger reingeflickt, deshalb tut das auch nicht
> > sauber, wenn du auf einer Bridge IPv6 nutzen willst.
>
> Laut Schaubild in der man-page sollte es aber eigentlich tun. Naja, wird

Ich kann dir sagen, daß es nicht funktioniert - auch nicht ohne
filtern.
IPv6 Packete können problemlos gebriged werden, aber lokale IPs werden
nur unterstüzt, wenn die vom »richtigen« Interface angesprochen werden.
Das liegtd aran, daß IPv4 Packete, die an eine IP eines anderen
Interfaces gerichtet sind speziel behandelt werden - für IPv6 fehlt der
passende Code.
Zudem ist Luigis Code recht x86 Spezifisch - auf alphas kommst du
nicht weit.
Dummerweise ist ipfw recht Leistungsstark und meine Firewalls laufen
alle auf x86 Maschinen.

-- 
B.Walter                   BWCT                http://www.bwct.de
ticso(at)bwct.de                                  info(at)bwct.de
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Sat 03 May 2003 - 12:51:51 CEST

search this site