[Bug 275280] PF `route-to` and `dnpipe` are not works on the same rule
Date: Thu, 23 Nov 2023 13:31:00 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=275280
Bug ID: 275280
Summary: PF `route-to` and `dnpipe` are not works on the same
rule
Product: Base System
Version: 14.0-RELEASE
Hardware: amd64
OS: Any
Status: New
Severity: Affects Only Me
Priority: ---
Component: kern
Assignee: bugs@FreeBSD.org
Reporter: burak.sn@outlook.com
CC: pf@FreeBSD.org
Hi,
I am trying to implement IP-based speed limiting on PF using the `route-to` and
`dnpipe` options simultaneously within a single PF rule.
igc0(WAN2) ---- ip: 192.168.11.240/24 gw: 192.168.11.1
(default gw)pppoe_igc1(WAN1) ---- 88.88.88.88/32 --> 100.64.255.2
igc3(LAN) ---- ip: 192.168.1.1/24
When I didn't use `route-to`, the traffic passed through the default gateway,
and speed limiting worked successfully.
pass in log quick on igc3 inet from 192.168.1.236 to any flags S/SA keep state
label "user_rule_98" ridentifier 98 dnpipe(1006, 6)
However, when I applied both route-to and dnpipe options, the traffic was
recognized by PF as coming from WAN2 (igc0), as shown in the tcpdump logs
below, and the traffic didn't pass through WAN2.
WAN2 was forced to pass through WAN1 by route-to.
pass in log quick on igc3 route-to (igc0 192.168.11.1) inet from 192.168.1.236
to any flags S/SA keep state label "user_rule_99" ridentifier 99 dnpipe(1006,
6)
Thanks in advance.
# tcpdump -i pppoe_igc1 icmp and host 8.8.8.8 -n
tcpdump: verbose output suppressed, use -v[v]... for full protocol decode
listening on pppoe_igc1, link-type NULL (BSD loopback), snapshot length 262144
bytes
15:52:28.652269 IP 192.168.11.240 > 8.8.8.8: ICMP echo request, id 50880, seq
102, length 64
15:52:29.654263 IP 192.168.11.240 > 8.8.8.8: ICMP echo request, id 50880, seq
103, length 64
15:52:30.658265 IP 192.168.11.240 > 8.8.8.8: ICMP echo request, id 50880, seq
104, length 64
##dnpipe limiters##
# dnctl pipe 6 show
00006: 10.000 Mbit/s 0 ms burst 0
q131078 50 sl. 0 flows (1 buckets) sched 65542 weight 0 lmax 0 pri 0 droptail
sched 65542 type FIFO flags 0x1 64 buckets 0 active
mask: 0x00 0x00000000/0x0000 -> 0xffffffff/0x0000
# dnctl pipe 1006 show
01006: 512.000 Kbit/s 0 ms burst 0
q132078 50 sl. 0 flows (1 buckets) sched 66542 weight 0 lmax 0 pri 0 droptail
sched 66542 type FIFO flags 0x1 64 buckets 0 active
mask: 0x00 0xffffffff/0x0000 -> 0x00000000/0x0000
--
You are receiving this mail because:
You are on the CC list for the bug.