|
%!s(int64=6) %!d(string=hai) anos | |
---|---|---|
iptables | %!s(int64=6) %!d(string=hai) anos | |
.gitignore | %!s(int64=6) %!d(string=hai) anos | |
.travis.yml | %!s(int64=7) %!d(string=hai) anos | |
DCO | %!s(int64=7) %!d(string=hai) anos | |
LICENSE | %!s(int64=10) %!d(string=hai) anos | |
NOTICE | %!s(int64=7) %!d(string=hai) anos | |
README.md | %!s(int64=7) %!d(string=hai) anos | |
build | %!s(int64=9) %!d(string=hai) anos | |
code-of-conduct.md | %!s(int64=7) %!d(string=hai) anos | |
test | %!s(int64=6) %!d(string=hai) anos |
Go bindings for iptables utility.
In-kernel netfilter does not have a good userspace API. The tables are manipulated via setsockopt that sets/replaces the entire table. Changes to existing table need to be resolved by userspace code which is difficult and error-prone. Netfilter developers heavily advocate using iptables utlity for programmatic manipulation.
go-iptables wraps invocation of iptables utility with functions to append and delete rules; create, clear and delete chains.