18.3. Options Used within iptables Commands
Rules for filtering packets are put in place using the
iptablescommand. The following aspects of the packet are most often used as criteria:
- Packet Type — Specifies the type of packets the command filters.
- Packet Source/Destination — Specifies which packets the command filters based on the source or destination of the packet.
- Target — Specifies what action is taken on packets matching the above criteria.
For more information on specific options which address these aspects of a packet, refer to Section 18.3.4, “
iptablesMatch Options” and Section 18.3.5, “Target Options”.
The options used with given
iptablesrules must be grouped logically, based on the purpose and conditions of the overall rule, for the rule to be valid. The remainder of this section explains commonly-used options for the
18.3.1. Structure of
iptablescommands have the following structure:
iptables [-t <table-name>] <command> <chain-name> <parameter-1> \ <option-1> <parameter-n> <option-n>
The <table-name> option allows the user to select a table other than the default
filtertable to use with the command. The <command> option dictates a specific action to perform, such as appending or deleting the rule specified by the <chain-name> option. Following the <chain-name> are pairs of parameters and options that define what happens when a packet matches the rule.
When looking at the structure of an
iptablescommand, it is important to remember that, unlike most other commands, the length and complexity of an
iptablescommand can change based on its purpose. A command to remove a rule from a chain can be very short, while a command designed to filter packets from a particular subnet using a variety of specific parameters and options can be rather lengthy. When creating
iptablescommands, it is helpful to recognize that some parameters and options may create the need for other parameters and options to further specify the previous option's request. To construct a valid rule, this must continue until every parameter and option that requires another set of options is satisfied.
iptables -hto view a comprehensive list of