IPTABLES-XML(1)
๐ NAME ๐
Okay so welcome to IPTABLES-XML(1) โ the iptables 1.8.13 edition, bestie โ and this one is literally called iptables-xml, the tool that converts iptables-save format to XML. Slay. โจ
๐ธ SYNOPSIS ๐ธ
iptables-xml [-c] [-v]
๐ DESCRIPTION ๐
iptables-xml is your little converter bestie: it takes the output of iptables-save and turns it into an easily manipulatable XML format to STDOUT. Use the I/O-redirection your shell gives you to write that into a file. ๐ซถ
-c,--combineโ combines consecutive rules that have the same matches but different targets. iptables currently does not support more than one target per match, so this simulates that by collecting the targets from consecutive iptables rules into one action tag โ but only when the rule matches are identical. Terminating actions likeRETURN,DROP,ACCEPTandQUEUEare not combined with subsequent targets. ๐-v,--verboseโ outputs xml comments containing the iptables line from which the XML is derived. Cute and useful. ๐
iptables-xml does a mechanistic conversion to a very expressive xml format; the only semantic considerations are for -g and -j targets in order to discriminate between <call> <goto> and <nane-of-target> as it helps xml processing scripts if they can tell the difference between a target like SNAT and another chain. ๐ฆ
Some sample output is:
<iptables-rules>
<table name="mangle">
<chain name="PREROUTING" policy="ACCEPT" packet-count="63436" byte-
count="7137573">
<rule>
<conditions>
<match>
<p>tcp</p>
</match>
<tcp>
<sport>8443</sport>
</tcp>
</conditions>
<actions>
<call>
<check_ip/>
</call>
<ACCEPT/>
</actions>
</rule>
</chain>
</table> </iptables-rules>
Conversion from XML to iptables-save format may be done using the iptables.xslt script and xsltproc, or a custom program using libxsltproc or similar; in this fashion:
xsltproc iptables.xslt my-iptables.xml | iptables-restore
๐ BUGS ๐
None known as of the iptables-1.3.7 release. Iconic, honestly. โจ
๐ AUTHOR ๐
Sam Liddicott โ <azez@ufomechanic.net> ๐
๐ SEE ALSO ๐
iptables-save(8), iptables-restore(8), iptables(8)
Thatโs the whole IPTABLES-XML(1) moment, bestie โ the footer source/version is iptables 1.8.13, and thereโs no separate date listed on this page, so thatโs the cute sign-off. ๐โจ
๐ฆ where this page comes from
- alpine 3.24: iptables-doc 1.8.13-r0 ยท GPL-2.0-or-later
- nixpkgs unstable: iptables 1.8.13
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms