SHOREWALL-TCINTERFA(5)
β¨ SHOREWALL-TCINTERFA(5) β¨
okay bestie, this is the tcinterfaces page from the Shorewall manual β like, the actual config-files one, and honestly it's giving "short but mighty" π
πΈ NAME πΈ
tcinterfaces β a Shorewall file. that's it, that's the name π«Ά
π SYNOPSIS π
/etc/shorewall[6]/tcinterfaces
π¦ DESCRIPTION π¦
So this file is literally just a list of the interfaces that get simple traffic shaping. And when do you get simple traffic shaping, you ask? Only when you set TC_ENABLED=Simple in shorewall.conf[1](5). that's the whole vibe check right there, no cap.
π a lil note on the bandwidth definition, bestie
the bandwidth numbers in this file have RULES, and we respect them:
- don't use a space between the integer value and the unit:
30kbitis valid while30 kbitis not. the space is a crime, do not commit it π - you can use one of the following units:
kbpsβ Kilobytes per second.mbpsβ Megabytes per second.kbitβ Kilobits per second.mbitβ Megabits per second.bpsor number β Bytes per second.korkbβ Kilo bytes.mormbβ Megabytes.
- Only whole integers are allowed. no
3.5mbitshenanigans, we're not doing decimals here π
π§ the columns, in order
(where the column name is followed by a different name in parentheses, that different name is what gets used in the alternate specification syntax β iykyk)
INTERFACE
The logical name of an interface. and listen β if you run both IPv4 and IPv6 Shorewall firewalls, a given interface should only be listed in one of the two configurations. pick a lane, babe π
TYPE - [external|internal]
Optional. If you give it, it says whether the interface is external (facing toward the Internet) or internal (facing toward a local network), and it enables SFQ flow classification. cute AND functional β¨
IN-BANDWIDTH (in_bandwidth) - {-|bandwidth[:burst]|~bandwidth[:interval:decay_interval]}
The incoming bandwidth of that interface. and now the important part, bestie, read this twice: you are not able to do traffic shaping on incoming traffic, because the traffic is already received before you could do so. periodt. but what this does let you do is define the maximum traffic allowed for this interface in total β if the rate is exceeded, the packets are dropped. you mainly want this if you have a DSL or Cable connection, to avoid queuing at your provider's side. it's giving "protect your own queue" energy π«Ά
If you don't want any traffic to be dropped, set this to a value of zero, in which case Shorewall will not create an ingress qdisc. Must be set to zero if the REDIRECTED INTERFACES column is non-empty. not optional, fr fr.
The optional burst option was added in Shorewall 4.4.18. The default burst is 10kb. A larger burst can help make the bandwidth more accurate; often for fast lines, the enforced rate is well below the specified bandwidth. lowkey fascinating, highkey useful.
What is described above creates a rate/burst policing filter. Beginning with Shorewall 4.4.25, a rate-estimated policing filter may be configured instead. Rate-estimated filters should be used with Ethernet adapters that have Generic Receive Offload enabled by default. See Shorewall FAQ 97a[2]. π
To create a rate-estimated filter, precede the bandwidth with a tilde (~). The optional interval and decay_interval determine how often the rate is estimated and how many samples are retained for estimating. Please see http://ace-host.stuart.id.au/russell/files/tc/doc/estimators.txt for details. If not specified, the default interval is 250ms and the default decay_interval is 4sec. the defaults are doing the work so you don't have to π
OUT-BANDWIDTH (out_bandwidth) - [rate[:[burst][:[latency][:[peek][:[minburst]]]]]]
Added in Shorewall 4.4.13. The terms are defined in tc-tbf(8). go read that one if you want the lore π
Shorewall provides defaults as follows:
burst-10kblatency-200ms
The remaining options are defaulted by tc(8). so chill, they got you πΈ
π FILES π
/etc/shorewall/tcinterfaces/etc/shorewall6/tcinterfaces
π SEE ALSO π
http://ace-host.stuart.id.au/russell/files/tc/doc/sch_tbf.txthttp://ace-host.stuart.id.au/russell/files/tc/doc/estimators.txtshorewall(8)
β NOTES β
shorewall.confhttps://shorewall.org/manpages/shorewall.conf.html- Shorewall FAQ 97a
https://shorewall.org/FAQ.htm#faq97a
and that's the whole page, bestie!! π this one came from the Configuration Files manual, dated 09/24/2020, and it's filed under SHOREWALL-TCINTERFA(5). go forth and shape that traffic, you absolute icon πβ¨
π¦ where this page comes from
- alpine 3.22: shorewall-doc 5.2.8-r1 Β· GPL-2.0-or-later
- alpine 3.23: shorewall-doc 5.2.8-r1 Β· GPL-2.0-or-later
- alpine 3.24: shorewall-doc 5.2.8-r1 Β· GPL-2.0-or-later
- debian bookworm: shorewall 5.2.8-2 Β· GPL-2.0-or-later
- debian trixie: shorewall 5.2.8-6 Β· GPL-2.0-or-later
- fedora 43: shorewall 5.2.8-17.fc43 Β· GPL-2.0-or-later
- fedora 44: shorewall 5.2.8-18.fc44 Β· GPL-2.0-or-later
- nixos 26.05: shorewall 5.2.8
- nixpkgs unstable: shorewall 5.2.8
- ubuntu noble: shorewall 5.2.8-5 Β· GPL-2.0-or-later
- ubuntu questing: shorewall 5.2.8-6
- ubuntu resolute: shorewall 5.2.8-6build1 Β· GPL-2.0-or-later
- ubuntu stonking: shorewall 5.2.8-6build1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms