iptables

package
v0.2.1-0...-aa43637 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 23, 2020 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const (
	NATTable    = "nat"
	FilterTable = "filter"
	MangleTable = "mangle"
	RawTable    = "raw"

	AcceptTarget     = "ACCEPT"
	MasqueradeTarget = "MASQUERADE"
	MarkTarget       = "MARK"
	ConnTrackTarget  = "CT"
	NoTrackTarget    = "NOTRACK"

	PreRoutingChain  = "PREROUTING"
	ForwardChain     = "FORWARD"
	PostRoutingChain = "POSTROUTING"
	OutputChain      = "OUTPUT"
)
View Source
const (
	XtablesLockFilePath = "/var/run/xtables.lock"
)

Variables

This section is empty.

Functions

func Lock

func Lock(lockFilePath string, timeout time.Duration) (func() error, error)

Lock acquires the provided file lock. It's thread-safe. It will block until the lock is acquired or the timeout is reached.

func MakeChainLine

func MakeChainLine(chain string) string

Types

type Client

type Client struct {
	// contains filtered or unexported fields
}

func New

func New(enableIPV4, enableIPV6 bool) (*Client, error)

func (*Client) EnsureChain

func (c *Client) EnsureChain(table string, chain string) error

ensureChain checks if target chain already exists, creates it if not.

func (*Client) EnsureRule

func (c *Client) EnsureRule(table string, chain string, ruleSpec []string) error

ensureRule checks if target rule already exists, appends it if not.

func (*Client) Restore

func (c *Client) Restore(data []byte, flush bool, useIPv6 bool) error

Restore calls iptables-restore to restore iptables with the provided content. If flush is true, all previous contents of the respective tables will be flushed. Otherwise only involved chains will be flushed. Restore supports "ip6tables-restore" for IPv6.

func (*Client) Save

func (c *Client) Save() ([]byte, error)

Save calls iptables-saves to dump chains and tables in iptables.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL