Shaper and speed issues
-
i try to get one pfsense box on a soekris net4801 to do some traffic shaping on my network.
I ran through the magic shaper wizard and set the speed to 1024/256 kbits, wich is half of my internet pipe
i'm using version 0.94.12.
if i try to do some speedtests , i get 67/14 kbits with no other traffic on the line.here is the /tmp/rules.debug :
System Aliases
lan = "{ sis0 }"
wan = "{ sis1 }"
pptp = "{ ng1 ng2 ng3 ng4 ng5 ng6 ng7 ng8 ng9 ng10 ng11 ng12 ng13 ng14 }"
pppoe = "{ ng1 ng2 ng3 ng4 ng5 ng6 ng7 ng8 ng9 ng10 ng11 ng12 ng13 ng14 }"User Aliases
set loginterface sis1
set loginterface sis0
set optimization normalscrub on sis1 all
altq on sis1 hfsc bandwidth 100Mb queue { qWANRoot }
altq on sis0 hfsc bandwidth 100Mb queue { qLANRoot }queue qWANRoot bandwidth 256Kb priority 6 hfsc { qWANdef, qWANacks, qVOIPUp, qOthersUpH, qOthersUpL }
queue qWANdef bandwidth 1% priority 3 hfsc ( default upperlimit(100% 100 90%) linkshare(0% 1000 10%) realtime(10% 1 10%) )
queue qLANRoot bandwidth 1024Kb priority 6 hfsc { qLANdef, qLANacks, qVOIPDown, qOthersDownH, qOthersDownL }
queue qLANdef bandwidth 1% priority 3 hfsc ( default upperlimit(100% 100 90%) linkshare(0% 1000 10%) realtime(10% 1 10%) )
queue qLANacks bandwidth 1% priority 6 hfsc ( upperlimit(80% 1 80%) linkshare(0% 1000 10%) realtime(10% 1 10%) )
queue qWANacks bandwidth 1% priority 6 hfsc ( upperlimit(80% 1 80%) linkshare(0% 1000 10%) realtime(10% 1 10%) )
queue qVOIPUp bandwidth 1% priority 7 hfsc ( ecn upperlimit(32Kb 1 32Kb) linkshare(0% 1000 10%) realtime(32Kb 1 32Kb) )
queue qVOIPDown bandwidth 1% priority 7 hfsc ( ecn upperlimit(32Kb 1 32Kb) linkshare(0% 1000 10%) realtime(32Kb 1 32Kb) )
queue qOthersUpH bandwidth 1% priority 4 hfsc ( red ecn upperlimit(100% 100 90%) linkshare(0% 1000 10%) realtime(1Kb 1 1Kb) )
queue qOthersDownH bandwidth 1% priority 4 hfsc ( red ecn upperlimit(100% 100 90%) linkshare(0% 1000 10%) realtime(1Kb 1 1Kb) )
queue qOthersUpL bandwidth 1% priority 2 hfsc ( red ecn upperlimit(100% 100 90%) linkshare(0% 1000 10%) realtime(1Kb 1 1Kb) )
queue qOthersDownL bandwidth 1% priority 2 hfsc ( red ecn upperlimit(100% 100 90%) linkshare(0% 1000 10%) realtime(1Kb 1 1Kb) )nat-anchor "pftpx/"
nat-anchor "natearly/"
nat-anchor "natrules/*"
nat on sis1 from 192.168.1.0/24 port 500 to any port 500 -> (sis1) port 500
nat on sis1 from 192.168.1.0/24 to any -> (sis1)
#SSH Lockout Table
table <sshlockout>persistspam table
table <spamd>persist
Load balancing anchor - slbd updates
rdr-anchor "slb"
FTP proxy
rdr-anchor "pftpx/*"
rdr on sis0 proto tcp from any to any port 21 -> 127.0.0.1 port 8021pass in on sis0 from 192.168.1.0/24 to any tos lowdelay keep state tag qVOIPDown
pass out on sis1 from any to any tos lowdelay keep state tag qVOIPUp
pass in on sis1 from any to 192.168.1.0/24 tos lowdelay keep state tag qVOIPUp
pass out on sis0 from any to 192.168.1.0/24 tos lowdelay keep state tag qVOIPDown
pass in on sis0 proto tcp from 192.168.1.0/24 to any port 53 keep state tag qOthersDownH
pass out on sis1 proto tcp from any to any port 53 keep state tag qOthersUpH
pass in on sis1 proto tcp from any to 192.168.1.0/24 port 53 keep state tag qOthersUpH
pass out on sis0 proto tcp from any to 192.168.1.0/24 port 53 keep state tag qOthersDownH
pass in on sis0 proto udp from 192.168.1.0/24 to any port 53 keep state tag qOthersDownH
pass out on sis1 proto udp from any to any port 53 keep state tag qOthersUpH
pass in on sis1 proto udp from any to 192.168.1.0/24 port 53 keep state tag qOthersUpH
pass out on sis0 proto udp from any to 192.168.1.0/24 port 53 keep state tag qOthersDownHanchor "firewallrules"
loopback
anchor "loopback"
pass in quick on lo0 all label "pass loopback"
pass out quick on lo0 all label "pass loopback"package manager early specific hook
anchor "packageearly"
carp
anchor "carp"
enable ftp-proxy
anchor "ftpproxy"
anchor "pftpx/*"
pass in quick on sis1 inet proto tcp from port 20 to (sis1) port > 49000 user proxy flags S/SA keep state label "FTP PROXY: PASV mode data connection"allow access to DHCP server on LAN
anchor "dhcpserverlan"
pass in quick on sis0 proto udp from any port = 68 to 255.255.255.255 port = 67 label "allow access to DHCP server on LAN"
pass in quick on sis0 proto udp from any port = 68 to 192.168.1.1 port = 67 label "allow access to DHCP server on LAN"
pass out quick on sis0 proto udp from 192.168.1.1 port = 67 to any port = 68 label "allow access to DHCP server on LAN"WAN spoof check
anchor "wanspoof"
block in log quick on sis1 from 192.168.1.0/24 to any label "WAN spoof check"allow our DHCP client out to the WAN
XXX - should be more restrictive
(not possible at the moment - need 'me' like in ipfw)
anchor "wandhcp"
pass out quick on sis1 proto udp from any port = 68 to any port = 67 label "allow dhcp client out wan"
block in log quick on sis1 proto udp from any port = 67 to 192.168.1.0/24 port = 68 label "allow dhcp client out wan"pass in quick on sis1 proto udp from any port = 67 to any port = 68 label "allow dhcp client out wan"
LAN/OPT spoof check (needs to be after DHCP because of broadcast addresses)
antispoof for sis0
block anything from private networks on WAN interface
anchor "spoofing"
block in log quick on sis1 from 10.0.0.0/8 to any label "block private networks from wan block 10/8"
block in log quick on sis1 from 127.0.0.0/8 to any label "block private networks from wan block 127/8"
block in log quick on sis1 from 172.16.0.0/12 to any label "block private networks from wan block 172.16/12"
block in log quick on sis1 from 192.168.0.0/16 to any label "block private networks from wan block 192.168/16"Support for allow limiting of TCP connections by establishment rate
anchor "limitingesr"
table <virusprot># let out anything from the firewall host itself and decrypted IPsec trafficpass out quick on sis1 all keep state label "let out anything from firewall host itself"
pass traffic from firewall -> out
anchor "firewallout"
pass out quick on sis1 all keep state tagged qWANRoot queue qWANRoot label "let out anything from firewall host itself"
pass out quick on sis1 all keep state tagged qWANdef queue qWANdef label "let out anything from firewall host itself"
pass out quick on sis1 all keep state tagged qLANRoot queue qLANRoot label "let out anything from firewall host itself"
pass out quick on sis1 all keep state tagged qLANdef queue qLANdef label "let out anything from firewall host itself"
pass out quick on sis1 all keep state tagged qLANacks queue qLANacks label "let out anything from firewall host itself"
pass out quick on sis1 all keep state tagged qWANacks queue qWANacks label "let out anything from firewall host itself"
pass out quick on sis1 all keep state tagged qVOIPUp queue qVOIPUp label "let out anything from firewall host itself"
pass out quick on sis1 all keep state tagged qVOIPDown queue qVOIPDown label "let out anything from firewall host itself"
pass out quick on sis1 all keep state tagged qOthersUpH queue qOthersUpH label "let out anything from firewall host itself"
pass out quick on sis1 all keep state tagged qOthersDownH queue qOthersDownH label "let out anything from firewall host itself"
pass out quick on sis1 all keep state tagged qOthersUpL queue qOthersUpL label "let out anything from firewall host itself"
pass out quick on sis1 all keep state tagged qOthersDownL queue qOthersDownL label "let out anything from firewall host itself"
pass out quick on sis1 all keep state label "let out anything from firewall host itself"
pass out quick on sis0 all keep state tagged qWANRoot queue qWANRoot label "let out anything from firewall host itself"
pass out quick on sis0 all keep state tagged qWANdef queue qWANdef label "let out anything from firewall host itself"
pass out quick on sis0 all keep state tagged qLANRoot queue qLANRoot label "let out anything from firewall host itself"
pass out quick on sis0 all keep state tagged qLANdef queue qLANdef label "let out anything from firewall host itself"
pass out quick on sis0 all keep state tagged qLANacks queue qLANacks label "let out anything from firewall host itself"
pass out quick on sis0 all keep state tagged qWANacks queue qWANacks label "let out anything from firewall host itself"
pass out quick on sis0 all keep state tagged qVOIPUp queue qVOIPUp label "let out anything from firewall host itself"
pass out quick on sis0 all keep state tagged qVOIPDown queue qVOIPDown label "let out anything from firewall host itself"
pass out quick on sis0 all keep state tagged qOthersUpH queue qOthersUpH label "let out anything from firewall host itself"
pass out quick on sis0 all keep state tagged qOthersDownH queue qOthersDownH label "let out anything from firewall host itself"
pass out quick on sis0 all keep state tagged qOthersUpL queue qOthersUpL label "let out anything from firewall host itself"
pass out quick on sis0 all keep state tagged qOthersDownL queue qOthersDownL label "let out anything from firewall host itself"
pass out quick on sis0 all keep state label "let out anything from firewall host itself"make sure the user cannot lock himself out of the webGUI or SSH
anchor "anti-lockout"
pass in quick from 192.168.1.0/24 to 192.168.1.1 keep state label "anti-lockout web rule"SSH lockout
block in log proto tcp from <sshlockout>to any port 22 label "sshlockout"
User-defined rules follow
Anchors for rules that might be matched by queues
anchor qWANRoot tagged qWANRoot
anchor qWANdef tagged qWANdef
anchor qLANRoot tagged qLANRoot
anchor qLANdef tagged qLANdef
anchor qLANacks tagged qLANacks
anchor qWANacks tagged qWANacks
anchor qVOIPUp tagged qVOIPUp
anchor qVOIPDown tagged qVOIPDown
anchor qOthersUpH tagged qOthersUpH
anchor qOthersDownH tagged qOthersDownH
anchor qOthersUpL tagged qOthersUpL
anchor qOthersDownL tagged qOthersDownL
pass in quick on $lan from 192.168.1.0/24 to any keep state queue (qLANdef, qLANacks) label "USER_RULE: Default LAN -> any"VPN Rules
#–-------------------------------------------------------------------------
default rules (just to be sure)
#---------------------------------------------------------------------------
block in log quick all label "Default block all just to be sure."
block out log quick all label "Default block all just to be sure."</sshlockout></virusprot></spamd></sshlockout>