Tagged base queueing mit pf

mapet

Active OpenBSD User
Hallo zusammen,
ist es möglich, dass pf queueing basierend auf tags zu machen? Hintergrund ist, dass ich die Uploadbandbreite der WiFi Nutzer begrenzen möchte. Da aber der gesamte Netzwerkverkehr über dasselbe Interface rausgeht, würde ich den einkommenden traffic auf dem vlan taggen und gerne anhand derer auf dem ausgehenden Interface begrenzen. Ausgehend in Richtung des vlans kann ich ja einfach Höchstlimits auf dem Interface setzen, um den Downstream zu begrenzen, aber wie mache ich das beim Upstream? Portbasiert hilft mir da im Moment nicht weiter. Geht das mit pf, oder muss der AP (ubiquity ac pro) den Traffic begrenzen?

Marc
 
Hi,

also nach Überfliegen der Manpage sollte es gehen.
Du markierst die eingehenden Pakete auf dem vlan und schiebst dann ausgehende Pakete mit diesem Tag in eine Queue:

Code:
pass in on vlan? tag wifi-users
...
pass out on if? queue wifi-queue tagged wifi-users

Es fehlt noch die Queue-Definition.

EDIT: Huch ist ja OpenBSD, da wird die Syntax ein wenig anders sein, aber das Ganze sollte sicher trotzdem klappen.
Rob
 
Ahja, die Benamsung mit den Services in der Manpage hat mich verwirrt, aber Namen sind ja Schall und Rauch. Natürlich kann ich eine globale Queue mit der Maximalbandbreite für das egress Interface anlegen und eine weitere, mit der gewünschten Bandbreite und entsprechende pass out rules für das vlan interface schreiben, die dann auf die Subqueue zeigen. Der Rest sollte dann ja ohne entsprechende Zuweisung einer Queue die Maximalbandbreite des Interfaces bekommen.
Da hab ich den Wald vor lauter Bäumen nicht gesehen. Danke @KobRheTilla und @midnight.
 
For the archives:
die pass rules mit der queue zu versehen hat nicht funktioniert, es wurde immer die default queue genommen. ich hab jetzt zwei separate nat_rules für v4 und eine generelle, die v6 in die richtige outbound queue schiebt.

EDIT: Ok, ich hab die Reihenfolge angepasst und nu geht's mit einer NAT Rule nach der match Regel:
Code:
# Stuff guest-net stuff to queue vlan2
match out on egress from $guest_if:network set queue vlan2

# Outgoing NAT 
match out on $ext_if from <internal_ipv4> nat-to ($ext_if)
 
Zuletzt bearbeitet:
Zurück
Oben